Как получить доступ к машине из нескольких сетевых интерфейсов/WAN

Как получить доступ к машине из нескольких сетевых интерфейсов/WAN

Недавно я добавил вторую сетевую карту к своему серверу Debian. Еще одна сетевая карта отправляется, что доводит общее количество WAN-подключений до 3.

Предположим, что сетевые карты имеют имена ens2, ens3и ens4. «Доступ» означает любые сетевые подключения к серверу (SSH, VNC, ping и т. д.)

Когда у меня был только один интерфейс ens2, я мог получить доступ к серверу, используя ens2IP-адрес . Когда я добавил второй интерфейс ens3, я не мог получить доступ к серверу, используя IP на ens2, но доступ к нему, используя ens3IP , работал.

Когда я отключу ens3, я снова смогу получить доступ к серверу через ens2IP-адрес .

Как мне получить доступ к серверу со всех интерфейсов WAN? Я пытался вмешаться в таблицу маршрутизации, но отсутствие у меня знаний в маршрутизации просто сделало машину недоступной из сети/сетей.

решение1

Независимо от того, на какой интерфейс приходит соединение, таблица маршрутизации определяет, как отправляется ответ. Например, если у вас ens2 как 10.1.2.3/24 и ens3 как 10.1.9.3/24, и сервер работает. Пакет приходит с 172.12.2.2 для 10.1.9.3. Сервер отвечает, и шлюз по умолчанию — ens2, поэтому ответ возвращается на 172.12.2.2 с 10.1.2.3, и ничего не работает.

Вам нужно, чтобы пакеты возвращались обратно через тот же интерфейс. Это настроит вторую таблицу маршрутизации для второго интерфейса:

echo 200 isp2 >> /etc/iproute2/rt_tables
ip rule add from <ens2-ip> dev ens2 table isp2
ip route add default via <gateway_IP> dev ens2 table isp2

Связанный контент