更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 鸿蒙开发Linux教程 > 在Debian 11/Debian 10上配置网络NIC Teaming

在Debian 11/Debian 10上配置网络NIC Teaming

更新时间:2023-02-14 10:33:59浏览次数:124+次

本文介绍如何在Debian 11/Debian 10系统上配置网络NIC Teaming的方法。

在Debian 11/Debian 10上安装Teamd

为了能够配置NIC Teaming,我们需要在Debian 11/Debian 10上安装Teaming守护程序:

sudo apt install teamd

确保已安装Network Manager:

sudo apt-get install network-manager

启动并启用网络管理器:

sudo systemctl start NetworkManager.service 

sudo systemctl enable NetworkManager.service

在Debian 11/Debian 10上配置Network NIC Teaming

本指南演示了在Debian 11/Debian 10上配置Network NIC Teaming的两种方法,即使用Network Manager NMCLI及手动方法。

方法1、使用NMCLI配置网络NIC组

使用Network Manager的实用工具,我们可以轻松配置Network NIC Teaming。首先识别网络设备,如下所示:

nmcli device status

输出:

\

从输出中,我们将使用enp1s0和enp9s0创建一个网络团队。获取有关设备的详细信息:

nmcli connection show

样本输出:

\

在继续之前,使用提供的UUID断开两个设备:

sudo nmcli connection delete 40a3c011-f9c1-4dfc-b73b-3d80c8e291ac

sudo nmcli connection delete 4c1a8752-53c3-4f0c-933c-95e52b023835

现在验证设备是否已断开:

\

完成上述配置后,我们可以继续创建一个网络团队(team1),其中包含运行程序(活动备份),如下所示:

sudo nmcli connection add type team con-name team1 ifname team1 config '{"runner": {"name": "activebackup"}}'

创建后,使用以下命令查看团队信息:

$ nmcli connection show team1

connection.id:team1

connection.uuid:71581079-6012-420b-84e2-1ddcb878d88b

connection.stable-id:--

connection.type:team

connection.interface-name:team1

connection.autoconnect:yes

connection.autoconnect-priority:0

connection.autoconnect-retries:-1 (default)

connection.multi-connect:0 (default)

connection.auth-retries:-1

connection.timestamp:0

connection.read-only:no

connection.permissions:--

connection.zone:--

connection.master:--

connection.slave-type:--

connection.autoconnect-slaves:-1 (default)

connection.secondaries:--

继续并配置团队的IP地址、DNS和自动连接,如下所示:

sudo nmcli con mod team1 ipv4.addresses 192.168.205.50/24

sudo nmcli con mod team1 ipv4.gateway 192.168.205.1

sudo nmcli con mod team1 ipv4.dns 8.8.8.8

sudo nmcli con mod team1 +ipv4.dns 8.8.4.4

sudo nmcli con mod team1 ipv4.method manual

sudo nmcli con mod team1 connection.autoconnect yes

然后将两个设备enp1s0和enp9s0作为从属设备添加到上面创建的团队中:

sudo nmcli con add type team-slave con-name team1-slave0 ifname enp1s0 master team1

sudo nmcli con add type team-slave con-name team1-slave1 ifname enp9s0 master team1

验证是否已添加从属设备:

$ nmcli connection show

\

最后,通过重新启动团队来应用更改:

sudo nmcli connection down team1和sudo nmcliconnection up team1

查看团队的状态:

ip addr show  dev  team1

输出:

\

此外,使用teamdctl实用程序,您可以查看团队的状态:

sudo teamdctl team1 state

输出:

\

从上面的输出中,我们可以确定正在使用的运行程序(活动备份)、团队中的从属服务器以及运行程序中的活动端口(enp1s0)。

1、测试Team功能

现在,我们可以测试活动备份策略是否按预期工作。为此,请断开活动接口,如下所示:

sudo nmcli device disconnect enp1s0

现在检查以查看活动从属设备:

sudo teamdctl team1 state

此输出提升了团队的功能,活动节点已切换到另一个可用接口。

2、删除Team

要删除网络团队,请首先断开该团队:

sudo nmcli connection down team1

现在删除附加的从属设备:

sudo nmcli connection delete team1-slave0 team1-slave1

继续并删除团队:

sudo nmcli connection delete team1

验证团队是否已删除:

$ nmcli connection show 

Wired connection 1  560ba0ac-36ac-477d-877a-84cfe96a7a42  ethernet  enp10s0

方法2、手动配置网络NIC Teaming

还有一种简化的方法可以通过编辑/etc/network/interfaces上的网络脚本来创建网络连接。

首先,确保bonding module安装在Debian 11/Debian 10上:

sudo apt-get install ifenslave

重新加载模块:

sudo modprobe bonding

将配置加载到内核中,以便系统在引导时自动选择这些配置:

echo 'bonding' | sudo tee -a sudo /etc/modules

现在编辑/etc/network/interfaces如下:

sudo vim /etc/network/interfaces

在文件中,适当地添加Bond名称和从属接口:

# This file describes the network interfaces available on your system

# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface

auto lo

iface lo inet loopback

# Teaming physical interfaces

auto enp1s0

iface enp1s0 inet manual

auto enp9s0

iface enp9s0 inet manual

##The Bond Configuration##

auto bond0

iface bond0 inet static

address 192.168.205.150

netmask 255.255.255.0

gateway 192.168.205.1

bond-mode 1

bond-primary enp9s0

bond-slaves enp9s0 enp1s0

bond-miimon 100

bond-downdelay 400

bond-updelay 800

保存上面的文件并激活网络Bond:

sudo ifdown enp1s0 enp9s0

sudo ifup bond0

网络连接后,检查其状态:

sudo ifconfig

样本输出:

\

您还可以获得以下详细的Bond信息:

sudo cat /proc/net/bonding/bond0

样本输出:

\

至此,我们已经成功地在Debian 11/Debian 10系统上配置了网络NIC Teaming。