Two things strike me as odd about networking compared to many other IT/software fields:
First, it evolves much, much slower than anything else. Everything I learned 2 or even 3 decades ago is still relevant. Ethernet, DNS, DHCP, TCP/IP. New things got bolted on but everything old is still relevant. Yes, even in the modern cloud.
Second, I've met so few in the fields that actually understand anything about networking. Even as basic as an ip address and subnet. As long as the web page loads and the data is flowing, people stop caring fast. When the network breaks, most software devs are stomped and can't even do the most basic troubleshooting.
My only recommendation is to start with the absolute basic and learn from first principles. Ethernet, IPv4 (packets, IP addresses, subnets, routes), UDP, DHCP, DNS, TCP, HTTP, tunnels and VPNs, in that order. Use wireshark along the way and research everything that is unclear before going up the stack.
Try to run your own router/firewall using openwrt or pfsense/opnsense.
The first volume of TCP/IP Illustrated by Richard Stevens is wonderful. Ethernet frames, ARP, IP, ICMP, BOOTP, DHCP, UDP, TCP. Just make sure to get the original version.
Stevens' writing was engaging and pedagogically top shelf. Kevin Fall attempted integrating his coverage of newer protocols into the preexisting text, and unfortunately, completely butchered it.
Network chuck covers the basics. The only thing I would warn is that he only covers the extreme basics. Like the top 1% of networking. But he makes it sound like when you are done with his videos that you are ready to go make $250k as a network engineer.
So yes he's entertaining, but I only look at it as entertainment. The learning materials are barely more advanced than you can get from skimming an introductory blog post on networking.
Indeed. While I respect him, I don't like his caffeinated, manic presentation style and his material is far too basic for me. I suppose his presentation style is to hype up learners on an otherwise boring topic (for most, I personally love networking).
Nonetheless, he is quite popular with the early learners, such as OP.
> When the network breaks, most software devs are stomped and can't even do the most basic troubleshooting.
Not that I'm an expert myself, but I've seen the same patterns and concluded that to be a symptom of a set of technologies whose abstractions are leaking much less than others. It e.g. rarely happens that you have to run Wireshark and the likes to debug why an image doesn't show up in your app.
I'm also not an expert, but I would wager that networking doesn't change as fast as other computing-related topics because a big chunk of it is implemented in hardware, which is very expensive to change/upgrade, and that new network elements need to be compatible and integrated into existing networks, which don't easily change because its very expensice to change/upgrade and needs to remain compatible with other networking elements.
Two things strike me as odd about networking compared to many other IT/software fields:
First, it evolves much, much slower than anything else. Everything I learned 2 or even 3 decades ago is still relevant. Ethernet, DNS, DHCP, TCP/IP. New things got bolted on but everything old is still relevant. Yes, even in the modern cloud.
Second, I've met so few in the fields that actually understand anything about networking. Even as basic as an ip address and subnet. As long as the web page loads and the data is flowing, people stop caring fast. When the network breaks, most software devs are stomped and can't even do the most basic troubleshooting.
My only recommendation is to start with the absolute basic and learn from first principles. Ethernet, IPv4 (packets, IP addresses, subnets, routes), UDP, DHCP, DNS, TCP, HTTP, tunnels and VPNs, in that order. Use wireshark along the way and research everything that is unclear before going up the stack.
Try to run your own router/firewall using openwrt or pfsense/opnsense.