Недавно я обновился до ubuntu 18.04 с 16.04 и пытаюсь выяснить, как получить команды ip route
и ip rule
, которые я использовал для добавления в /etc/network/interfaces
, работая под netplan.
Это команды, которые я пытаюсь воспроизвести, которые я ранее выполнял в /etc/network/interfaces
:
sudo ip rule add table 129 from 192.168.1.160
sudo ip route add table 129 to 204.8.230.0/24 dev enp0s3
sudo ip route add table 129 to 192.168.1.0/24 dev enp0s3
sudo ip route add table 129 default via 192.168.1.1
Это мой первый проход в конфигурации netplan в /etc/netplan/01-netcfg.yaml
:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
enp0s3:
dhcp4: yes
routes:
- from: 192.168.1.160
to: 204.8.230.0/24
via: 192.168.1.1
- from: 192.168.1.160
to: 192.168.1.0/24
via: 192.168.1.1
Однако после перезапуска эти маршруты не отображаются в выводе ip route
. Как мне закрепить эти маршруты?
Обратите внимание, что я также пытался поместить эти команды в сценарий в /usr/lib/networkd-dispatcher/routable.d
на основе некоторой документации, которую нашел, но, похоже, это тоже не сработало.
РЕДАКТИРОВАТЬ : Я все ближе. Это новый конфиг, но теперь проблема в том, что, хотя таблица показана в ip rule
, ip route show table 129
пуста:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
enp0s3:
dhcp4: yes
routing-policy:
- from: 192.168.1.160
table: 129
routes:
- to: 204.8.230.0/24
via: 192.168.1.1
table: 129
- to: 192.168.1.0/24
via: 192.168.1.1
table: 129
- to: 0.0.0.0/0
via: 192.168.1.1
table: 129
Я нахожусь на версии netplan 0.36.1
Я понял это. Проблема состояла в том, что systemd-networkd пытался установить маршруты, прежде чем сеть произошла, который перестал работать. Фиксация on-link: True
на маршрутах:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
enp0s3:
dhcp4: yes
routing-policy:
- from: 192.168.1.160
table: 129
routes:
- to: 204.8.230.0/24
via: 192.168.1.1
table: 129
on-link: True
- to: 192.168.1.0/24
via: 192.168.1.1
table: 129
on-link: True
- to: 0.0.0.0/0
via: 192.168.1.1
table: 129
on-link: True