Ukraine's navy accused Russia of opening fire on and seizing three of its vessels on Sunday in a strait near Moscow-annexed Crimea, sparking alarm among Kiev's Western allies and raising fears of possible military escalation.
The incident occurred in the Kerch Strait, a narrow waterway that gives access to the Sea of Azov that is used by Ukraine and Russia.
Ukraine's navy said it took place as three of its ships -- two small warships and a tugboat -- were heading through the strait for the port of Mariupol.
It said a Russian border guard vessel rammed the tugboat in "openly aggressive actions" and then fired on one of its ships.
Two Ukrainian soldiers were reportedly injured.
The ramming damaged the tug's engine, outer shell and guardrail, it added.
It also said the Kerch Strait was blocked by a tanker, and that Russian military aircraft were flying over the area.
Russia in turn has accused Kiev of illegally entering its waters and deliberately provoking a conflict.
Moscow claims the waters off Crimea after annexing the peninsula in 2014.
Russian politicians accused Ukraine of acting at the behest of its Western allies and deliberately attempting to escalate the conflict.
Crimean leader Sergei Aksyonov wrote on Facebook that he "was sure the Western masters of the Kiev regime are behind this act of provocation."
Pyotr Tolstoy, deputy speaker of the Russian parliament, warned on Facebook that "the Ukrainian puppet authorities... are risking unleashing a large military conflict."
"One thing is clear: Russia won't allow military provocations in its territorial waters," he said.
Russia's FSB security service, which oversees the border guard service, said in a statement quoted by Russian news agencies that the Ukrainian ships "illegally entered a temporarily closed area of Russian territorial waters".
It said Ukraine's ships were carrying out "provocative actions" and "their aim is clear: to create a conflict situation in this region."
Ukraine said it gave Russia advance warning of its ships' route, which its ships are obliged to take to reach the Sea of Azov.
The latest incident comes after the Ukrainian navy in September complained of "acts of provocation" by Russian border guards against its ships taking the same route.
Ukraine has increased the number of its navy ships and border guard patrols in the Sea of Azov, which is reached via the Kerch Strait between Crimea and Russia.
Kiev says its naval buildup is due to Russia stepping up controls in the area this year and carrying out lengthy checks on commercial shipping.
Kiev and the West have accused Moscow of deliberately blocking ships from accessing Mariupol, which has vital access to heavy industry in the region.
Mariupol is close to the region of eastern Ukraine controlled by Russian-backed separatists in a conflict that has caused at least 10,000 deaths since 2014.