Bau einer eigenen Userspace-TCP/IP-Stack: Von Ethernet-Frames zu ARP
2025-03-04
Dieser Blogbeitrag, der erste einer Serie, beschreibt den Aufbau eines minimalen TCP/IP-Stacks im Linux-Userspace. Ziel ist das praktische Erlernen von Netzwerk- und Systemprogrammierung. Er behandelt die Verwendung von TUN/TAP-Geräten zum Abfangen von Netzwerkverkehr, eine detaillierte Untersuchung des Ethernet-Frame-Formats und der -Analyse (MAC-Adressen, Ethertype, CRC) und eine umfassende Erklärung des Address Resolution Protocol (ARP), einschließlich Paketformat und Resolutionsalgorithmus. Der Beitrag gipfelt in der Überprüfung der ARP-Antwortfunktionalität des benutzerdefinierten Stacks mit arping.
Entwicklung