Ask HN: Best resources to learn computer networking?
I never took a formal course on computer networking and have just learned bits and pieces along the way. However, I would like to fill in the gaps in my knowledge and learn more about networking, specifically in TCP/IP, CIDR, subnets, network masks, routers, gateways, NAT, firewalls, etc. I assume most of these topics would be covered in a networking 101 course of some kind.
Any suggestions on the best resources for studying these topics? Could be a book, an online course, a website with articles, etc.
Any suggestions are much appreciated. Thanks.
2 comments
[ 2.7 ms ] story [ 12.1 ms ] thread1. Read LARTC [http://www.lartc.org/].
2. Get a virtual machine hypervisor, a one that can work with a Linux bridge. KVM/libvirt should do, as should LXC on libvirt or lxc tools (lxc-create, lxc-start and the like). Avoid Docker, as its networking is not supposed to be understood by operator.
2.5. Setup several Linux guests. Three or four should be enough to see necessary bits.
3. Try to setup different networks by hand (avoid using ifup/ifdown and their equivalents; use /(s)bin/ip, /sbin/ifconfig, and /sbin/route).
3.5 Learn how to use tcpdump (pay attention to -i option). Try understanding why some packets show up duplicated.
4. Profit.
Note that in 2. you may easily replace VMs with physical machines with several network cards, but I guess it would be easier to go with VMs.