首页 > 系统相关 >【Linux】使用NetworkManager工具nmcli命令进行高级网络设置bond0-6

【Linux】使用NetworkManager工具nmcli命令进行高级网络设置bond0-6

时间:2024-04-01 22:22:26浏览次数:33  
标签:bond0 nmcli add connection ipv4 Linux type bond

NetworkManager 工具
nmcli(NetworkManager的命令行界面)命令行实用程序,用于控制NetworkManager和报告网络状态。它可以用作nm-applet或其他图形客户端的替代品。

nmcli用于创建、显示、编辑、删除、激活和停用网络连接,以及控制和显示网络设备状态。
对于服务器,虚拟机,终端,nmcli可以直接控制NetworkManager,不需要GUI,包括创建,编辑,启动和停止网络连接,查看网络状态。

对于脚本,nmcli支持一种更适合脚本处理的简洁输出格式。它是统一配置网络工具,而不是手动管理网络连接。

nmcli命令 的基本格式如下:
nmcli [选项] 对象 { 命令 | 帮助 }
其中对象可以是以下选项之一:general,networking,radio,connection,device,agent,和monitor。您可以在命令中使用这些选项的任何前缀。例如,nmclicon help,nmcli c help,nmcli connection help产生相同的输出。

注:以下配置文件/命令中的“enp1”“enp2”为测试环境网口名称,实际使用名称可能不同,需要通过ifconfig命令或者nmcli device命令查找网卡接口实际名称并替换。

bond简介
管理员将多个网络接口绑定到一个单独的、绑定的通道中。通道绑定可以使两个或多个网络接口同时作为一个网络接口使用,在增加带宽的同时提供冗余。

bond使用场景建议
虽然bond支持7种模式,但是最常用的还是循环策略(bond0)、主备模式(bond1);
如果有网络工程师配合,建议选择聚合模式(bond4);
如果对可靠性要求特别高,建议选广播策略(bond3)。

交换机配置要求
总的来讲,根据bonding模式的不同,上行交换机需要进行如下配置
Bonding 模式 上行交换机配置
0 balance-rr 需要启用聚合口(非lacp协商)
1 active-backup 不需要交换机端的设置
2 balance-xor 需要启用聚合口(非lacp协商)
3 broadcast 需要启用聚合口(非lacp协商)
4 802.3ad 需要启用lacp协商的聚合口,建议主动模式
5 balance-tlb 不需要交换机端的设置
6 balance-alb 不需要交换机端的设置

部署注意事项
配置前需要检查是否已安装 Bonding 内核模块

系统中默认载入 bonding 模块。可作为 root 运行以下命令载入该模块:

modprobe bonding
lsmod | grep bonding
echo "bonding" >>/etc/modules

轮询策略 [bond0]
此模式需要交换机配置为链路聚合(非ldap)
添加bond

nmcli connection add con-name bond0 type bond ifname bond0 mode balance-rr

添加slave1

nmcli connection add type bond-slave ifname enp1 master bond0

添加slave2

nmcli connection add type bond-slave ifname enp2 master bond0

给bond0添加ip

nmcli connection modify bond0 ipv4.method manual ipv4.addresses 10.10.10.10/24 ipv4.gateway 10.10.10.1 ipv4.dns 8.8.8.8 ipv6.method ignore

启动bond0

nmcli connection up bond0

主备模式 [bond1]
添加bond

nmcli connection add con-name bond1 type bond ifname bond1 mode active-backup

添加slave1

nmcli connection add type bond-slave ifname enp1 master bond1

添加slave2

nmcli connection add type bond-slave ifname enp3 master bond1

给bond1添加ip

nmcli connection modify bond1 ipv4.method manual ipv4.addresses 10.10.10.10/24 ipv4.gateway 10.10.10.1 ipv4.dns 8.8.8.8 ipv6.method ignore

启动bond1

nmcli connection up bond1

平衡策略 [bond2]
此模式需要交换机配置为链路聚合(非ldap)
添加bond

nmcli connection add con-name bond2 type bond ifname bond2 mode balance-xor

添加slave1

nmcli connection add type bond-slave ifname enp1 master bond2

添加slave2

nmcli connection add type bond-slave ifname enp3 master bond2

给bond1添加ip

nmcli connection modify bond2 ipv4.method manual ipv4.addresses 10.10.10.10/24 ipv4.gateway 10.10.10.1 ipv4.dns 8.8.8.8 ipv6.method ignore

启动bond2

nmcli connection up bond2

广播策略[bond3]
此模式需要交换机配置为链路聚合(非ldap)
添加bond

nmcli connection add con-name bond3 type bond ifname bond3 mode broadcast

添加slave1

nmcli connection add type bond-slave ifname enp1 master bond3

添加slave2

nmcli connection add type bond-slave ifname enp2 master bond3

给bond3添加ip

nmcli connection modify bond3 ipv4.method manual ipv4.addresses 10.10.10.10/24 ipv4.gateway 10.10.10.1 ipv4.dns 8.8.8.8 ipv6.method ignore

启动bond3

nmcli connection up bond3

动态链接聚合[bond4]
此模式需要交换机配置为链路聚合(ldap协议)
添加bond

nmcli connection add con-name bond4 type bond ifname bond4 mode 802.3ad

添加slave1

nmcli connection add type bond-slave ifname enp1 master bond4

添加slave2

nmcli connection add type bond-slave ifname enp2 master bond4

给bond4添加ip

nmcli connection modify bond4 ipv4.method manual ipv4.addresses 10.10.10.10/24 ipv4.gateway 10.10.10.1 ipv4.dns 8.8.8.8 ipv6.method ignore

启动bond4

nmcli connection up bond4

适配器传输负载均衡[bond5]
此模式无需交换机配置为链路聚合
添加bond

nmcli connection add con-name bond5 type bond ifname bond5 mode balance-tlb

添加slave1

nmcli connection add type bond-slave ifname enp1 master bond5

添加slave2

nmcli connection add type bond-slave ifname enp2 master bond5

给bond5添加ip

nmcli connection modify bond5 ipv4.method manual ipv4.addresses 10.10.10.10/24 ipv4.gateway 10.10.10.1 ipv4.dns 8.8.8.8 ipv6.method ignore

启动bond5

nmcli connection up bond5

适配器适应性负载均衡[bond6]
此模式无需交换机配置为链路聚合
添加bond

nmcli connection add con-name bond6 type bond ifname bond6 mode balance-alb

添加slave1

nmcli connection add type bond-slave ifname enp1 master bond6

添加slave2

nmcli connection add type bond-slave ifname enp2 master bond6

给bond6添加ip

nmcli connection modify bond6 ipv4.method manual ipv4.addresses 10.10.10.10/24 ipv4.gateway 10.10.10.1 ipv4.dns 8.8.8.8 ipv6.method ignore

启动bond6

nmcli connection up bond6
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/qq_51228157/article/details/127744880

标签:bond0,nmcli,add,connection,ipv4,Linux,type,bond
From: https://www.cnblogs.com/cheyunhua/p/18109506

相关文章

  • Linux 中打包和解包操作
    在Linux中,常见的压缩包格式有:.tar、.tar.xz、.tar.gz(或.tgz)、.tar.bz2。这里要注意:.tar文件是一种仅打包不压缩的文件格式。而.tar.xz、.tar.gz(或.tgz)、.tar.bz2文件才是对.tar文件的压缩。所以.tar文件本身并不是压缩文件,而是一种归档文件格式。 文件打包:tar-cvf1.tar ......
  • Linux中JMeter的使用
    Linux中JMeter的使用Linux版本JMeter安装#1、下载、安装JMeter如果有安装包直接上传即可wget-chttps://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.4.1.tgz#解压tar-zxvfapache-jmeter-5.4.1.tgz-C/usr/local/sjdwz_testcd/usr/local/sjdwz_test/a......
  • Linux中JMeter的使用
    Linux中JMeter的使用Linux版本JMeter安装#1、下载、安装JMeter如果有安装包直接上传即可wget-chttps://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.4.1.tgz#解压tar-zxvfapache-jmeter-5.4.1.tgz-C/usr/local/sjdwz_testcd/usr/local/sjdwz_......
  • Linux命令+VIM编辑
    ls命令ls:显示当前文件夹下的所有文件ls -l:长格式显示ls -a:显示隐藏文件 包括  . ..ls -A:显示隐藏文件 不包括 . ..ls -d:只显示当前目录的属性ls -R:递归显示所有ls  -t:以时间顺序显示ls -r:倒序显示(图中配合时间显示)du命......
  • Linux——ssh登录很慢解决方法
    1、背景在同一机房中,有多台安装了CentOS7操作系统的服务器,它们的配置除了IP地址不同外基本相同。这些服务器的资源利用率都不高,但在使用SSH连接时,发现有几台服务器连接速度较慢,可能需要等待30-60秒才能提示输入密码,但一旦连接成功后,速度就恢复正常。2、SSH登陆慢原因这种......
  • 【Linux 10】环境变量
    文章目录......
  • Linux 安装 Redis (Docker)
    Linux安装Redisdockerpullredis由于容器内目录下没有redis.conf,导致/mydata/redis/conf/redis.conf认为是目录所以先创建配置文件mkdir-p/mydata/redis/conftouch/mydata/redis/conf/redis.confmkdir-p/mydata/redis/conf:创建一个目录/mydata/redis/conf,-p如......
  • Linux 安装 Mysql(Docker)
    Linux安装Mysql以下操作在root用户下否则加上sudodockerpullmysql:5.7注意容器名字如果有-会错误dockerrun-p3306:3306--namemysql_gulishangcheng\-v/mydata/mysql/log:/var/log/mysql\-v/mydata/mysql/data:/var/lib/mysql\-v/mydata/mysql/con......
  • Linux 安装 Docker
    Linux安装Docker官方文档查看系统信息命令cat/etc/os-release第一步安装必要的一些系统工具sudoyuminstall-yyum-utilsdevice-mapper-persistent-datalvm2sudo:以超级用户权限执行命令,需要输入管理员密码。yum:是一个包管理工具,用于在CentOS和RHEL等Linu......
  • Linux中shell脚本的初步认识之变量相关操作
    4月1日shell脚本一shell基本语法1变量1)系统变量:不要用户定义的就可以直接使用的变量常用的系统变量如下:$HOME$PWD$SHELL$USERecho$HOMEecho$PWDecho$SHELLecho$USER#echo查看系统变量值2)局部变量:由用户定义的变量,仅在当前shell或shell脚本中有效va......