Что ж, сеть обычно состоит из двух или более узлов, а узел - это система, которая создает, маршрутизирует или завершает данные. Хотя у вас может быть коммутатор или маршрутизатор как часть вашей локальной сети, эти устройства сами не создают и не завершают (полезно) большое количество данных. Более того, хотя вы можете сделать Linux-систему членом нескольких сетей, по своей сути она становится напрямую подключенной к каждой отдельной сети, так что любая попытка установить сетевое соединение от одного сетевого адреса к другому сетевому адресу, который существует на том же хосте, будет По замыслу, ядро операционной системы должно быть перенаправлено обратно в себя, прежде чем оно попадет в NIC.
Есть способы обмануть систему, чтобы она не могла сказать, что она подключается обратно к себе, но эти приемы требуют участия удаленного маршрутизатора или системы для выполнения преобразования сетевых адресов, которое обычно не встречается в небольшом офисе. / сетевые устройства домашнего офиса, хотя linux может делать это, но не в одной системе, не сталкиваясь с внутренними проблемами, о которых я упоминал выше.
Однако главная проблема заключается в том, что ваше требование «проверить сеть» не определено. Какую сеть вы пытаетесь проверить? Это ваш сетевой код? Насколько мне известно, если ваш код будет отправлять и получать данные по адресу обратной связи (127.0.0.1) таким образом, который не связан с низкоуровневыми сетевыми атрибутами, такими как размер пакета или скорость потока и тому подобное, то он также будет работать между двумя отдельными хостами, которые имеют одинаковую кодовую базу. Однако, если сеть, которую вы хотите протестировать, включает в себя больше, чем код, тогда вам нужно определить, из чего именно состоит эта сеть, и для большинства предсказуемых сценариев должна быть вторая система (Linux-пакет, вероятно, наименее дорогой). ) для посредничества в дальнем конце тестовой сети.