在CentOS 8中如何使用nmcli命令添加网桥
时间:2019-11-20 08:53:06 来源:igfitidea点击:
问题
如何在CentoS 8服务器上添加和创建Linux网桥?
如何配置CentOS 8并使用nmcli命令添加网桥(br0)?
如何在CentOS Linux 8服务器上为KVM(基于内核的虚拟机)创建Linux网桥?
解决方案
网桥是将两个本地网络连接到一个网络中的设备。
它在数据链路层(OSI模型的第2层)工作。
经常与虚拟化软件一起使用的网桥。
例如,诸如KVM,LXD或Docker用户之类的流行软件可以配置网桥,而不是基于NAT的网络。
nmcli命令行工具可以创建持久的网桥配置,而无需编辑任何文件。
本页面显示了如何使用CentOS 8 Enterprise Linux上的网络管理器命令行工具。
CentOS 8使用nmcli添加网桥
使用nmcli创建网桥接口的步骤如下:
- 查找有关当前CentOS 8网络连接的信息:
sudo nmcli con show
- 然后,添加一个新网桥br0:
sudo nmcli con add type bridge ifname br0
- 为br0创建一个从属接口:
sudo nmcli con add type bridge-slave ifname eno1 master br0
- 打开br0接口以通过DHCP获取IP:
sudo nmcli con up br0
- 或者像下面这个进行静态IP设置
在CentOS 8上创建Linux网桥
查看CentOS Linux 8接口和IP地址的信息:
$ nmcli con show $ nmcli connection show --active
创建网桥br0
$ sudo nmcli con add ifname br0 type bridge con-name br0 $ sudo nmcli con add type bridge-slave ifname eno1 master br0 $ nmcli connection show
为网桥禁用或启用STP
生成树协议(STP)的主要目的是确保当网络中有冗余路径时,您不会创建环路。
我们可以为br0禁用或启用STP:
$ sudo nmcli con modify br0 bridge.stp no $ sudo nmcli con modify br0 bridge.stp yes $ nmcli con show $ nmcli -f bridge con show br0
输出示例:
bridge.mac-address: -- bridge.stp: no bridge.priority: 32768 bridge.forward-delay: 15 bridge.hello-time: 2 bridge.max-age: 20 bridge.ageing-time: 300 bridge.group-forward-mask: 0 bridge.multicast-snooping: yes bridge.vlan-filtering: no bridge.vlan-default-pvid: 1 bridge.vlans: --
为网桥接口设置静态或基于DHCP的IP地址
br0接口可以配置静态或者动态IP地址(如果有DHCP服务器)。
我们通常会设置一个静态IP地址。
br0 IPv4设置
$ sudo nmcli connection modify br0 ipv4.addresses '192.168.2.19/24' $ sudo nmcli connection modify br0 ipv4.gateway '192.168.2.254' $ sudo nmcli connection modify br0 ipv4.dns '192.168.2.254' $ sudo nmcli connection modify br0 ipv4.dns-search 'sweet.home' $ sudo nmcli connection modify br0 ipv4.method manual
br0 IPv6设置
$ sudo nmcli connection modify bridge0 ipv6.addresses 'Your-Static-IPv6-Address' $ sudo nmcli connection modify br0 ipv6.gateway 'Your-Static-IPv6-Gateway-Address' $ sudo nmcli connection modify br0 ipv6.dns 'Your-Static-IPv6-DNS' $ sudo nmcli connection modify br0 ipv6.dns-search 'sweet.home' $ sudo nmcli connection modify br0 ipv6.method manual
在CentOS 8上启用br0网桥接口
启用br0:
$ sudo nmcli con up br0 $ nmcli con show
验证网桥设置
使用ip命令查看br0的设置:
$ ip a s $ ip a s br0
您可以删除eno1,因为br0本身具有静态IP地址,eno1将处于转发状态:
$ sudo nmcli connection delete eno1
使用ip命令查看配置:
$ nmcli connection show $ ip a show br0 $ nmcli device $ ip a show eno1 $ ip r $ ping -c 4 www.theitroad.local $ ping -c 4 192.168.2.25
查看以太网设备和桥接设备的链接状态:
$ ip link show master br0 $ bridge link show $ bridge link show dev eno1