Как программно узнать порт, по которому движется пакет?

316
07 июня 2017, 04:11

Добрый день. Написала программу сниффера, работающего в "неразборчивом" режиме (Promiscuous mode). Как можно узнать номер порта, по которому приходит тот или иной пакет?

Answer 1

С помощью чего вы писали сниффер? WinPcap?

Как получить список всех портов.

Когда вы начинаете захват с помощью функции pcap_loop, вы указываете конкретный интерфейс, с которого осуществляется захват. Пакеты, пришедшие на другие интерфейсы, не захватываются и не попадают в вашу callback-функцию. Самый простой способ - сделайте несколько callback-функций, по одной функции на каждый порт. По тому, в какую функцию пришёл вновь захваченный пакет, вы сможете определить, на какой порт он пришёл.

READ ALSO
Помогите решить задачу на c++ [требует правки]

Помогите решить задачу на c++ [требует правки]

Шаблон Строитель(Builder) Реализовать систему, которая будет нанимать различных работников на работы в компанию используя паттерн СтроительРеализовать...

222
Задача на с++ thread и atomic<t> [требует правки]

Задача на с++ thread и atomic<t> [требует правки]

Используя объекты класса thread для создания потоков и объекты классов mutex и atomic для безопасного обмена информацией между потоками, распаралелить...

344
суть глупого многопоточного tcp-сервера

суть глупого многопоточного tcp-сервера

здравствуйте, обдумываю реализацию многопоточного tcp-сервера

270
работа с файлом в с++

работа с файлом в с++

Я делаю курсач, суть задания создания сделать телефонный справочникСуть проблемы: я хочу сделать что бы ФИО адрес и номер телефона находился...

390