C++ Academy
16.1K subscribers
583 photos
125 videos
1 file
546 links
По всем вопросам- @haarrp

@itchannels_telegram - 🔥 best it channels

РКН: clck.ru/3FmxJF
加入频道
🧵 Пишем свой сетевой стек с нуля: Ethernet и ARP на C

Хочешь разобраться, как работает TCP/IP на самом низком уровне?
В этой статье показано, как реализовать Ethernet и ARP в пользовательском пространстве Linux — на чистом C.

🔌 Что используется:
- TAP-устройство для приёма и отправки "сырых" Ethernet-кадров
- Структуры с __attribute__((packed)) для точного соответствия форматам
- Чтение и парсинг ARP-пакетов вручную

📦 Что реализуется:
- Создание ARP-запросов и обработка ответов
- Простейший ARP-кэш
- Парсинг и генерация Ethernet-фреймов
- Весь ввод-вывод — в user space

🧠 Зачем это нужно?
- Понимание, как работают сетевые интерфейсы на уровне байтов
- Практика системного программирования на C
- Основа для написания своего сетевого стека: IPv4, ICMP, UDP, TCP

📚 Статья:
https://www.saminiir.com/lets-code-tcp-ip-stack-1-ethernet-arp/

💻 Исходники на GitHub:
https://github.com/saminiir/level-ip

#Linux #Networking #C #TCPIP #ARP #Ethernet #DevLowLevel #СистемноеПрограммирование