Маршрутизация сетевых пакетов через соединение ppp

У меня есть 2 машины с соединением ppp через последовательный порт между ними. Они также подключены к отдельным локальным сетям на своих интерфейсах Ethernet. Я хочу иметь возможность общаться между этими двумя сетями Ethernet.

Эти сети могут находиться или не находиться в разных подсетях. Все IP-адреса назначаются статически, поэтому DHCP не используется.

Грубая топология выглядит следующим образом;

          eth        ppp(tty)       eth
network1 <----> box1 <-----> box2 <-----> network2

Можно ли это сделать простым ip route команды?

1 ответ

Решение

Было бы лучше, если бы net1 и net2 действовали как независимые подсети с разными префиксами IP-адресов и отдельными широковещательными доменами.

В этом случае, с двумя интерфейсами в каждой "коробке", то, что у вас есть, является практически самым простым видом IP-маршрутизатора. (Представьте себе интерфейс ppp как третью сеть, соединяющую два маршрутизатора с собственным префиксом IP).

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

  • В поле 1 добавьте маршрут к через .

  • В блоке 2 добавьте маршрут к через .

(Также возможно оставить ненумерованными интерфейсы ppp и настроить маршруты через интерфейс, например, используя dev ppp0 ключевое слово вместо via <addr> в линуксе Это, вероятно, не рекомендуется.)

Но что более важно, устройства в этих сетях должны знать, что они должны использовать box 1 и box2 в качестве шлюзов к противоположной сети. (Однако им не обязательно использовать box 1 и box2 в качестве шлюзов по умолчанию. Если две сети уже имеют свои собственные шлюзы по умолчанию, вместо этого настройте маршруты через box1/box2.)


Если связь между net1 и net2 должна быть прозрачной на уровне Ethernet (например, если вы отправляете не IP-трафик), то устройства не могут быть маршрутизаторами - они должны действовать как мосты. Настроить мост между двумя интерфейсами просто; проблема, однако, заключается в том, что "обычный" PPP несет только трафик сетевого уровня, а не необработанные кадры Ethernet.

Таким образом, для моста вам понадобится либо специальный режим PPP для Ethernet; или, возможно, MPLS поверх PPP (который, я уверен, существует); или создайте туннель, такой как "gretap" или "erspan" поверх IP-сети (который имеет некоторые издержки). Все варианты возможны, но требуют знания того, что поддерживается box 1 и box2 - в отличие от маршрутизации, которая является основной функцией маршрутизатора.

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