Special equipment: food coloring, protein fiber yarn, white vinegar
1) Hank yarn if its current state is otherwise (see above).
2) Get out largest saucepan you don't mind getting food coloring on. Since this low-budget process involves only food-safe dyeing agents, there's no need to quarantine your actual cookware from dyeing equipment.
3) Leaving enough space for yarn, fill pot most of the way with water; bring to a gentle simmer and set to lowest heat setting. Add a few tablespoons white vinegar. Over the whole process, including a vinegar bath rinse, I used probably a 1/4 cup vinegar for my 8 oz of yarn.
This is where we leave the realm of generally applicable advice and get into the specific stuff I did for this specific hank of yarn. This was not a scientific or carefully measured procedure, but I think it came out pretty well. So here's what I did:
4) Add food coloring; dip yarn. I dip-dyed my hank for a nice subtly variegated/tone on tone effect. I started with a blue-only bath, into which I dipped the lowest-hanging 1/4 hank. I let it hang out for a few minutes, until most of the dye had been absorbed by the yarn (easy to tell because the water becomes clear). I may have added more coloring for extra intensity part way through. This is the kind of thing that one can eyeball.
5) Continue dyeing. I did a total of four color baths, each one including a higher proportion of green to blue dye until the final bath was about a 1:1 ratio. Upon each subsequent dip 1/4 more of the hank went into the pool until on the fourth round the whole thing went in. Because each section of the hank was exposed not only to slightly different colors but also different dyeing times, the effect was variegation of both hue and intensity. In total, I used about 1/2 a dropper of blue food coloring and 1/4 dropper of green.
7) Rinse. After everything's cooled down to a comfortable temperature to handle (and duplicate in your rinsing sink), check that the dye water is clear. If there's still a lot of dye in the water, put the pot back onto low heat and consider adding more vinegar. My water was clear and tepid, so I ran a sink of tepid water with a little wool wash and some more vinegar (helps with colorfastness). I swished the yarn around in it a little, and when the color pretty much stayed put I decided to get crazy and do a second rinse with just wool wash.
8) Squeeze out excess moisture and hang to dry. I employed the brutish but effective roll-it-up-in-a-towel-and-stand-on-it method.
9) Admire your industriousness and natural flair for harmonizing colors.