配置网络绑定

使用 nmcli

  • 创建名为 mybond0 的绑定,使用示例如下:

    # nmcli con add type bond con-name mybond0 ifname mybond0 mode active-backup
    
  • 添加从属接口,使用示例如下:

    # nmcli con add type bond-slave ifname enp3s0 master mybond0
    

    要添加其他从属接口,重复上一个命令,并在命令中使用新的接口,使用示例如下:

    # nmcli con add type bond-slave ifname enp4s0 master mybond0
    Connection 'bond-slave-enp4s0' (05e56afc-b953-41a9-b3f9-0791eb49f7d3) successfully added.
    
  • 要启动绑定,则必须首先启动从属接口,使用示例如下:

    # nmcli con up bond-slave-enp3s0
    Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/14)
    
    # nmcli con up bond-slave-enp4s0
    Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/15)
    

    现在可以启动绑定,使用示例如下:

    # nmcli con up bond-mybond0
    Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/16)
    

使用命令行

检查是否已安装 Bonding 内核模块

在系统中默认已加载相应模块。在 root 权限下,要载入绑定模块,可使用如下命令:

# modprobe --first-time bonding

显示该模块的信息,可使用如下命令:

# modinfo bonding

更多命令请使用 modprobe --help 查看。

创建频道绑定接口

要创建绑定接口,可通过在 /etc/sysconfig/network-scripts/ 目录中创建名为 ifcfg-bondN 的文件(使用接口号码替换 N,比如 0)。

根据要绑定接口类型的配置文件来编写相应的内容,比如网络接口。接口配置文件示例如下:

DEVICE=bond0
NAME=bond0
TYPE=Bond
BONDING_MASTER=yes
IPADDR=192.168.1.1
PREFIX=24
ONBOOT=yes
BOOTPROTO=none
BONDING_OPTS="bonding parameters separated by spaces"

创建从属接口

创建频道绑定接口后,必须在从属接口的配置文件中添加 MASTER 和 SLAVE 指令。

例如将两个网络接口 enp3s0 和 enp4s0 以频道方式绑定,其配置文件示例分别如下:

TYPE=Ethernet
NAME=bond-slave-enp3s0
UUID=3b7601d1-b373-4fdf-a996-9d267d1cac40
DEVICE=enp3s0
ONBOOT=yes
MASTER=bond0
SLAVE=yes
TYPE=Ethernet
NAME=bond-slave-enp4s0
UUID=00f0482c-824f-478f-9479-abf947f01c4a
DEVICE=enp4s0
ONBOOT=yes
MASTER=bond0
SLAVE=yes

激活频道绑定

要激活绑定,则需要启动所有从属接口。请在 root 权限下,运行以下命令:

说明:

对于已经处于“up”状态的接口,请首先使用“ifdown enp3s0 ”命令修改状态为down,其中 enp3s0 为实际网卡名称。

完成后,启动所有从属接口以便启动绑定(不将其设定为 “down”)。

要让 NetworkManager 感知到系统所做的修改,在每次修改后,请在 root 权限下,运行以下命令:

# nmcli con load /etc/sysconfig/network-scripts/ifcfg-device

查看绑定接口的状态,请运行以下命令:

# ip link show

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:aa:ad:4a brd ff:ff:ff:ff:ff:ff
3: enp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:aa:da:e2 brd ff:ff:ff:ff:ff:ff
4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    link/ether 86:a1:10:fb:ef:07 brd ff:ff:ff:ff:ff:ff
5: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr0 state DOWN mode DEFAULT group default qlen 1000
    link/ether 52:54:00:29:35:4c brd ff:ff:ff:ff:ff:ff

创建多个绑定

系统会为每个绑定创建一个频道绑定接口,包括 BONDING_OPTS 指令。使用这个配置方法可让多个绑定设备使用不同的配置。请按照以下操作创建多个频道绑定接口:

  • 创建多个 ifcfg-bondN 文件,文件中包含 BONDING_OPTS 指令,让网络脚本根据需要创建绑定接口。
  • 创建或编辑要绑定的现有接口配置文件,添加 SLAVE 指令。
  • 使用 MASTER 指令工具在频道绑定接口中分配要绑定的接口,即从属接口。

以下是频道绑定接口配置文件示例:

DEVICE=bondN
NAME=bondN
TYPE=Bond
BONDING_MASTER=yes
IPADDR=192.168.1.1
PREFIX=24
ONBOOT=yes
BOOTPROTO=none
BONDING_OPTS="bonding parameters separated by spaces"

在这个示例中,使用绑定接口的号码替换 N。例如要创建两个接口,则需要使用正确的 IP 地址创建两个配置文件 ifcfg-bond0 和 ifcfg-bond1。

results matching ""

    No results matching ""