Как tcpdump настраивает интерфейс, с которого он начинает захватывать пакеты?

434
nndhawan

На встроенной Linux-системе Arago интерфейс обычно может пинговать другие пункты назначения в сети. Однако эхо-запросы перестают работать при использовании таких утилит, как iperf или scp, для отправки трафика TCP по этим направлениям. Кроме того, iperf и scp работают на мгновение (т. Е. Отправляют данные), а затем tcp-трафик iperf и scp останавливается. В то же время ICMP-трафик ping к устройству назначения останавливается.

Когда мы запускаем tcpdump на интерфейсе, кажется, что он разрешает отправку tcp-трафика из точки A в точку B без проблем. Как tcpdump может заставить его работать? Это похоже на эксперимент с двумя щелями, когда акт наблюдения заставляет его вести себя в одном направлении, а акт не наблюдения заставляет его вести себя иначе.

В любом случае, это встроенная среда Linux (Arago), на которой установлен busybox. Если у кого-то есть представление о том, как tcpdump может повлиять на интерфейс, который он прослушивает, поделитесь своим пониманием.

Я использую команду tcpdump:

tcpdump -i -w

ПРИМЕЧАНИЕ. Одна из моих гипотез состояла в том, что tcpdump переводит интерфейс в случайный режим при захвате пакетов. Однако, когда я переключил его в случайный режим с использованием «ifconfig promisc» без tcpdump, данные не прошли, и эхо-запросы перестали отвечать (то есть, тот же нежелательный результат). Есть ли другие вещи, которые tcpdump делает с интерфейсом, который он нюхает?

2
1) Вы задаете вопрос XY. Понимание tcpdump может не решить реальную проблему. 2) Фактическая проблема неясна, поскольку вы сформулировали ее в отрицательных терминах: * «интерфейс не сможет пропинговать вне сети» * Но что интерфейс * способен * сделать? Что происходит "внутри" сети? Вы пробовали "арпинг"? * "поведение связи было отключено" * - как в `/ sys / class / net // operstate` на самом деле означает, что ссылка не работает, или вы действительно имеете в виду, что не могли заставить ее ответить? sawdust 6 лет назад 0
Позвольте мне попытаться объяснить мой вопрос в терминах, которые вы предложили. nndhawan 6 лет назад 0
Я попытался объяснить вопрос лучше. Чтобы ответить на ваши конкретные вопросы. «Интерфейс не сможет пропинговать вне сети» Но что может сделать интерфейс? Что происходит «внутри» сети? » Он способен мгновенно отправлять трафик tcp-данных без tcpdump и может успешно отправлять tcp-данные с помощью tcpdump. IP-адрес назначения находится в той же сети, что и интерфейс. "Вы пробовали арпинг?" NO. nndhawan 6 лет назад 0
"поведение связи было отключено" - как в / sys / class / net // operstate на самом деле означает, что ссылка не работает, или вы действительно имеете в виду, что не могли заставить ее ответить? Я не знал об этом файле, поэтому в следующий раз я проверю это и сообщу позже. Но когда происходит нежелательное поведение, я все еще могу пропинговать интерфейс, но я не могу пропинговать целевые устройства, которые обычно должны быть доступны из этого интерфейса. Спасибо за ваш вклад. nndhawan 6 лет назад 0

0 ответов на вопрос