The Israeli navy seized a ship in the Red Sea that was carrying dozens of advanced Iranian-supplied rockets made in Syria that were intended for Palestinian militants in Gaza, the military said.

It said the Panamanian-flagged cargo vessel, the Klos-C, was boarded in international waters without resistance from its 17-strong crew.

It will be brought to port in Israel within days.

Dozens of M302 rockets were found aboard the Klos-C, a weapon which could have struck deep into Israel from Gaza.

"It was a complex, covert operation," military spokesman Lieutenant-Colonel Peter Lerner said of the seizure.

"The M302 in its most advanced model can strike over 100 miles, and if they would have reached Gaza, ultimately that would have meant millions of Israelis under threat."

Israeli television footage showed what appeared to be marines inspecting a rocket on the floor of a ship hold, with cement bags labelled "Made in Iran" in English next to it.

Lt-Col Lerner said the rockets were flown from Syria to Iran, from which they were shipped first to Iraq and then towards Sudan.

Had they reached the African coast, they would have probably been smuggled overland through Egypt to Gaza, he said.

Lt-Col Lerner said the crew came from a number of different countries and there was no immediate indication that they knew the nature of their cargo.