Я настраиваю лабораторию Dynamips / dynagen, и мне интересно, есть ли способ получить трафик для маршрутизации устройств с одним касанием, зайти в лабораторию и вернуться к устройству с отводом на той же машине. Я пробовал конкретные маршруты для хоста, а также удалял маршрут, созданный, когда я даю устройству tun ip через ifconfig. В обоих случаях трафик всегда предпочтительнее подключенных устройств и не проходит через мою лабораторию.
Есть ли способ сделать это без отдельной машины или виртуальной машины?
Я не думаю, что это тривиально выполнимо, поскольку хост-машина выполнит поиск в своей собственной таблице маршрутизации и увидит, что IP-адрес, который вы хотите достичь, легче всего получить, просто передав трафик внутри.
Если вы используете Linux, можно создавать исходные маршруты, используя ip
эта страница есть пример, с которым вы должны уметь работать.
Очевидно, необработанные сокеты привязываются к интерфейсу и могут с радостью обойти таблицы маршрутизации. Скапи на это способен, например:
>>> sendp(IP(dst="192.168.8.2"), iface="tap0", loop=1)
Достигает своей цели.