@unow3n

Что делает третий аргумент сокета?

Суть вопроса в создании raw сокета с целью формирования arp пакета. Есть пример кода:
connect = socket.socket(
    socket.PF_PACKET, socket.SOCK_RAW, socket.htons(0x0806))


PF_PACKET - определяет, что реализация протоколов будет поверх физического уровня.
SOCK_RAW - тип сокета позволяющий добавлять заголовки к канальному(link) уровню.
socket.htons(0x0806) - 3 аргумент который мне не понятен.

Объясните значение третьего аргумента и поправьте меня там где я не прав
  • Вопрос задан
  • 116 просмотров
Решения вопроса 1
@galaxy
ETH_P_ARP
#define ETH_P_ARP	0x0806		/* Address Resolution packet	*/


В сокет будут доставляться все ARP пакеты при этом. Соответствует полю EtherType Ethernet пакета.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы