Какая часть сетевого стека у меня есть доступ к использованию Node.js? - PullRequest
0 голосов
/ 21 октября 2018

Глядя на представление стека TCP / IP, например на этом фото: enter image description here

Мне было бы интересно (просто из любопытства) попробовать и прочитатьзаголовки уровня 2 (канал передачи данных).Это возможно?Я думаю, что модуль net дает доступ только к пакетам транспортного уровня.Я вижу, что есть также модуль udp, но я также сомневаюсь, что смогу получить от него информацию о пакетном канальном уровне.

Верно ли вышеизложенное?Правильно ли я считаю, что пакетные данные транспортного уровня становятся доступными для среды выполнения JavaScript через реализацию v8 / etc, и что пакетные данные более низкого уровня (т. Е. Уровень Ethernet) НЕ подвергаются средам выполнения Node.js?

1 Ответ

0 голосов
/ 30 октября 2018

node.js имеет доступ к layer 3 и выше.Для захвата layer 2 пакетов вам необходимо вызывать внешние программы, такие как wireshark , или использовать модули, которые интегрируют эти инструменты низкого уровня.

Wireshark имеет интерфейс командной строки ,Вы можете вызвать его из узла, используя child_process.

...