Назад | Перейти на главную страницу

Добавить статический маршрут (шлюз по умолчанию) на сервере Ubuntu 16.04

Я настроил виртуальный сервер Ubuntu 16.04 и пытаюсь изменить на нем GW по умолчанию. (весь трафик должен быть перенаправлен на другой gw - из-за проблем с белым списком).

Входящий трафик будет поступать из сети 10.50.x.x, но исходящий должен проходить через 192.168.0.254 gw.

Наша установка выглядит следующим образом:

У меня роутер с 2 вланами. Первый vlan - 10.50.0.0/24 с gw 10.50.0.1/24. Второй vlan - 192.168.0.0/24 с gw 192.168.0.210. На втором vlan есть еще один шлюз - 192.168.0.254. Маршрутизатор может получить доступ как к vlan, так и ко всем серверам на них.

При запуске сервера таблица маршрутизации по умолчанию:

Destination   Gateway         Genmask         F   M R U Iface
0.0.0.0       10.50.0.1       0.0.0.0         UG  0 0 0 ens160
10.50.0.0     0.0.0.0         255.255.255.0   U   0 0 0 ens160

Итак, чтобы сделать сеть 192.168.0.x "доступной", я добавил:

route add -net 192.168.0.0 netmask 255.255.255.0 gw 10.50.0.1 dev ens160

Затем, чтобы объяснить сеть 10.50.0.0/24 для использования шлюза 10.50.0.1 (поскольку мы изменим gw по умолчанию):

route add -net 10.50.0.0 netmask 255.255.255.0 gw 10.50.0.1 dev ens160

А потом "объяснить", как добраться до шлюза 192.168.0.254

route add -net 192.168.0.254 netmask 255.255.255.255 gw 10.50.0.1 dev ens160

Маршрут теперь такой:

Destination     Gateway     Genmask         F   M  R  U   Iface
0.0.0.0         10.50.0.1   0.0.0.0         UG  0  0  0   ens160
10.50.0.0       10.50.0.1   255.255.255.0   UG  0  0  0   ens160
10.50.0.0       0.0.0.0     255.255.255.0   U   0  0  0   ens160
192.168.0.0     10.50.0.1   255.255.255.0   UG  0  0  0   ens160
192.168.0.254   10.50.0.1   255.255.255.255 UGH 0  0  0   ens160

А теперь добавим gw по умолчанию:

route add default gw 192.168.0.254 dev ens160

Я получил:

SIOCADDRT: Network is unreachable

Я могу пинговать 192.168.0.254, но при этой настройке сервер не "видит" 192.168.0.254?

root@tlt551:/home/user# ping 192.168.0.254
PING 192.168.0.254 (192.168.0.254) 56(84) bytes of data.
64 bytes from 192.168.0.254: icmp_seq=1 ttl=254 time=3.18 ms
64 bytes from 192.168.0.254: icmp_seq=2 ttl=254 time=1.60 ms
...

Может ли кто-нибудь помочь мне понять, что я делаю не так (я новичок в сетях)?

Поскольку ваш сервер подключен только к сети 10.50.0.0/24, вы не можете исправить это, только изменив настройки на сервере. Этот сервер может иметь в качестве шлюза по умолчанию только 10.50.0.1. Никаких других статических маршрутов добавлять не следует, поскольку они совершенно бессмысленны.

Изменения необходимо внести в ваш маршрутизатор, подключенный к обеим сетям. Использование исходной IP-маршрутизации (также называемой маршрутизация на основе политик), вы можете отправлять трафик с сервера на другой маршрутизатор следующего перехода. Чтобы помочь с настройкой, нам нужно знать марку маршрутизатора, который вы используете. Но я настоятельно рекомендую вам найти помощь в сетевой команде вашей компании.

Попробуй это:

ip route add 192.168.0.254 dev ens160
ip route add default via 192.168.0.254