首页 > 解决方案 > 如何将持久静态路由添加到由 Network Manager 管理的 Ubuntu?

问题描述

我需要向我的 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 中设置这些,但是我相信我的接口是由网络管理器管理的。这是我的 /etc/network/interfaces 文件...

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

我确实有几个静态 IP 集,它们没有显示在接口文件中,这让我认为网络管理器正在管理这些接口,因此接口文件可能不是进行这些更改的地方。

如果需要更多信息,请告诉我。谢谢你提供的所有帮助。

标签: ubunturoutingroutesubuntu-16.04networkmanager

解决方案


在 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

推荐阅读