Russia and Ukraine traded major overnight air attacks, with around 600 Ukrainian drones targeting Moscow as officials on both sides reported civilian deaths and widespread damage.

At least three people were killed and more than 20 injured in the latest Russian attacks on Ukraine, President Volodymyr Zelensky said.

Two people were killed and 14 injured in a ballistic missile attack on Zelensky's home city of Kryvyi Rih, the president wrote on Telegram. One person was also killed in Sumy in north-eastern Ukraine, while six people were injured in Kiev and its surrounding areas.

Fires in Kiev were quickly extinguished, Zelensky said, adding that a book market was among the sites hit.

"Wherever the Russians can reach with their missiles, they attack civilian infrastructure," he said, warning of further attacks.

The Ukrainian Air Force said Russia used missiles, glide bombs and drones to attack locations across the country.

Russia's Defence Ministry said it had targeted military facilities. It claimed that a facility involved in producing Ukraine's Flamingo cruise missiles and a drone factory had been struck in Kiev.

The ministry also said an oil refinery in Kremenchuk, a steel plant used for weapons production in Kryvyi Rih and a cargo ship carrying military supplies in the Black Sea port of Odessa had been targeted.

The claims by both sides could not be independently verified.

More than 600 drones target Russia

Russia said Ukraine had launched a large-scale drone attack overnight, with more than 600 drones targeting Moscow and its surrounding region.

Moscow Mayor Sergei Sobyanin said 201 drones had been destroyed by air defences in the Moscow region, while most had been intercepted before reaching the region.

Andrei Vorobyov, governor of the Moscow region, described the incident as one of the largest attacks of the war. He said an 83-year-old man was killed when a drone crashed onto his property, while several other people were injured.

In Podolsk, around 40 kilometres from Moscow, three people were injured. A fire also broke out at a warehouse belonging to Wildberries, Russia's largest online retailer, Vorobyov wrote on Telegram. Staff managed to reach safety in time.

In Domodedovo, home to one of Moscow's airports, a warehouse containing medicines caught fire, he said. Several residential buildings in the town were also damaged.

Damage to civilian infrastructure, including a school, was reported in other towns.

Moscow's airports were also affected by air raid alerts, with dozens of flights cancelled or delayed.

In the southern Russian region of Rostov-on-Don, at least five people were killed in Ukrainian drone attacks, according to the authorities. Three cities in the region were affected, with Kamensk-Shakhtinsky the worst hit, Governor Yuri Slyusar said.

The Ukrainian General Staff said the Kamensky industrial plant, which is important to Russia's defence industry and produces rocket fuel among other products, had been hit.

Zelensky renews call for air defence missiles

According to Zelensky, Russia has fired more than 1,550 drones, nearly 1,560 bombs and 62 missiles and cruise missiles at Ukraine over the past week.

He again called on Ukraine's allies to provide more air defence missiles.

"If North Korean missiles are destroying infrastructure and claiming lives here in Europe, we cannot allow European anti-aircraft missiles to simply remain sitting in warehouses," Zelensky wrote.

He has recently accused Russia of using missiles supplied by North Korea.

Ukraine has been fighting Russia's full-scale invasion for more than four years. Kiev has been warning of dwindling stocks of interceptor missiles for its Patriot air defence systems, which are used to defend against ballistic missile attacks.

The US-made Patriot systems are considered among Ukraine's most effective defences against ballistic missiles, which are particularly difficult to intercept because of their high speed.