The Prime Minister said he was not ruling out extra military help for Ukraine as he warned a Russian invasion would result in “serious bloodshed”.
Russia has insisted it has no plans to invade but the Nato alliance is alarmed by the build-up of more than 100,000 troops on the borders with Ukraine.
Speaking alongside Nato secretary general, Jens Stoltenberg, at the alliance’s headquarters in Brussels, Mr Johnson called on Russia to engage in meaningful talks because it was “far better to begin a discussion now than to have a catastrophe”.
The UK has already supplied about 2,000 anti-tank missiles to Ukraine and Mr Johnson indicated he could go further.
Asked at the press conference in Brussels if he could authorise military support to an insurgency in Ukraine in the event of an invasion, he said: “We will consider what more we can conceivably offer.
“The Ukrainians are well prepared, there are things we’ve offered that they, in fact, don’t seem to need because they think they have them in enough numbers already.
“It’s possible, I don’t want to rule this out, but at the moment we think the package is the right one.
“But I want to stress it would be an absolute disaster if it was to come to that and if there was to be serious bloodshed on Ukrainian soil.”
He said the intelligence on the prospect of an invasion was “grim” but he did not believe Vladimir Putin had yet decided on whether to act.
“I honestly don’t think a decision has yet been taken but that doesn’t mean that it’s impossible that something absolutely disastrous could happen very soon indeed,” he said.
“Our intelligence, I’m afraid to say, remains grim. We’re seeing the massing of huge numbers of tactical battalion groups on the border with Ukraine.
“This is probably the most dangerous moment in the course of the next few days in what is the biggest security crisis Europe has faced for decades.”
The UK has put 1,000 troops on standby in case of a humanitarian crisis in the east if the current Russian military build-up leads to war.
In Moscow, Foreign Secretary Liz Truss held talks with counterpart Sergei Lavrov although there appeared to be no diplomatic breakthrough.
“There is still time for Russia to end its aggression towards Ukraine and pursue the path of diplomacy,” she said.
“But Nato is very clear that if that path is not chosen there will be severe consequences for Russia, Ukraine and the whole of Europe.”
Ms Truss called for Russia to pull its troops back from the border to ease tensions.
“There is no doubt that the stationing of over 100,000 troops on the Ukrainian border is directly put in place to threaten Ukraine,” she said.
There had also been “cyber attacks and other attempts to undermine the activities of a sovereign nation”.
Ms Truss said: “If Russia is serious about diplomacy they need to move those troops and desist from the threats.”
The visit to Moscow was the first by a foreign secretary in four years, with the relationship between the UK and Russia severely strained by incidents including the 2018 Salisbury nerve agent attack.
In a sign of the chilly atmosphere at the talks, Mr Lavrov said “ideological approaches, ultimatums and moralising is a road to nowhere”.
Rejecting Ms Truss’s call for forces to pull back, he said: “The demands to remove the Russian troops from the Russian territory cause regret. We don’t want to threaten anyone. It’s us who are facing threats.”
But he indicated force levels would fall once military exercises had been completed, at which point “the West will likely claim that it has forced Russia to de-escalate”.
“It’s selling hot air,” he said.
Mr Johnson was also heading to Poland, where an extra 350 Royal Marines are being sent to reassure Nato’s eastern European members of support.
In December, the UK sent 100 Royal Engineers to the country after Moscow’s ally, Belarus, engineered a refugee crisis on the border.