Asylum seekers are taken to shore by the coastguard after their boat sank off the coast of Lampedusa.

Reuters: Nino Randazzo

At least 94 people are dead and 250 missing after a boat carrying migrants from Africa sank off the Sicilian island of Lampedusa, the Italian coastguard said.

Reports suggest 150 people have been rescued, but the death toll is expected to rise as an estimated 500 people were on the 20-metre boat when it capsized.

The disaster occurred when the boat's motor stopped working and the vessel began to take on water, Italian interior minister Angelino Alfano said.

Mayor of Lampedusa, Giusy Nicolini, says it appears migrants lit a small fire on the boat when it was about a kilometre from shore to attract the attention of the coastguard.

The fire spread and caused those onboard to panic. Ms Nicolini says the boat then flipped over.

"The survivors are in a state of shock," she told local news channel SkyTG24.

"They have been in the water since the early hours of the morning."

She says emergency workers recovered dozens of bodies from the water, including those of three children and two pregnant women.

"It's horrific, like a cemetery, they are still bringing them out," she said.

It's horrific, like a cemetery, they are still bringing them out ... the survivors are in a state of shock, they have been in the water since the early hours of the morning.

Mayor of Lampedusa Giusy Nicolini

The passengers were all believed to be Eritreans coming from Libya, according to the UN High Commissioner for Refugees and the International Organisation for Migration.

Local emergency worker Antonino Candela said the incident happened shortly after another boat, believed to be from Syria, arrived safely in Lampedusa with 463 people on board.

"I commend the swift action taken by the Italian coastguard to save lives. At the same time, I am dismayed at the rising global phenomenon of migrants and people fleeing conflict or persecution and perishing at sea," UN High Commissioner for Refugees Antonio Guterres said.

Calling the deaths of migrants "an endless tragedy" foreign minister Emma Bonino said: "The rescue operation began immediately but it is getting more difficult because now the weather is getting colder, they don't know how to swim, they don't know where to go."