Not done any dying with the intent of colourfastness (just natural dying in the woods with children)... but here is the advice for that from my Jenny Dean Book (Colours from Nature a dyers handbook)....
in a nutshell materails need to be clean, free from dirt and grease/natural oils ie scoured to allow the mordant (the stuff that heps the dye stay colourfast) to do it's job.
She recommends soaking 6-12 hours in a warm cleansing solution (1 tsp dishwashing detergent/half tsp scouring agent per 7 litres). If materials very greasy/dirty, change water and add more cleanser after 3-4 hours. Then remove and rinse. Then wash again and rinse thoroughly several times.
Faff. That'll be why Ive never done it properly then!!!! Be interested in the stove top dying - the idea of doing it all at once
.