Настройка Linux-маршрутизации

Система, которую я пытаюсь настроить, имеет IP-адрес 172.31.2.1. Его шлюз по умолчанию - 172.31.254.1. Это прекрасно работает, и я могу добраться до всего, что позволяет шлюз (172.31.0.0/16 + 149.244.178.0/24).

Есть другой шлюз в 149.244.178.1, который позволит мне достичь чего-либо в 149.244.0.0, и я пытаюсь добавить это к таблице, чтобы я мог получить доступ к 149.244.64.250.

Вот как выглядит моя таблица маршрутизации:

Kernel IP Routing table
Destination    Gateway      Genmask      Flags    Metric    Ref    Use    Iface
172.31.0.0     *            255.255.0.0  U        0         0        0    eth0
169.254.0.0    *            255.255.0.0  U        0         0        0    eth0
default        172.31.254.1 0.0.0.0      UG       0         0        0    eth0

route add 149.244.0.0/16 gw 149.244.178.1 выдает ошибку:

route: netmask 0000ffff doesn't make sense with host route.

route add -net 149.244.0.0/16 dev eth0 меняет таблицу маршрутов на:

Kernel IP Routing table
Destination    Gateway      Genmask      Flags    Metric    Ref    Use    Iface
172.31.0.0     *            255.255.0.0  U        0         0        0    eth0
169.254.0.0    *            255.255.0.0  U        0         0        0    eth0
149.244.0.0    *            255.255.0.0  U        0         0        0    eth0
default        172.31.254.1 0.0.0.0      UG       0         0        0    eth0

Тем не менее, попытка добавить шлюз все еще дает мне ту же ошибку. Извините, если это звучит запутанно, и любая помощь приветствуется!

1 ответ

Решение

Хост 149.xxx не будет находиться в вашей локальной подсети, поэтому ваш компьютер не сможет связаться с ним. Маршрутизатор между вашей подсетью и этой подсетью должен иметь адрес 149.x и 172.x (надеюсь, на двух разных сетевых картах), он будет маршрутизировать между двумя подсетями.

Другие вопросы по тегам