Принудительная передача данных TCP/IP с одного сетевого адаптера на другой на одном ПК

Мы готовим продукт для тестирования ЭМС. Продукт работает под управлением Windows Embedded Standard 2009 (сравните его с Windows XP) и имеет 2 сетевых адаптера, например NIC1 и NIC2.

Для теста на выбросы нам нужно отправить данные с NIC1 на NIC2. Если я назначу обеим сетевым картам IP-адрес в одном и том же диапазоне, я могу выполнить PING и отправлять / получать данные, но данные не передаются по перекрестному кабелю.

Есть ли способ (путем изменения таблицы маршрутизации fe) фактически отправлять данные с NIC1 на NIC2 по перекрестному кабелю без добавления дополнительного оборудования?

3 ответа

Решение

Самое простое решение, вероятно, заключается в использовании UDP-трансляции. Таким образом, Windows придется передавать данные по проводам, поскольку у нее нет возможности узнать, что в сети нет других узлов.

Я не совсем уверен, что Windows не будет отбрасывать входящие широковещательные пакеты, но это кажется маловероятным. Возможно, вы можете увидеть две копии каждого пакета (одну, отправленную напрямую, а другую - по беспроводной сети), но это тоже маловероятно.

Как насчет двух виртуальных машин. VM 1 подключена к первому интерфейсу, а VM 2 подключена ко второму интерфейсу. Отправляйте трафик между виртуальными машинами таким образом. Я не знаю, легко ли это в Windows, хотя.

Другой вариант - использовать локальную область IPv6, адреса, начинающиеся с fe80:: (только что протестирован в Linux, и он работает там, но у меня нет Windows, с которой можно попробовать).

Вы можете посмотреть в iperf. iperf предназначен для тестирования скорости и производительности сети путем отправки фактических данных. Для этого требуется клиент / сервер на обеих сторонах соединения, поэтому, в зависимости от среды, это может или не может помочь.

http://en.wikipedia.org/wiki/Iperf

http://sourceforge.net/projects/iperf/

Другие вопросы по тегам