An armed man carrying explosives has taken around 20 passengers hostage on a bus in western Ukrainian city of Lutsk, police said on Tuesday.
The head of the local police service said shots were heard at the scene but no injuries have been reported so far.
Law enforcement has cordoned off the centre of Lutsk, a town in eastern Ukraine, some 400 kilometres (250 miles) from the capital Kiev and advised residents not to leave their homes or places of work.
The hostage-taker has made contact with the police and identified himself as Maksym Plokhoy, deputy interior minister Anton Gerashchenko said.
But he told AFP that the authorities are still working to confirm the identity of the attacker.
President Volodymyr Zelensky said news of the hostage taking was "disturbing", in a Facebook post.
"Every effort is being made to resolve the situation without casualties," he said.
Interior Minister Arsen Avakov is travelling to the region to coordinate a resolution to the crisis, the ministry said on Twitter.
Ukraine has struggled to control a proliferation of illegal weapons in the country, a problem which has escalated since 2014 when fighting broke out between the Ukraine government and Russian-backed separatists in the eastern Donetsk and Lugansk regions.