following though experiment: Which of the following scenes is the most decentralized?
1) A million people are operating their respective full-nodes at home and another one million are independent bitcoin users. (This is equal to the population of a small city.)
2) There are ten thousand independent full-nodes but just 100 million people using bitcoin. (This is equal to the population of a G20 country.)
*3) There are 10 full-nodes and all mankind is using bitcoin. The conclusion of the above experiment is clear. It is the least possible for the government to be hostile to bitcoin in the third scene, and the most likely in the first scene. The current development of bitcoin is most similar to the first scene.
In reality, there are 5,409 nodes, or 994,591 fewer than in your example.
These 5,409 nodes belong to roughly 3,000 people (my rough guesstimate, some people/businesses run multiple nodes, people with access to free/cheap VPS in the hundreds).
So we're not talking cities, we're talking village/tiny town.
The governments don't need to/won't attack nodes. Making Bitcoin use illegal and cutting off fiat (banks servicing exchanges) would be enough to marginalize Bitcoin and make it irrelevant.
But if you're thinking in terms of technical attacks, pretty much any government can deploy nodes numbering by the millions, at a minute's notice. Blocking port 8333 by ISPs would be easier still.