У меня есть веб-сервис и клиент, работающий в одной системе. Я хотел бы контролировать пакеты, объединяющиеся в обоих направлениях, в то время как приложения взаимодействуют друг с другом.

Я планирую использовать Wireshark для этих целей. Но я слышал, что невозможно контролировать внутренние пакеты, когда клиент и сервер работают на одной машине. И это правда - я не вижу никаких внутренних пакетов. Я планировал решить эту проблему, запустив клиент на виртуальной машине Vmware, которая работает на рабочей станции Vmware. Но все еще не могу получить пакеты.

Как построить такую обходную систему, которая могла бы отслеживать пакеты между двумя приложениями на одном аппаратном ПК?

2 ответа2

2

(У вас не указана операционная система. Я предполагаю, что вы используете Windows.)

Начиная с Windows Vista, вы можете захватывать петлевой трафик. То, что вы хотите, это Npcap, «обновление» до WinPcap.

Убедитесь, что вы отметили опцию для поддержки захвата петли при установке.

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

IIRC адаптер не имеет описательного имени по умолчанию («Ethernet 2» или аналогичный), поэтому вы можете переименовать его.

2

Команда vmnet-sniffer, которая поставляется с VMWARE Workstation.

Если ваша ОС Linux. Вы можете использовать приведенную ниже команду для трассировки пакетов

sudo /usr/bin/vmnet-sniffer -e -w mypackets.pcap /dev/vmnet8

Control + C (останавливает гонку)

Примечание: vmnet8 (может измениться. Это зависит от вашего сценария)

Вы можете быть на vmnet1, если вы используете сети только для хоста. Просто попробуйте оба, если вы не уверены.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .