Your options seem to be between good privately owned infrastructure which, by definition, is beholden to corporate interests, good publicly owned infrastructure which is subject to the same issue in addition to the surveillance issue, or shitty mesh-infrastructure where it takes an indeterminate amount of time to send a packed across the continent. The mesh option means we really once and for all gives up the notion of reliable network communications but then it was an illusion to start with, you can just ignore it before getting to a certain level of ops. Public adoption is the obvious blocker, equipment and slow-as-ass connections don't exactly win over the paying public.
I imagine this mesh internet would look like something from mad max. The 2nd movie, not the new one. Imagine leather-wearing packets trying to make their way through the wastelands, having to fight off raiders and radscorpions.
Looking back the early 2000's, I'm amazed at how simple everything was. You didn't have fancy JS frameworks, servers didn't have to handle traffic from xmlhttprequests/websockets/sse's, html documents were really documents - not js applications, people put in a lot of time and effort into making small sized jpegs/gifs/pngs and you only had to take care of 800x600/1024x768 screens. Apart from sounding like an old fart, I mean to say that the way we interact with the web is becoming more and more abstract. 10 years ago you could focus on requests, but now we have this websocket/webrtc/whatever hotness that ensures more performance (for these fucking fat 15mb+ websites w/ ads and shit) and more and more people focus on this higher-level stuff and have no idea about the underlying workings. This feels bad to me because it means people are giving up part of their freedom. Like, you can't make a simple html website nowadays, you either need to learn a lot of stuff or give away your freedom and use super high level libraries/paas like heroku/config management magic. Sure, that automation is nice and all, but only if you know what it's really doing. Yesterday I met a front-end developer who said he's never heard of
"sprites", wtf. So we have normal users for whom the internet is pure fucking magic and we have "developers" who have no idea about networks/dbs (backenders) or sop/cors/invalid markup (frontenders). Great.
The outlook is pretty fucking bleak.
I started looking into software defined radio as I think that might be a viable option, but Ive only played around with it. Radio packet network meshes might be where it's at because of how easy it is to set them up and somewhat easy to keep them running. Of course, we'd need good crypto to ensure that even if an enemy controls nodes, the information would still be safe.
Problem here is the radio spectrum is licensed by the state and if we'd have to keep to the 2.4ghz/5ghz open portions of it, that would severely limit the range of each node. I remember reading that we could do internet in the spectrum of the now-free analog tv frequencies and we'd get gigabit speeds easily because the spectrum is so big. It'd also help with range because, if I remember my high school physics correctly, analog tv waves carry energy further and can bounce off the stratosphere whereas the current wifi waves are great at penetrating stuff like walls and doors, but lose their energy very quickly.