Data on IPFS is accessed over P2P, not over IP. ipfs.io is just running a gateway. Anyone could do that. In fact; if you were to run IPFS on your computer, you'd probably have your own gateway on your localhost.
Somebody would just make their own public gateway, and the government would need to block another domain. Of cource, running IPFS for yourself would take away any need to use a gateway.
You can't just look at data from the internet without touching it, you need to download it. The same holds true when reading data from the IPFS network.
In the process, you make it available for anyone else who ask for it, but only for a limited time; until the Garbage Collector (GC) runs. If I remember correctly, the GC run once every hour or so, so you probably won't reshare the data for longer than that.
You need to pin the data if you want to keep resharing it. This effectively tells the GC to not touch it.
Gopher might not be popular, and apparently it's relevancy is disputed. But it is still an interesting bit of internet-history. It still has an active community, and a whole lot of information.
Zerotier is a great solution. I've been using it for a few months now.
I can't say if it is right for businesses, or services, but if you just need to be able to connect to any of your devices, from any of your devices, no matter where you are; then zerotier works wonders.
Sadly I can't seem to get it to compile under OpenBSD.
Somebody would just make their own public gateway, and the government would need to block another domain. Of cource, running IPFS for yourself would take away any need to use a gateway.