The first thing to do is remove all of the loose coating on and around the rust spots. The rust should be sanded or ground off and the bare metal oil primed. If the entire fence will be painted, the existing coating should be clean, dry and dull. So if anything higher in sheen than a satin is on the surface, it should be scuffed. You do not need to prime the existing coating if it is in good shape - just the bare metal.
Any high quality exterior latex house paint will work as your finish coat. The higher the sheen the less porous the coating is so moisture will take longer to make its way to the metal and cause corrosion.