Military forces loyal to Libya's eastern government said on Sunday they had pushed back Islamist fighters in several areas of Benghazi, seizing the strategic port of Marisa.

The Libyan National Army said it had also taken control of the town of Ajdabiya, about 150 km (90 miles) south of Benghazi, another city where it has been battling Islamist groups.

Libya has been riven by conflict since the 2011 uprising against Muammar Qaddafi, as armed factions supporting rival governments in Tripoli and the east have fought for power and a share of the country's oil wealth.

Islamist fighters have used a security vacuum to expand their presence, and militants loyal to ISIS control of the city of Sirte, to the west of Ajdabiya.

Ongoing violence

Benghazi, Libya's second-largest city, has seen some of the worst fighting, with violence escalating when military commander Khalifa Haftar launched a campaign in 2014 against Islamists and other armed groups.

Munthir al-Khartoush, a spokesman for the army's Battalion 309, said that as well as Marisa port, the army had taken control of the nearby neighbourhood of Al-Halis, and had advanced in the district of Boatni, which also saw heavy fighting on Saturday.

At least three soldiers and 15 Islamist fighters were killed in Sunday's clashes, the military said.

Marisa would be a significant gain for the army as the groups it has been fighting have been receiving weapons deliveries through the port.

"We have completely cut off the supplies coming to the front line for the Islamist groups in the west of Benghazi by capturing Marisa Port," Khartoush said.