如何向网络管理器管理的Ubuntu 1604添加持久静态路由?

时间:2019-04-17 20:01:52

标签: routes ubuntu-16.04 networkmanager

我需要向我的Ubuntu 16.04路由表添加一个持久性静态路由,即使重新启动PC也要保存该静态路由。现在,这是我正在使用的命令,在重启之前,它可以正常工作,然后不再存在...

sudo route add -net 10.59.91.192 netmask 255.255.255.192 gw 10.200.0.1 dev wlp3s0

我已经看到人们需要在/ etc / network / interfaces中进行设置,但是我相信我的界面是由Network Manager管理的。这是我的/ etc / network / interfaces文件...

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

我确实有一些静态IP集,这些IP都没有显示在interfaces文件中,这使我认为Network Manager正在管理这些接口,因此接口文件可能不是进行这些更改的地方。

如果需要更多信息,请告诉我。感谢您提供的任何帮助。

2 个答案:

答案 0 :(得分:0)

我也不想修改/etc/network/interfaces。相反,我已经像这样使用nmcli

nmcli device modify ${device_name} \
    ipv4.routes "${destination_network} ${gateway}" \
    ipv4.route-metric 25

应用于该问题的网络详细信息,

nmcli device modify wlp3s0 ipv4.routes "10.59.91.192/26" ipv4.route-metric 25

进行这些更改后,您需要重新启动NetworkManager服务以应用它们:

sudo systemctl restart NetworkManager.service

答案 1 :(得分:0)

在Ubuntu 18.04或更高版本中,您应该使用Netplan。将YAML文件添加到/etc/netplan/,例如99-static-routes.yaml:

network:
  version: 2
  renderer: networkd
  ethernets: 
    wlps0:
      dhcp4: true
      routes:
      - to: 10.59.91.192/26
        via: 10.200.0.1
        metric: 5
 ## Add more routes as needed, e.g. 
 #    - to: 101.102.0.0/16
 #      via: 192.168.1.254
 #      metric: 5

Then apply the changes by running `netplan apply` as sudo