

I’d start with some basic Linux networking and tools, if you don’t have them already.
I don’t know if that’s the basics everyone knows these days, but… learn how TCP,UDP,ICMP,TLS relate, what a netmask is, what is ARP and MAC addresses. Fire up Wireshark and look around what is happening on your network. Learn some basic commands like ip -br -a and ss (or the older netstat) so you know how to figure out which program is listening where. Learn how to manually resolve a DNS name (dig or host). How tunnel a TCP connection or a webbrowser through ssh (port forwarding, SOCKS proxy). Learn enough of the HTTP protocol so you can manually enter a valid GET request over a simple TCP connection to port 80 with netcat or nc. Or use httpie or curl for the same purpose. You can’t host a lot with that knowledge, but it helps to figure out why things are not working.



The truth is that that life is full of contradictions and we are all struggling to figure this one out. Not every contradiction can be cleanly resolved. In the meantime life goes on. Later it will probably turn out that we’ve all been worrying about the wrong question, but right now… I don’t know.