Еще раз, сервер Ubuntu с 2 сетевыми картами, проблемы шлюза
У меня есть сервер Ubuntu 14 с двумя сетевыми картами.
eth0
подключен к моей сети управления и имеет IP-адрес 192.168.10.25/24
eth1
подключен к моей клиентской сети для подключения к интернету. Это настроенный DHCP.
Мне нужно иметь возможность подключаться к серверу через сеть управления, и в то же время ему нужно выходить во всемирные сети для получения новых пакетов. Мне не нужно, чтобы сервер выступал в качестве интернет-шлюза для доступа других устройств к Интернету. Нужно просто достичь этого самостоятельно.
Если я настраиваю только eth0
со шлюзом 192.169.10.1 я могу нормально подключиться к серверу из своей локальной сети, используя SSH.
Если я настраиваю только eth1
с помощью DHCP я могу нормально добраться до сети.
Я знаю достаточно, чтобы знать, что у тебя не может быть двух шлюзов. Поэтому, если я включу оба порта, я обязательно отключу шлюз от eth0
, На мой взгляд, это должно сказать системе, что весь трафик 192.168.10.x по-прежнему проходит eth0
все остальное проходит eth1
, Но очевидно, что это не работает таким образом.
Это было очень сложно. Я искал в Google весь день сегодня, и, похоже, не могу найти то, что работает.
1 ответ
Вы можете попытаться добавить маршрут, когда интерфейсы повышаются
Пример:
положить сценарий в /etc/network/if-up.d/
# Check for specific interface if desired
[ "$IFACE" != "eth1" ] || exit 0
# Adding additional routes on connection
route add default dev eth1 via xxx.xxx.xxx.xxx
route add -net yyy.yyy.yyy.yyy/zz dev eth0
route add ...
Это, вероятно, перенаправит весь трафик на eth1, за исключением сети yyy.yyy.yyy.yyy/zz.