linux 查看绑定网卡命令,nmcli命令使用以及网卡绑定bond
一、nmcli命令
1.什么是nmcli
以前我配置网卡的时候都要打vim /etc/sysconfig/network-scripts/ifcfg-eth0这么一长串命令,有很多配置名字还记不住就需要去看模板,好不容易配置完了,还得去重启网卡。直到今天我知道了这个nmcli命令,才发现原来配置网卡可以这么简单,妈妈再也不用担心我不会配置网卡了。
2.nmcli的用法
命令语法:
nmcli[ OPTIONS ] OBJECT { COMMAND | help }
值得一提的是OBJECT和COMMAND可以用全程也可以用简称,最少可以只用一个字母,但我们一般用头三个字母,这样不容易搞错。
我们使用nmcli命令去配置网卡时如果忘记了语法命令是可以用TAB键补齐命令的。
OBJECT里我们平时用的最多的就是connection和device,这里就跟大家简单区分一下connection和device
connection是连接,偏重于逻辑设置
device叫网络接口,是物理设备
多个connection可以应用到同一个device,但同一时间只能启用其中一个connection。
这样的好处是针对一个网络接口,我们可以设置多个网络连接,比如静态IP和动态IP,再根据需要up相应的connection。
下面是一些nmcli的常用命令介绍
nmcli device show 查看所有网卡设备信息
show 后跟网卡名是查看某个网卡的详细信息
nmcli connection show 查看所有连接
同理 show 后跟上连接名可以查看连接的详细信息
不过connection show 后跟上 -a 参数是仅显示活动的连接
像图中home它的DEVICE选项为空,说明没有网卡绑定,所以并未生效。
nmcli device status
列出 NetworkManager 识别出的设备列表及他们的状态
nmcli general status
将 NetworkManager 的所有状态都打印出来
在centos7中默认的网卡名变为了ens..,我们可以使用nmcli来改成我们熟悉的样子(更改配置文件名):
nmcli connection add con-name config-eth0-1 ifname eth0 type ethernet
创建一个网卡连接配置文件,这里con-name后跟的是新建的配置文件名称,ifname后跟的是接口名称,type为ethernet,ipve默认为dhcp
命令完成后会在/etc/sysconfig/network-scripts/目录下产生一个名为ifcfg-config-eth0-1的配置文件
nmcli connection up config-eth0-1
nmcli connection down config-eth0-1
对创建好的配置文件我们可以用up,down来启用和禁用
nmcli connection delete config-eth0-1
删除连接(删除的连接并未被启用)
nmcli connection add con-name eth0-1 type ethernet ifname eth1 autoconnect yes ip4 10.1.252.60/24 gw4 10.1.0.254
我们也可以使用nmcli来创建一个静态IP网络连接配置
这里的autoconnect 为开机是否自启,yes为开机自启
我们启用eth0-1看看IP是否变化
nmcli connection modify eth0-1 +ipv4.address 2.2.2.2/24
我们也可以对连接文件进行修改
命令修改与配置文件对照表:
修改连接配置后我们要重新加载才能生效
nmcli connection reload
nmcli connection down eth0-1
nmcli connection up eth0-1
二、网卡绑定band
1.什么是bond
网卡bond是通过把多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡。在应用部署中是一种常用的技术。
2.bond的模式种类
常见的bond模式有七种:
Mode=0(balance-rr) 表示负载分担round-robin,和交换机的聚合强制不协商的方式配合。
Mode=1(active-backup) 表示主备模式,只有一块网卡是active,另外一块是备的standby,这时如果交换机配的是捆绑,将不能正常工作,因为交换机往两块网卡发包,有一半包是丢弃的。
Mode=2(balance-xor) 表示XOR Hash负载分担,和交换机的聚合强制不协商方式配合。(需要xmit_hash_policy)
Mode=3(broadcast) 表示所有包从所有interface发出,这个不均衡,只有冗余机制...和交换机的聚合强制不协商方式配合。
Mode=4(802.3ad) 表示支持802.3ad协议,和交换机的聚合LACP方式配合(需要xmit_hash_policy)
Mode=5(balance-tlb) 是根据每个slave的负载情况选择slave进行发送,接收时使用当前轮到的slave
Mode=6(balance-alb) 在5的tlb基础上增加了rlb。)
3.bond的创建方法
这里我们还是用nmcli来创建bond
我们以bond1模式为例
首先我们创建一个连接配置文件
nmcli connection add con-name bond0 type bond ifname bond0 mode active-backup
mode 后跟的bond模式
因为我们还没有在bond连接中绑定网卡所以显示为×××
nmcli connection add type bond-slave ifname eth2 master bond0
nmcli connection add type bond-slave ifname eth3 master bond0
我们添加两块网卡到bong0中
启用这两个连接
cat /proc/net/bonding/bond0
查看bond状态
我们来测试下bond
我们先查看下bond0的ip,然后再在另一个终端上ping
我们先down掉一个网卡
down掉eth1后依旧可以ping通
总结:
我们使用nmcli只需简单的几部就可以做好bond了,由此可见bond确实好用。
linux 查看绑定网卡命令,nmcli命令使用以及网卡绑定bond相关推荐
- linux查看日志的几种命令,Linux查看日志三种命令(转载)
第一种:查看实时变化的日志(比较吃内存) 最常用的: tail -f filename (默认最后10行,相当于增加参数 -n 10) Ctrl+c 是退出tail命令 其他情况: tail -n 2 ...
- linux查看php日志命令,linux查看日志的三种命令是什么,linux查看进程命令
linux查看日志的三种命令是什么Linux查看日志的三个命令是什么,linux查看日志有三个命令:1.查看实时更改日志,代码为[tail-f filename]:2.搜索关键字附近的日志代码为[ca ...
- linux查看jar包内容命令,【达内Java教程】用linux查看jar包内文件命令
深圳java培训(sz.java.tedu.cn)专家教你用linux查看jar包内文件命令 jar vtf fileName.jar 用法: jar {ctxui}[vfm0Me] [jar-fil ...
- linux查看ip等信息的命令
linux查看ip等信息的命令 : ifconfig dos查看ip等信息的命令:ipconfig
- Linux查看本机局域网IP命令
Linux查看本机局域网IP命令 . UBuntu 系统下 按Ctrl+Alt+T 唤出终端 在终端输入: ifconfig 命令 点击回车 就可以看到自己电脑在局域网的IP地址了 图中第二行 ine ...
- linux命令查看内存数据,Linux 查看内存条数据和大小命令
查看内存条数据和大小命令: sudo dmidecode | grep -A16 "Memory Device$" 需要root 权限.. [life@localhost mp3b ...
- Windows 和 Linux 查看和关闭端口常用命令
title: Windows 和 Linux 查看和关闭端口常用命令 date: 2022-03-11 09:35:48 tags: Linux Windows categories: 开发实践 co ...
- linux查看当前环境信息,Linux查看环境变量当前信息命令
Linux是一个多用户的操作系统.每个用户登录系统后,都会有一个专用的运行环境.通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义. 在Windows下,查看环境变量的命令是: ...
- linux查看内存的几个命令
linux查看内存的几个命令基于编解码视频芯片 free命令详解 top命令详解 cat /proc/cmdline命令详解 cat /proc/media-mem命令详解 free命令详解 参考[L ...
最新文章
- 电子技术基础三_电子技术基础
- MYSQL WHERE 当一个字段不为NULL的时候使用另一个字段判断
- python怎么写手机按钮_python与mel的button写法
- 记录一次react项目配置过程
- 最近在InfoQ上翻译的几篇文章
- 解决Navicat for MySQL 连接 Mysql 8.0.13出现1251- Client does not support authentication protocol 错误
- 【OpenCV实战】简洁易懂的车牌号识别Python+OpenCV实现“超详解”(含代码)
- 安卓虚拟键盘_干货分享:推荐几款性能不错的安卓模拟器
- 以“万物零售”为主题第十届中国网上零售年会
- uniapp打包app 踩坑记录
- 数据分析-思维分析逻辑day02
- python根据日期生成动态密码
- linux安装 cuda、cdunn、numpy、scipy、theano、pylearn2、scikit-neuralnetwork
- jquery实现HTML复选框变单选框
- 编译原理-语法制导翻译、后缀表达式、三元、四元
- 软件设计之——“高内聚低耦合”
- c语言算数运算,C语言:算数运算符
- 亿万级赛道谁主沉浮,国潮品牌直播电商如何破局增长?
- PLC实验系列:十字路口交通灯的设计(运用比较指令)
- 大连理工大学网络综合实验三:交换机端口配置与生成树协议配置
热门文章
- vscode 插件推荐 →_→ escook-translate和escook-theme
- 思睿嘉得数据泄露防护系统DLP如何卸载?(无需卸载口令的方法)
- OSChina 周五乱弹 ——出轨率最高的竟是IT男
- 关于TPS5430电压输出不正常 的原因
- java整除_java编程判断一个整数能否被9整除
- 轻而易举的攻过tomcat
- Windows Phone 7 开发系列教程之 初识Windows Phone 7,环境配置
- html5全景代码,HTML5 Canvas实现360度全景图的示例代码
- SKYPE算什么!android也有视频通讯应用!
- 利用 Javascript 通过几个循环操作打印一个棱形