Hi and welcome to the Migraines & Headaches Community.
How do you know you are low on iron? You need a blood test to tell. I can't tell you the cause but I can tell you that it does sound like a typical migraine. Try these tips and if it is not better it a couple of days then you need to see your doctor as you have already let it go on for quite awhile.
1. There are several symptoms of migraines and what causes the pain of a migraine is the blood vessels in your brain become dilated. So, sometimes it helps it you put a bit of pressure on your head. I am sure you have already been doing this unconsciously with your hands from time to time. So, get a bandanna or a cloth headband and wrap it snugly around your head.
2. If you rub Mentholatum across your forehead and on your temples that helps relax those tense muscles. You can do this with or without the wrap, depending on if you like the heat or not.
3. Try either a cold or hot pack, whichever is more comfy to you.
4. The best OTC meds that I have found that works is Excedrin. It is a combo of Aspirin, Tylenol and Caffeine and that happens to be an excellent combo for migraines.
5. I mentioned caffeine before...well, drink coffee, Mt Dew, take Vivirin...sometimes a mega dose of caffeine will stop it in its tracks.
6. If you get nauseous or dizzy get some Meclizine from the pharmacy (the stuff behind the counter) you can take 25mg three times a day as needed. Yes it works on both.