Ukrainian President Petro Poroshenko vowed to "find and destroy" pro-Russian rebels who killed 23 servicemen and wounded nearly 100 in a missile attack on Friday.
Poroshenko issued his angry statement following an emergency meeting of his security chiefs called in response to the early morning strike by Russian-made Grad missiles on an army motorised brigade near the border with Russia.
The attack, which came as government forces seemed to be prevailing in the three-month conflict, appeared to be the deadliest on government troops since the Ukrainian military ended a unilateral ceasefire on June 30.
"All those who used the Grad against the Armed Forces of Ukraine will be found and destroyed," Poroshenko said in a statement on his website.
"For every soldier's life, the militants will pay with scores and hundreds of their own. Not a single terrorist will avoid responsibility; each will get what they deserve," he said.
The pro-Russian separatists launched a volley of Grad missiles at 4:30 a.m. on the border post at Zelenopillya, in Ukraine's easternmost Luhansk region, military sources said.
Ukraine's Defence Ministry said 19 servicemen were killed and the border guard service said four of its number also died. Military spokesman Vladyslav Seleznyov said on his Facebook page 93 were injured in the Grad attack.
Authorities had earlier put the death toll at up to 30 but this was later scaled down to 23.
Kiev blames Moscow for fanning the violence and allowing fighters and high-powered weaponry to cross the frontier from Russia to Ukraine.
The attack was a big setback for the government which scored a notable victory last weekend by pushing rebels out of their stronghold in Slaviansk and forcing them back to the industrial city of Donetsk, where they have dug in.
Separatists have been battling government forces for three months since they set up 'people's republics' in the Russian-speaking east of the country and said they want to join Russia.
Poroshenko's government has threatened a "nasty surprise" to drive rebels out of Donetsk, the region's industrial hub with a population of 900,000, while pledging to limit civilian casualties.
A way out
In Donetsk's main railway station, people said they had been waiting in line for two hours to buy tickets to flee the city, which they feared would suffer the same destruction as Slaviansk did during fighting.
Separatist leader Alexander Borodai told journalists on Thursday 70,000 residents had already left the city.
"We decided yesterday to leave the city and immediately got ready," said Nadezhda Avramenko, 55, a housewife sitting on the train platform with her family.
Standing in line for tickets, Irina, 55, a kindergarten teacher, said she was leaving with her family
"We're going to Crimea. We'll return if the Donetsk People's Republic holds out and if the monstrous Ukrainians come, then there will be no return. How can you live with them if they're killing people," she said.
Elsewhere in the Luhansk region, four servicemen were killed when their armoured personnel vehicle detonated a mine, said military spokesman Andriy Lysenko on Friday, while another soldier was killed in the town of Karlovka in Donetsk province. Separately, at least five miners died and another five were injured when their bus came under fire from rebels, Lysenko said. The shelling of the bus forced energy and coal company DTEK, which employed the miners, to suspend operations at four mines in the economically depressed industrial province of Luhansk, Interfax news agency quoted the company as saying.
The missile attack took the gloss off the government's Slaviansk victory and seemed likely to add a new sense of urgency to diplomatic attempts to end the worst crisis between Russia and the West since the Cold War.
With an eye to Donetsk which government forces hope to recapture, German Chancellor Angela Merkel urged Poroshenko by telephone on Thursday to use a sense of proportion in actions against separatists and to protect civilians.
A statement said both sides agreed that a meeting was needed of the 'contact group' which had met during Poroshenko's ten-day ceasefire to prepare the way for peace talks.
The chance for peace talks withered after Poroshenko called off the ceasefire on June 30 in the face of rising domestic anger over numerous ceasefire violations by the rebels.