几个月来,我一直在运行 12.04 无头家庭服务器,并通过 eth0 连接网桥。我一直在使用这个/etc/network/interfaces
文件:
自动档 iface lo inet 环回 自动 br0 iface br0 inet 静态 地址 192.168.8.1 网络掩码 255.255.255.0 网络 192.168.8.0 广播 192.168.8.255 网关 192.168.8.2 dns 名称服务器 192.168.8.2 dns-搜索 cluster.toy 预先将 ip link 设置 eth0 关闭 预先 brctl addbr br0 预先 brctl addif br0 eth0 预先设置 ip 链路 eth0 关闭后 IP 链路设置 eth0 关闭 关闭后 IP 链路设置 br0 关闭 停机后 brctl delif br0 eth0 后关闭 brctl delbr br0
然而,在出现奇怪的网络错误后,我查看了我的日志,发现 NetworkManager 反复尝试启动 eth0,而它绝对不应该这样做(eth0 是 br0 的从属,而 br0 是静态配置的)。
我的理解是,由于我已使用以下设置设置了 NetworkManager.conf:
[如果上载] 管理=false
它应该忽略/etc/network/interfaces
文件中提到的任何接口。所以我有一些问题:
- 是我遗漏了什么,还是 NetworkManager 中存在一个错误,导致它不能
/etc/network/interfaces
正确解析桥接节而不知道要忽略它们? - 我现在是否需要输入某种虚拟语句
/etc/network/interfaces
来诱使网络管理员不去管它? - 或者说,我可以
apt-get remove network-manager
不承担任何负面影响吗?
答案1
NetworkManager 尝试管理 eth0,因为 eth0 未在 /etc/network/interfaces 中配置。
为了使 NetworkManager 不触碰 eth0,请将以下节添加到 /etc/network/interfaces。
iface eth0 inet manual
如果您不使用 NetworkManager,那么您可以安全地删除网络管理器。
顺便说一句,在 /e/n/i 中配置网桥还有一种更简单的方法。使用 bridge_* 选项,如 bodhi.zazen 的回答中所示。
答案2
NetworkManager 不处理网桥。这是 NetworkManager 长期以来的一个缺点。如果您想要网桥,则需要禁用 NetworkManager 并使用 ifup,在 中配置/etc/network/interfaces
。
例子:
auto br0
iface br0 inet static
address 192.168.0.10
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
bridge_ports eth0
bridge_stp off
bridge_maxwait 5