"There were 207 survivors rescued yesterday… Seventeen bodies have been recovered so far," the navy said in a statement, increasing a previous toll of 14 victims following the incident on Monday.
Italian media cited coast guards saying there were around 400 people on board, which would mean dozens are still unaccounted for.
The navy said two warships, three coast guard and border patrol boats had taken part in the rescue operation, along with two merchant ships – the Vanuatu-flagged Kehoe Tide and the French ship Bourbon Arcadien.
"They reached the capsized ship as quickly as possible," the navy said, adding that two helicopters and two planes had also taken part in the rescue.
The navy said one of its warships, the Grecale frigate, was headed for the port of Catania in Sicily with the survivors and the bodies of the victims on board.
Italian media said it was expected at 1100 GMT.
Prosecutors in Catania said they would be opening an investigation into the causes of the shipwreck.
The navy said the other warship, the Sirio, had gone on to rescue 295 migrants from another stricken boat.
Hundreds of migrants – many of them asylum-seekers from Eritrea, Somalia and Syria – are landing on Italy's shores on an almost daily basis and the government has appealed for more assistance from the European Union.
The Italian navy launched a large-scale operation to rescue migrants and deter traffickers following two shipwreck tragedies in October 2013 in which more than 400 people drowned off Italy's shores.