About 30 migrants were missing and presumed drowned after the overcrowded boat they were on capsized during a rescue attempt by a cargo ship off Libya's coast, Italy's coastguard said.
Seventeen migrants were saved and a search was underway for the missing after the early-morning attempted rescue in a search-and-rescue zone under the jurisdiction of Libya, the coastguard said.
"During the rescue operations... the boat capsized during the transfer of the migrants: 17 people were rescued and recovered by the (cargo) vessel while approximately 30 migrants were missing," said the coastguard.
The latest disaster in the Mediterranean comes exactly two weeks after a shipwreck off Italy's southern coast of Calabria that killed at least 76 people, with bodies continuing to wash ashore nearly daily.
That shipwreck has put Italy's far-right government on the defensive as it tries to fend off sharp criticism that it failed to intervene in time to save the migrants.
Alarm Phone, a charity that monitors migrant boats, said it had been contacted by the boat in distress some 100 miles (160 kilometres) northwest of Benghazi and alerted Italian authorities early Saturday morning.
The boat was also spotted by a surveillance plane of German NGO SeaWatch, which reported it was "dangerously overcrowded and in frightening waves."
In a statement, Italy's coastguard said Alarm Phone had notified Rome's rescue coordination centre, as well as Maltese and Libyan authorities about the boat.
A merchant vessel that had headed towards the boat after the alert by SeaWatch reported difficulty in rescuing the boat due to bad weather, the coastguard said.
Authorities in Libya -- which the coastguard said was responsible for search and rescue efforts in that zone -- reported "a lack of availability of naval assets" and requested the support of Rome, which dispatched three additional nearby merchant ships to the area, according to the statement.
A rescue operation began early Sunday morning after the ship "Froland" reached the site, but the boat capsized during the operation, the coastguard said.
Two migrants pulled safely onboard needed urgent medical care and the ship headed to Malta to disembark them.
Merchant ships were still in the area searching for the missing, along with two Frontex planes, it said.
"The rescue operation took place outside the Italian SAR (search-and-rescue) area of responsibility, recording the inactivity of the other National Maritime Coordination and Rescue Centres involved in the area," the coastguard said.
SeaWatch tweeted on Saturday that bad weather was making a rescue difficult and that "Tripoli claims it is unable to send a patrol boat."
Earlier Sunday, Alarm Phone tweeted that it had lost contact with the boat and implored authorities not to allow the Libyan coastguard "to force the people back to Libya where they had tried to escape from".