🚧 Part 3: Networking
This section provides and introduction to Linux networking. We’ll cover some foundational theory and hands-on configuration on Ubuntu (22.04+) and RHEL 9 operating systems. Each chapter includes a Common Commands box highlighting distro-specific tools and syntax.
Networking Fundamentals
- OSI & TCP/IP Models
 - IPv4 vs. IPv6 Addressing
 - MAC Addresses & ARP
 - Common Protocols (ICMP, DHCP, DNS, HTTP/S)
 
Network Configurations
- DHCP vs. Static Assignment
 - Ubuntu: Netplan
/etc/netplan/*.yamlsyntax
sudo netplan apply
 - RHEL 9: NetworkManager & legacy scripts
nmcliCLI:nmcli connection add/modify
nmtuiTUI
- (Optional) 
/etc/sysconfig/network-scripts/ifcfg-* 
 - Bringing Interfaces Up/Down
 
Domain Name System
- DNS & Name Resolution
 /etc/hostsBasics
- Resolver Configuration
- Ubuntu: 
systemd-resolved,/etc/resolv.confsymlink
 - RHEL 9: direct 
/etc/resolv.conf 
 - Ubuntu: 
 - Testing DNS
 - Caching & Stub Resolvers
 
Routing & IP Management
- Static Routes
 - Policy-Based Routing (ip rule)
 - Enabling IP Forwarding
 - VRFs & Network Namespaces
 
Firewalling & Network Security
- Ubuntu UFW (Uncomplicated Firewall)
sudo ufw enable/disable
- Profile management
 
 - RHEL 9 firewalld
sudo firewall-cmd --zone=public --add-port=80/tcp
- Permanent vs. runtime rules
 
 - iptables vs. nftables
 - SELinux & Network Access
 
Monitoring & Troubleshooting
- Connectivity Tests (ping, traceroute, mtr)
 - Socket & Port Inspection (ss, netstat)
 - Packet Capture (tcpdump, tshark)
 - Interface Statistics (ethtool, iftop, nload)
 - Logs & Systemd Journal
 
VPNs, Encryption, & Tunnels
- SSH Tunnels & SOCKS Proxies
 - OpenVPN Setup
 - WireGuard Quick-Start
 - IPsec & strongSwan
 
Linux Virtual & Container Networking
- Bridge & VLAN Interfaces
 - Docker & Podman Networks
 - CNI Plugins & Kubernetes Basics
 - MACVLAN, NAT & Host Networking Modes