1

Я пытаюсь запустить серверную программу на своем локальном компьютере. Имеет 2 маршрута в интернет:

  • 10.0.0.1/24 на eth0 - это шлюз и подсеть на интерфейсе с самым быстрым соединением; однако брандмауэр не позволяет мне получить доступ к любым серверам, связанным с портами TCP.
  • 10.8.0.1/24 на eth1 - это шлюз и подсеть на более медленном интерфейсе; тем не менее, я управляю устройством шлюза и могу успешно перенести порт через него, и сервер виден в Интернете.

На моей машине у меня есть следующие маршруты:

default via 10.0.0.1 dev eth0 src 10.0.0.x metric 203 default via 10.8.0.1 dev eth1 metric 800 10.8.0.0/24 dev eth1 proto kernel scope link src 10.8.0.y 10.0.0.0/24 dev eth0 proto kernel scope link src 10.0.0.x metric 203

Очевидно, что маршрут через eth0 будет иметь приоритет в обычных условиях; однако для перенаправления моего сервера необходимо использовать шлюз по умолчанию на интерфейсе eth1 без перенаправления всего остального трафика через тот же интерфейс.

До сих пор я пытался связать сервер с адресом 10.8.0.y что означает, что он будет принимать только те соединения, назначение которых - этот IP-адрес. Тем не менее, он не работал для маршрутизации трафика в обратном направлении. С помощью tcpdump -i eth1 -p 25561 я проверил, что входящие соединения принимаются, но при мониторинге eth0 и eth1 я не вижу исходящего ответа. После этого на удаленном клиенте истечет время ожидания ответа.

Кто-нибудь еще пытался сделать что-то подобное и может дать некоторое представление о том, как мне нужно это настроить?

0