The invention discloses volatile rust preventive oil which comprises, by weight, 71-91% of base oil, 5-25% of an oil soluble volatile corrosion inhibitor, 1-5% of an antirusting agent, 1-6% of a cosolvent, 0.5-1% of a mildew-proof agent, 0.5-1% of an antifoaming agent and 1-6% of antioxidant, wherein the base oil is one of 500SN 46# machine oil, 32# machine oil, 600SN 150# machine oil and 100# machine oil; and the oil soluble volatile corrosion inhibitor is a mixture of four kinds of 2-heptadecenyl-imidalidine, octadecylamine, triazole tributylamine, dicyclohexylamine carbonate, dicyclohexylaminenitrite, benzotriazole, tert-butyl chromate, nephthenic soap, petroleum sodium sulfonate, sorbitan monooleate and stearic acid; and the antioxidant is sulfurphosphorousbutyloctyl zinc salt. The volatile rust preventive oil has good volatile rust preventive and corrosion resistant performances, metal which cannot be coated with rust preventive oil can achieve rust preventive protection, the operation is simple, and the cost is low.