Afghanistan Iraq Taliban Kabul Abdullah
Afghan policemen arrive at the site of an attack on Kabul International Airport  Reuters

Four Afghan militants have been killed after launching a rocket-propelled grenade attack on Kabul International Airport.

The attack lasted for approximately four hours after four unidentified militants opened fire on the airport from the roof of a nearby building using automatic rifles and rocket-propelled grenades.

"Four terrorists were killed by police special forces. The area is being cleared now, there are no casualties to our forces," said Interior Ministry spokesman Sediq Sediqqi.

No group has yet claimed responsibility for the attack but the Afghan capital has been blighted by a Taliban insurgency in recent months.

A Kabul airport officials confirmed that all flights to the hub had been diverted to other Afghan cities such as Herat and Mazar-i-Sharif.

"Due to the closeness of the attack to the runway, Kabul airport is now closed to all flights," the official said.

The airport is the base for Nato-led forces fighting the insurgency of Taliban militants and other rebels since 2002. The premises is reinforced with security checkpoints, guard towers and military and police units.

The attack comes as a landmark election is set to be recounted after claims of vote-rigging and corruption.

Afghanistan presidential contender Abdullah Abdullah claimed victory in last month's elections despite contested results giving the lead to his rival Ashraf Ghani.

The results of the second round run-off between Abdullah and Ghani saw the latter obtain 56.44% of votes amid claims of ballot box stuffing and a lack of observers to ensure a fair election.

At a press conference, Abdullah said that ballot boxes had been illegally stuffed with votes for Ghani and he had therefore lost faith in the electoral authorities overseeing the poll.