在 CentOS 7 上利用 nmcli 设置网络穚接器

参考: 上游文档 memomemo 网志(日文)

在 CentOS 6,假若你想设置一个网络穚接器,推荐的做法是停用 NetworkManager 并以手动方式进行。在 CentOS 7,这个选择不大可行,因为 NetworkManager 与操作系统的关系更紧密。然而,在 CentOS 7 你可以利用 NetworkManager 来创建及设置网络穚接器。本篇文章会示范如何利用 NetworkManager 的 nmcli 指令达至这个目的。

(1) 创建一个名为 bridge-br0 的穚接器。

[root@host]# nmcli con add type bridge ifname br0

(2) 停用 spanning tree 协议(STP)

[root@host]# nmcli con modify bridge-br0 bridge.stp no

(3) 设置 IP 地址等(请修改参数)

[root@host]# nmcli con modify bridge-br0 ipv4.method manual ipv4.address "192.168.199.100/24" ipv4.gateway "192.168.199.254"  ipv4.dns 8.8.8.8 ipv4.dns-search example.com

请注意,CentOS 7.0 的语法是 ipv4.addresses 192.168.199.100/24 192.168.199.254。这语法在其后的次要版本已更改。

(4) 把实体界面 enp0s25 连接到刚创建的穚接器。

[root@host]# nmcli con add type bridge-slave ifname enp0s25 master bridge-br0

(5) 删除实体界面并立刻重新开机,因为连接将会中断

[root@host]# nmcli con del enp0s25; reboot

如果你的主机采用 dhcp 而非 固定 IP,请略过 (3) 及 (5)。

Translation of revision 6

zh/TipsAndTricks/BridgeAndNmcli (last edited 2018-11-07 20:56:00 by TimothyLee)