今天在公司测试Linux bridge搭建,为了使内部docker容器的网络能够不经过2层封装转发对外公布,顾试用一下bridge功能,结果碰到报错:"Bringing up interface eno16777736: Error: Connection activation failed: Master connection not found or invalid"
具体错误是:
Mar 16 10:56:04 cloud01 systemd[1]: Starting LSB: Bring up/down networking...
Mar 16 10:56:05 cloud01 network[876]: Bringing up loopback interface: Could not load file '/etc/sysconfig/network-scripts/ifcfg-lo'
Mar 16 10:56:05 cloud01 network[876]: Could not load file '/etc/sysconfig/network-scripts/ifcfg-lo'
Mar 16 10:56:06 cloud01 network[876]: Could not load file '/etc/sysconfig/network-scripts/ifcfg-lo'
Mar 16 10:56:06 cloud01 network[876]: Could not load file '/etc/sysconfig/network-scripts/ifcfg-lo'
Mar 16 10:56:06 cloud01 network[876]: [ OK ]
Mar 16 10:56:06 cloud01 network[876]: Bringing up interface eno16777736: Error: Connection activation failed: Master connection not found or invalid
Mar 16 10:56:06 cloud01 network[876]: [FAILED]
Mar 16 10:56:06 cloud01 network[876]: Bringing up interface br0: Could not load file '/etc/sysconfig/network-scripts/ifcfg-br0'
Mar 16 10:56:06 cloud01 network[876]: Could not load file '/etc/sysconfig/network-scripts/ifcfg-br0'
Mar 16 10:56:14 cloud01 network[876]: Determining IP information for br0... failed; no link present. Check cable?
Mar 16 10:56:14 cloud01 network[876]: [FAILED]
Mar 16 10:56:14 cloud01 systemd[1]: network.service: control process exited, code=exited status=1
Mar 16 10:56:14 cloud01 systemd[1]: Failed to start LSB: Bring up/down networking.
Mar 16 10:56:14 cloud01 systemd[1]: Unit network.service entered failed state.
经过一番google,得出答案是得禁用NetworkManager。
执行如下命令:
systemctl stop NetworkManager
systemctl disable NetworkManager
你可以选择重启,或者仅单单重启network服务即可修复。
启用后效果:
# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000c295f4d67 yes eno16777736
参考资料:
https://www.centos.org/forums/viewtopic.php?f=50&t=51000
本文到此结束,谢谢!