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

Добавление статического маршрута с помощью networkd

Я пытаюсь использовать systemd-networkd для настройки статического маршрута. Фактические IP-адреса разные, но вот суть того, что я пытаюсь сделать:

ip route add 10.17.12.0/23 dev eth0

Если я выполню эту команду, моя сетевая настройка будет работать точно так, как задумано. Мне просто нужно установить соединение между этим хостом и подсетью 10.17.12.0. Мой хост находится в другой подсети, и по какой-то причине он не может маршрутизировать туда самостоятельно. Теперь я хочу выбрать тот же статический маршрут и настроить его через файл systemd-networkd.

Вот конфигурация, которую я пробовал использовать

[Match]
Name=eth0

[Route]
Gateway=10.2.100.5 # IP address of eth0 interface
Destination=10.17.12.0/23

Я также пробовал установить для шлюза шлюз по умолчанию для интерфейса eth0, но каждый раз получаю одну и ту же ошибку:

eth0: Could not set route: Invalid argument

Есть идеи, что я могу здесь делать?

Если ты бежишь ip route add 10.17.12.0/23 dev eth0ты получишь это в ip route show:

10.17.12.0/23 dev eth0 scope link

Обратите внимание scope link часть.

Так что попробуйте это в своем networkd конфигурация:

[Route]
Destination=10.17.12.0/23
Scope=link

В этом случае указывать фиктивный адрес шлюза не требуется.