nmcli 命令的基本使用
nmcli命令
地址配置工具:nmcli
nmcli device 查看所有网卡的信息
nmcli device status 和numcli device 相同
nmcli device show 网卡名 查看某个网卡的信息
nmcli connecttion 显示所有网卡的配置连接配置,就是/etc/sysconfig/network-scripts/下有没有网卡的配置文件,没有的话不显示,即使ifconfig命令有该网卡的信息)
加一个连接配置:nmcli connection add type ethernet(l类型可以变) 连接配置名(随意起) ifname eth1
回车之后就可以用nmcli connection 显示连接配置名了,同时在/etc/sysconfig/network-scripts/下有一个新文件ifcfg-连接配置名
nmcli connection show

nmcli connection show 链接名 查看这一套配置的相关信息


nmcli connection reload 重新加载配置文件(如果新增加了配置文件就可以用这个命名重新加载配置文件使其生效)
nmcli 修改ip地址等属性
nmcli connection modify INFACE ipv4.method manual ipv4.addresses 172.17.0.1/16 ipv4.gateway 172.18.0.1 ipv4.dns 114.114.114.114
modify后面跟的是连接配置,手动配地址,ip地址,网关,dns地址。
nmcli 命令生效
nmcli con down 连接配置名
nmcli con up 连接配置名
设备即网络接口,连接是对网络接口的配置。一个网络接口可有多个连接配置,但同时只有一个连接配置生效(针对一个接口可以有多套配置文件,但是在同一时间只能有一套配置文件生效)


上图显示针对接口ens33有两套配置文件

显示所有连接配置信息,发现接口ens33的两套配置信息只有一套生效了

而将未生效的连接配置文件生效之后发现之前已经生效的配置文件有没有生效。所以一个接口虽然可以有多套配置文件但是在同一时间,只能有一套配置文件生效。
一个接口可以有多套配置文件,多套的配置文件中的接口是相同的,但UUID不能相同
nmcli修改连接配置名
nmcli connection modify 原连接配置名 connection id. 新连接配置名
nmcli 增加新的地址
nmcli connection modify 连接配置名 +ipv4。addresses 2.2.2.2/16
增加地址之后不会立刻生效。
nmcli con up 连接配置名

如图,现在ens34接口只有一个ip地址,现在要加一个地址
nmcli connection modify ens33 +ipv4.addresses 2.2.2.2/16
nmcli con up ens33

添加成功,再来看一下ens33接口的配置文件,发现已经添加了IP地址信息。

删除添加的地址
nmcli connection delete 连接配置名 -ipv4。addresses 2.2.2.2/16
nmcli con up 连接配置名
网络接口配置-bonding
Bonding 就是将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。当然,直接给两块网卡设置同一IP地址是不可能的。通过bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址。
Mode 0 (balance-rr)
衡和容错的能力轮转(Round-robin)策略:从头到尾顺序的在每一个slave接口上面发送数据包。本模式提供负载均

一个机器上面有两块网卡,第一个数据来了走第一个网卡,第二个数据来了走第二个网卡,第三个数据来了走第一个网卡,第四个数据来了就走第二个网卡。
Mode 1 (active-backup)
活动-备份(主备)策略:只有一个slave被激活,当且仅当活动的slave接口失败时才会激活其他slave。为了避免交换机发生混乱此时绑定的MAC地址只有一个外部端口上可见(平时只有一个网卡工作,另一个网卡不工作,一旦这个工作的网卡坏了,那么不工作的网卡就会被激活,接替工作)
Mode 3 (broadcast)
广播策略:在所有的slave接口上传送所有的报文,提供容错能力(从远程来了一个数据,所有的网卡都能收到,并且都回应,就会出现一个dup!的提示)
nmcli 命令实现bonding
A机器两个网卡都是主机模式

第一步:添加bonding接口
nmcli con add type bond con-name mybond0 ifname mybond0 mode active-backup
con-name 是连接配置名 ifname 是接口名 mode 是bond的模式
增加IP地址
nmcli connection modify 连接配置名 ipv4.method manual ipv4.addresses 192.168.37.100/24
也可以写成一条添加接口时直接添加地址
nmcli con add type bond con-name mybond0 ifname mybond0 mode active-backup ipv4.method manual ipv4.addresses 192.168.37.100/24
第二步:添加从属接口
nmcli con add type bond-slave ifname ens33 master mybond0
nmcli con add type bond-slave ifname ens34 master mybond0
注:如无为从属接口提供连接名,则该名称是接口名称加类型构成
第三步:要启动绑定,则必须首先启动从属接口
nmcli con up bond-slave-ens33
nmcli con up bond-slave-ens34
第四步:启动绑定
nmcli con up mybond0
B机器的网卡也是主机模式,并且要保证和192.168.37.100在一个网段里面,然后去ping192.168.37.100
查看bond0状态
cat /proc/net/bonding/bond0
网络组Network Teaming
网络组:是将多个网卡聚合在一起的方法,从而实现冗错和提高吞吐量
网路组由内核驱动和teamd守护进程实现
多种方式runner(和bonding技术里的mode一样)
broadcast
roundrobin
activebackup
loadbalance
lacp(implements the 802.3ad Link Aggregation Control Protocol)
网络组
启动网络组接口不会自动启动网络组中的port接口
启动网络组接口中的port接口总会自动启动网络组接口
禁用网络组接口会自动禁用网络组中的port接口
没有port接口的网络组接口可以启动静态IP连接
启用DHCP连接时,没有port接口的网络组会等待port接口的加入
创建网络组
第一步:创建网络组接口:
nmcli con add type team con-name CNAME ifname INAME config JSON
CNAME 连接名,INAME接口名
JSON指定runner 方式
格式:‘{“runner”:{“name”:“METHOD”}}
METHOD 可以是broadcast ,roundrobin,activebacup,loadbalance,lacp
给网络组接口配ip地址
nmcli con mod team0 ipv4.method manual pv4.addresses 192.168.37.100/24
第二步:创建从属接口
nmcli con add type team-slave con-name CNAME ifname INAME master TEAM
CNAME连接名
INAME网络接口名
TEAM网络组接口名
若连接名不指定,默认为team-slave-IFACE
第三步:启动网络组接口和从属接口
nmcli con up CNAME
查看team0的状态
teamdctl team0 state
网络组示例:
nmcli con add type team con-name team0 ifname team0 config '{"runner":{"name":"loadbalance"}}
nmcli con mod team0 ipv4.method manual pv4.addresses 192.168.37.100/24
nmcli con add type team-slave con-name team0-ens33 ifname ens33 master team0
nmcli con add type team-slave con-name team0-ens34 ifname ens34 master team0
nmcli con up team0
nmcli con up team0-ens33
nmcli con up team0-ens34
网络组的配置文件在/etc/sysconfig/nework-scripts/ifcfg-team0
DEVICE=team0
DEVICETYPE=Team
TEAM_CONFIG="{\"runner\": {\"name\": \"broadcast\"}}"
BOOTPROTO=none
IPADDR0=172.25.5.100
PREFIX0=24
NAME=team0
ONBOOT=yes
删除网络组
nmcli connection down team0
nmcli connection delete team0-ens33
nmcli connection delete team0-ens33
网桥
桥接:把一台机器上的若干个网络接口“连接”起来。其结果是,其中一个网口收到的报文会被复制给其他网口并发送出去。以是的网口之间的报文能够互相转发。网桥就是这样一个设备,它有若干个网口,并且这些网口是桥接起来的。与网桥相连的主机就能通过交换机的报文转发而互相通信。

配置实现网桥
第一步:创建软件网桥接口并配上地址
nmcli con add type bridge con-name br0 ifname br0 ipv4.method manual ipv4.addresses 192.168.37.100
第二步:创建网桥的从属接口
nmcli con add type bridge-slave ifname ens33 master br0
nmcli con add type bridge-slave ifname ens34 master br0
第三步:启动网桥接口和从属接口
nmcli con up br0
nmcli con up bridge-slave-ens33
nmcli con up bridge-slave-ens34
网桥的配置文件/etc/sysconfig/network-scripts/ifcfi-网桥接口名
删除网桥
直接删除配置文件最干脆
然后再重新加载一下配置文件,nmcli connection reload
nmcli 命令的基本使用的更多相关文章
- 在 Linux 中用 nmcli 命令绑定多块网卡
今天,我们来学习一下在 CentOS 7.x 中如何用 nmcli(Network Manager Command Line Interface:网络管理命令行接口)进行网卡绑定. 网卡(接口)绑定是 ...
- nmcli命令大集合
nmcli命令 地址配置工具:nmcli nmcli device 查看所有网卡的信息 nmcli device status 和numcli device 相同 nmcli device ...
- nmcli命令使用以及网卡绑定bond
一.nmcli命令 1.什么是nmcli 以前我配置网卡的时候都要打vim /etc/sysconfig/network-scripts/ifcfg-eth0这么一长串命令,有很多配置名字还记不住就需 ...
- (转)linux中nmcli命令的使用及网络配置
原文:https://blog.51cto.com/groot/1847482 http://www.178linux.com/44076----CentOS7中nmcli网络管理及使用详解 http ...
- linux中nmcli命令使用及网络配置
nmcli命令与配置文件对应关系 主机名: 如果说你没有设置主机名的话,默认是localhost.localdomain 修改配置文件的主机名 # hostnamectl set-hostname ...
- nmcli命令使用
nmcli命令 地址配置工具:nmcli nmcli device 查看所有网卡的信息 nmcli device status 和numcli device 相同 nmcli device ...
- RedHat/CentOS 7通过nmcli命令管理网络教程
Red Hat Enterprise Linux 7 和CentOS 7 的网络管理实际上是对NetworkManager的管理,可通过nmcli命令进行控制,下面小编就给大家介绍下RedHat/Ce ...
- 在 RedHat/CentOS 7.x 中使用 nmcli 命令管理网络
在 RedHat/CentOS 7.x 中使用 nmcli 命令管理网络 学习了:https://linux.cn/article-5410-1.html#3_3613 http://www.linu ...
- 网络管理和nmcli命令的使用——网络接口配置-bonding实验步骤
(实验)网络接口配置-bonding Bonding 将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡.直接给两块网卡设置同\一IP地址是不可以的.通过bonding,虚拟一块网 ...
随机推荐
- GraphQL:一种不同于REST的接口风格
从去年开始,JS算是完全踏入ES6时代.在React相关项目中接触到了一些ES6的语法.这次接着GraphQL这种新型的接口风格,从后端的角度接触ES6. 这篇文章从ES6的特征讲起,打好语法基础:然 ...
- 关于ML的思考讲座-周zh-11.30日
1.深度神经网络 1.以往神经网络采用单或双隐层结构,虽然参照了生物上的神经元,但是从本质上来说还是数学,以函数嵌套形成. 2.通常使用的激活函数是连续可微(differentiable)的,sigm ...
- 深入理解Nginx
nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行网站的发布处理,另外 ...
- Sparsity稀疏编码(二)
为了更进一步的清晰理解大脑皮层对信号编码的工作机制(策略),需要把他们转成数学语言,因为数学语言作为一种严谨的语言,可以利用它推导出期望和要寻找的程式.本节就使用概率推理(bayes v ...
- MapReduce的几个实现
1.倒排索引的实现 import java.io.IOException; import java.util.StringTokenizer; import org.apache.hadoop.con ...
- STL学习笔记--序列式容器
1.vector vector是一个线性顺序结构.相当于数组,但其大小可以不预先指定,并且自动扩展.故可以将vector看作动态数组. 在创建一个vector后,它会自动在内存中分配一块连续的内存空间 ...
- (26)SQLite集成与用法
概述 在Cocos2d-x中,简单数据存储,可以使用UserDefault.那么如何存储大量,不规则的数据?我们可以使用SQLite数据库存储数据.SQLite是使用非常广泛的嵌入式数据库,它有小巧 ...
- 基于std::string的字符串处理
转自:http://zxdflyer.blog.163.com/blog/static/25664262201322510217495/ C++标准模板库std使用广泛.该库中处理字符串的对象为std ...
- 从官网学习Node.js FS模块方法速查
最新文档请查看仓库 https://github.com/wangduandu... 1. File System 所有文件操作提供同步和异步的两种方式,本笔记只记录异步的API 异步方式其最后一个参 ...
- 20189215《Linux内核原理与分析》第一周作业
实验1 Linux系统简介 本节主要学习了 Linux 的历史,Linux 与 Windows 的区别等入门知识.通过学习,我明确了目的,是要用 Linux 来做程序开发.搭建服务器等:并且非常接受不 ...