网络管理器中断手动路由


9

我在VirtualBox中以来宾身份运行了Ubuntu 13.10,Saucy Salamander x64(以Windows 7为主机)。

我写这篇文章/etc/network/interfaces是因为我需要添加大量永久性的手动静态路由:

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

auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet dhcp
    up ip -force -b /etc/network/eth1-routes

eth1-routes 包含以下几行形式:

route add 10.0.0.0/8 via 172.x.x.x dev eth1

172.x.x.xVBox NAT给我的网关在哪里?

通过运行netstat -nr,看来我的所有手动路由都已成功添加,包括通过到达两个DNS服务器的路由172.x.x.x

但是,网络管理员说这两个设备都是“不受管理的”。如果设置了/etc/NetworkManager/NetworkManager.conf managed=true,网络管理器将再次工作,但路由会丢失。因此,我目前的折衷办法是设置managed=false并注释掉中的eth0/etc/network/interfaces

有没有办法管理设备并仍然像上面那样进行手动路由?

Answers:


4

网络管理器无法识别您在中编写的语句/etc/network/interfaces

因此,您可以在中将脚本添加eth1-routes为Network Manager的调度程序脚本/etc/network/if-up.d/。每当接口启动时,它将运行。也许您必须在脚本中编写“ if子句”以仅在出现路由时添加路由eth1。像这样:

if [ "$IFACE" == "eth1" ]; then
  route add ...
  route add ...
fi

5

网络管理器管理自己的静态路由-打开网络管理器,然后选择“有线连接1”。选择编辑。选择“ IPv4”标签。此页面底部是“路线”的按钮。那是您添加它们的地方。完成后,NM将在其/ etc / NetworkManager / system-connections /目录中以root权限写入文件,该目录称为“有线连接1”

示例如下

ls -l /etc/NetworkManager/system-connections/
total 4.0K
-rw------- 1 root root 216 Aug 26 10:38 Wired connection 1

sudo cat /etc/NetworkManager/system-connections/Wired\ connection\ 1

[802-3-ethernet]
mac-address=A:Real:Mac:Add:re:ss

[connection]
id=Wired connection 1
uuid=df4491fc-0981-4071-82ae-04c7b2d6d9fc
type=802-3-ethernet

[ipv6]
method=auto

[ipv4]
method=auto
route1=10.2.2.0/24,10.1.1.68,1

其中10.2.2.0是目标网络,而10.1.1.68是网关。


1

如果要向Ubuntu添加路由,该路由可保持重启状态,并且不使用默认接口作为网关,则可能需要向特定接口的NetworkManager配置文件添加路由语句。

通过将route语句添加到配置文件中(假设使用IPv4),将路由添加到/ etc / NetworkManager / system-connections /“连接名称”配置文件中。路线分为四个部分:“第一个是目标IPv4网络或地址(网络字节顺序),第二个是目标网络或地址前缀(1-32),第三个是下一跳(网络字节顺序)(如有),第四个是路由指标”

[ipv4]
method=auto
route1=172.16.0.0/16,192.168.3.1,1

这等效于使用以下路由语句设置路由:

route add -net 172.16.0.0 netmask 255.255.0.0 gw 192.168.3.1

路由键名在NetmorkManager开发人员文档的表12中定义。请查看以下URL以获取更多信息:https : //developer.gnome.org/NetworkManager/0.9/ref-settings.html

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.