@unow3n

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

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


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

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


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

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

Похожие вопросы