The report offered no motive for the attack. State media did not immediately report the shooting, which Mehr said took place in Kahrizak, which is on the southern outskirts of Tehran.
All injured soldiers were taken to an Air Force hospital in southeast of the city, the report said.
The reported shooting is the latest to strike Iran.
In July, a soldier opened fire on his comrades, killing three and wounding six at a military base in the town of Abyek, some 100 kilometres west of Tehran.
In September, a soldier killed himself after shooting to death three of his comrades in the south of the country.
Military service of up to 24 months is mandatory for men age 19 and above in Iran.
Disclaimer: No Business Standard Journalist was involved in creation of this content