Ukraine says it has repelled “one of the most massive” attacks launched by Russia since the start of the war.
Air defence systems shot down 89 Iranian-made explosive drones and another missile overnight, the Ukrainian air force said on Wednesday.
The capital Kyiv was the main target of the attack. Buildings were damaged by falling debris but there were no reports of casualties.
The attack comes more than 29 months after Russia’s full-scale invasion of Ukraine. Almost daily bombardments have put the country’s air defences under considerable strain.
Russia insists it is targeting military and energy sites, but strikes on residential areas are frequent.
Early on Wednesday the air force said it had “withstood and repelled a massive attack” by Iranian-made Shahed drones.
Ukrainian President Volodymyr Zelensky later said on Telegram: “Ukrainians can fully protect their skies from Russian strikes when they have sufficient supplies.”
He added: “The same level of defence is needed against Russian missiles and the occupier’s combat aircraft.”
Mr Zelensky repeated calls for allies to speed up deliveries of the air defence systems Ukraine relies on, particularly US-made Patriots.
“We need sufficiently courageous decisions from our partners – enough air defence systems, enough range,” he said.
Ukraine continues to strike back. Its military said on Wednesday that it had hit a weapons depot in the Russian region of Kursk.
The local governor said a “facility” had been hit overnight, causing a fire, but did not provide further detail.
Meanwhile, Moscow’s slow-moving advance into Ukrainian territory is grinding on.
Russian forces made small but incremental gains in July, reportedly capturing eight villages in north-east, eastern and southern Ukraine in July.
These were said to include Pishchane Nizhne in the Karkhiv region, Vovche, Ivano-Daryivka and Pivdenne in Donetsk, as well as Rozivka near Zaporizhzhia.