TCP/IP
sudo apt update && sudo apt install tcpdump -y
Visualisez le trafic TCP/IP sur une interface :
sudo tcpdump -i eth0 tcp
Cela affiche les paquets TCP avec les adresses source et destination, les ports et les drapeaux. Pour le trafic IP sans filtre TCP :
sudo tcpdump -i eth0 ip
7. Utiliser `tc` pour le contrôle de trafic basé sur les principes TCP/IP
L'outil `tc` (traffic control) sous Linux fonctionne selon les principes TCP/IP. L'action `tc ct` communique avec le module netfilter conntrack pour suivre les connexions, essentiel pour le filtrage avec état et le NAT. Affichez les qdiscs actuels :tc qdisc show
Ajoutez un qdisc netem pour simuler une latence :
sudo tc qdisc add dev eth0 root netem delay 100ms
Supprimez à nouveau le qdisc :
sudo tc qdisc del dev eth0 root
8. Vérifier les checksums avec `tc-csum`
`tc-csum` recalcule les checksums après la modification des données des paquets, nécessaire pour maintenir les paquets TCP/IP corrects. Ajoutez une action csum à un filtre :sudo tc filter add dev eth0 parent 1: protocol ip prio 1 u32 match ip dst 192.168.1.1/32 action csum updateCela recalcule le checksum pour les paquets vers 192.168.1.1. Vérifiez le filtre :
tc filter show dev eth0
Vérification
Vérifiez que TCP/IP fonctionne correctement sur votre système :ip addr show
Affiche les adresses IP sur vos interfaces. Vérifiez la connectivité :
ping -c 4 8.8.8.8
Affiche les échos ICMP, ce qui confirme que le routage IP fonctionne. Pour la connectivité TCP :
ss -tuln
Affiche les écouteurs TCP et UDP sur votre système. Si ces commandes produisent une sortie, TCP/IP fonctionne correctement.
Problèmes fréquents
Problème : `tcpdump` n'affiche aucun paquet Cause : vous n'avez pas sélectionné la bonne interface ou vous manquez de droits root. Solution : utilisez `sudo` et vérifiez les interfaces avec `ip link show`. Sélectionnez la bonne interface, par exemple `tcpdump -i wlan0 tcp` pour le wifi.Problème : `tc qdisc add` renvoie « RTNETLINK answers: Operation not permitted » Cause : vous n'avez pas les droits root ou l'interface ne prend pas en charge la qdisc. Solution : utilisez `sudo` et vérifiez que l'interface est active avec `ip link set eth0 up`.
Problème : `tc filter add` échoue avec une erreur « match » Cause : la syntaxe du filtre est incorrecte. Solution : vérifiez les adresses IP et utilisez le bon protocole. Consultez le manuel avec `man tc-u32` pour la syntaxe complète.
La suite de protocoles continue d'évoluer grâce à de nouvelles RFC et à de meilleures implémentations, mais le cœur — la combinaison de TCP et d'IP — est resté inchangé depuis la migration sur ARPANET en 1983.