Как добавить два шлюза на одном компьютере

У меня есть один тестовый сервер с двумя интерфейсами. К одному интерфейсу я назначил ip 172.16.122.1 и GW 172.16.xxx.xxx

Теперь я подключил кабель к второму интерфейсу и дал ему ip 10.2.2.98.

Теперь они оба в разных подсетях.

Итак, как добавить второй шлюз в файл / etc / sysconfig / network. И когда я попытаюсь выполнить ping, то через какой интерфейс он будет пинговать удаленную систему.

Технически вы можете иметь несколько шлюзов по умолчанию, но это основная часть основных интернет-серверов, балансировщиков сетевой нагрузки и т. Д. По большей части.

Гораздо более распространенным является требование для нескольких маршрутов, каждый со своим собственным маршрутизатором.

Пример. У вас есть компьютер, сидящий между двумя сетями, например: 192.168.1.5/24 и 192.168.2.5/24

Вы используете 192.168.1.1 в качестве шлюза по умолчанию – это маршрут по умолчанию для всех, что не локально подключено. Локально привязанность явно определяется как что-либо, что находится в любой из подсетей, на которых у вас есть интерфейс в состоянии UP / RUNNING и для которого нет явного статического маршрута.

В этой конфигурации у вас уже есть три маршрута: маршрут для всего локально на 192.16.8.1.0 / 24, причем шлюз является вашим собственным IP-адресом в этой подсети. У вас аналогичный маршрут для систем на 192.168.2.0/24 … И, наконец, у вас есть маршрут по умолчанию, то есть для «0.0.0.0», указывающий на шлюз по умолчанию. (В некоторых операционных системах существуют и другие «psuedo» маршруты, например, для доступа к устройству loopback или для широковещательного трафика)

Теперь скажем, что есть маршрутизатор на 192.168.2.2, который обеспечивает доступ к нескольким сетям. Обычно это «внутренние» сети. Теперь вы можете добавить «статические маршруты» в эти сети. Пример для сети с подсетью 192.168.5.0/24

Пример Linux:

route add -net 192.168.5.0 netmask 255.255.255.0 gw 192.168.2.2 

Вы можете добавить несколько «статических» маршрутов через один маршрутизатор, или маршруты могут использовать как можно больше маршрутизаторов / шлюзов.

Вы можете просмотреть таблицу известных маршрутов с помощью команды

 netstat -rn 

Конкретная команда Linux покажет ту же информацию в немного другом формате.

 ip route show 

Указанный маршрутизатор должен «знать», как добраться до целевой сети, иначе он перейдет на свой собственный шлюз по умолчанию и переадресует ваши пакеты таким образом.

Чтобы эта конфигурация изменилась, вам необходимо добавить ее в файлы конфигурации системы. Статические маршруты относятся к одному конкретному интерфейсу, поэтому они не входят в / etc / sysconfig / network. Вместо этого перейдите в файлы, расположенные в /etc/sysconfig/network-scripts/

Например: /etc/sysconfig/network-scripts/route-eth0

Вы добавляете «через» записи в этот файл для маршрутов. Эти строки читаются как «Доступ к сети X через шлюз Y на устройстве сетевого интерфейса Z. Пример

 default 192.168.1.1 dev eth0 192.168.5.0/24 via 192.168.2.2 dev eth0 192.168.6.0/24 via 192.168.2.2 dev eth0 

И так далее.