У меня TCP-сервер, прослушивающий 10.10.10.101, порт 2000, работающий на компьютере с Windows 7. Ниже приведена соответствующая строка вывода для команды netstat -aon
:
TCP 10.10.10.101:2000 0.0.0.0:0 LISTENING 2340
У меня также есть FPGA, которая отправляет пакет TCP SYN каждую секунду, пока сервер не ответит.
FPGA физически подключается непосредственно к сетевому интерфейсу на компьютере с Windows 7, для которого настроен статический IP-адрес 10.10.10.101. IP-адрес источника пакетов SYN - 10.10.10.100.
Я вижу, что пакеты SYN принимаются на сетевом интерфейсе с помощью WireShark, но TCP-сервер не отвечает на SYN/ACK. Я предполагаю, что TCP-сервер не видит пакеты SYN из-за проблем маршрутизации.
Я вручную добавил два маршрута следующим образом (IF 16
относится к интерфейсу со статическим IP 10.10.10.101
):
route add 10.10.10.100 MASK 255.255.255.255 10.10.10.1 METRIC I IF 16
route add 10.10.10.101 MASK 255.255.255.255 10.10.10.1 METRIC I IF 16
Я правильно добавил маршруты? Как я могу подтвердить, что TCP-сервер действительно не пересылает IP-пакеты с помощью TCP SYN? Что я могу сделать, чтобы лучше понять, что происходит?