As the rumble of explosions rolled across the city of Donetsk there was little sign of a truce to respect the 298 victims of flight MH17.

While scores of their bodies lay in the silent refrigerated train wagons close to the scene, the day in this rebel-held city just 40 miles away began with a volley of blasts and gunfire at the railway station and airport.

Explosions thundered just before 10am sending a pall of black smoke into the midsummer sky and hundreds of civilians fleeing the area as separatist fighters blocked roads in.

"There is a war going on there, get the hell out," a camouflaged insurgent yelled at reporters as he waved them away with his assault rifle.

Separatist rebels sped through the city's boulevards perched on armoured personnel carriers as they responded to reports theUkrainian government was using tanks to try to break into the city.

They said residential buildings near the city's railway station had been struck by artillery or rockets from the Ukrainian army and elsewhere a market had been hit, setting stalls alight.

One rocket had landed in the courtyard of a residential block, showering cars and apartments with shrapnel. Witnesses reported several people were killed when another landed in a park.

More clashes erupted to the north west of the city near the airport, where Ukrainian troops have kept a foothold since heavy fighting in May. By dusk, city officials said five were dead and at least 12 were injured.

Alexander Gnezdilov, a spokesman for the rebels, said: "At the railway station, civilian buildings were targeted by the Ukrainian army. There is fighting just behind the airport and they are using artillery."

The barrage triggered panicked evacuations in a city already left partially deserted by people fleeing an expected offensive by Ukrainian forces.

Hundreds living close to the clashes fled in cars or minibuses and the city authorities warned residents to stay inside and avoid the railway station.

"I live there, how can I get down to find my daughter," a woman called Tatyana complained to reporters as rebels warned civilians back.

Kiev denied its soldiers were attacking the centre of the city of a million, but said its soldiers were "freeing" the village of Dzerzhinsk 40 miles north of Donetsk and "clearing approaches to the city".

Andriy Lysenko, spokesman for Ukraine's security council, blamed the artillery strikes in the centre on a small "self-organised" volunteer unit.

He said: "If there are explosions in the middle of the city – then it is not Ukrainian soldiers."

"We have strict orders not to use air strikes and artillery in the city. If there is fighting in the city, we have information that there is a small self-organised group who are fighting with the terrorists."

Separatists rejected the possibility the attack was not ordered by Kiev. One rebel said: "The Ukrainian government says a lot of things. Next they will be saying we shelled ourselves."

Alexander Borodai, prime minister of the self-proclaimed Donetsk People's Republic, added that the push was part of an "advance across all fronts" by the Ukrainian army trying to dislodge the Moscow-backed separatists from their remaining strongholds.

He suggested the assault was part of an attempt to keep international experts from the crash site.

"Kiev is doing everything it can to stop the experts coming and coincidentally fighting started in Donetsk today," he said.

Calls for safe access for crash investigators trying to search the site and identify the 298 victims have led Kiev to say it will cancel all military operations within a 25 mile radius of the crash scene. Donetsk is beyond the range of the ceasefire.

Regular attacks on Donetsk's suburbs have continued in recent days. Federovna Mikheyeva, a 77-year-old retired chemical worker, said she narrowly missed death when a rocket hit her apartment at the weekend. She said: "I had just watched television and there was an almighty bang and I lost consciousness. They are fighting each other and we are stuck in the middle."