У меня есть две машины, каждая с двумя действующими сетевыми интерфейсами, интерфейс Ethernet eth0
и интерфейс tun / tap gr0
. Цель состоит в том, чтобы запустить TCP-соединение на машине A с использованием интерфейса gr0
, но затем получить ответы (ACK и т. Д.) От машины B через интерфейс Ethernet, eth0
. Так, машина A отправляет SYN на gr0
, а машина B сама получает SYN gr0
, но затем отправляет свой SYN / ACK обратно через eth0
. Устройство tun / tap - это беспроводная связь GNU Radio, и мы просто хотим, чтобы ответы приходили через Ethernet.
Какой самый простой способ сделать это? Мне нужно больше узнать о TCP / IP, но я изначально думал, что исходящие пакеты с подменой источника сообщат получателю, что он должен ответить на поддельный адрес (который должен быть перенаправлен на eth0
). Это потребует маршрутизации IP-адресов от интерфейсов tun / tap через gr0
, а остальной трафик оставит на eth0
.
Мы используем Linux, и решение Python было бы предпочтительнее.
Спасибо, что посмотрели!