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命令大集合的更多相关文章

  1. Windows+linux命令大集合

    net use \\ip\ipc$ " " /user:" " 建立IPC空链接 net use \\ip\ipc$ "密码" /user: ...

  2. git命令大集合

    git 使用整理 密钥生成 cd ~/.ssh //检查本机中是否有公钥信息 mkdir key_backup cp id_rsa*key_backup rm id_rsa //删除已有公钥 &quo ...

  3. Android 常用代码大集合 [转]

    [Android]调用字符串资源的几种方法   字符串资源的定义 文件路径:res/values/strings.xml 字符串资源定义示例: <?xml version="1.0&q ...

  4. 从Redis中删除大集合对象的方法

    Redis中的大集合对象,如set.zset等,如果有上千万个元素,一般是不能直接用del命令来删除的,因为del命令可能会耗时几秒钟,而redis本身是单线程的,在高并发的情况下会阻塞大量的请求,严 ...

  5. (转)linux中nmcli命令的使用及网络配置

    原文:https://blog.51cto.com/groot/1847482 http://www.178linux.com/44076----CentOS7中nmcli网络管理及使用详解 http ...

  6. 干货100+ 最超全的web开发工具和资源大集合

    干货100+ 最超全的web开发工具和资源大集合   作为Web开发者,这是好的时代,也是坏的时代.Web开发技术也在不断变化.虽然很令人兴奋,但是这也意味着Web开发人员需要要积极主动的学习新技术和 ...

  7. Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) JAVA日志的前世今生 .NET MVC采用SignalR更新在线用户数 C#多线程编程系列(五)- 使用任务并行库 C#多线程编程系列(三)- 线程同步 C#多线程编程系列(二)- 线程基础 C#多线程编程系列(一)- 简介

    Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) 一.前言 由于本篇文章较长,所以下面给出内容目录方便跳转阅读,当然也可以用博客页面最右侧的文章目录导航栏进行跳转查阅. 一.前言 ...

  8. 大集合List分为多个子集合

    批量插入时如果一次插入的对象过多会导致超过mysql限定sql长度,通过命令查看 show VARIABLES like 'max_allowed_packet' ,如果数据太多,就将大集合List分 ...

  9. 100多个很有用的JavaScript函数以及基础写法大集合

    100多个很有用的JavaScript函数以及基础写法大集合 1.document.write("");为 输出语句2.JS中的注释为//3.传统的HTML文档顺序是:docume ...

随机推荐

  1. @Autowired和@Resource的区别是什么?

    @Autowired 与@Resource: 1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上. 2.@Autowired默认按类型装配 ...

  2. 大数据平台搭建-hadoop/hbase集群的搭建

    版本要求 java 版本:1.8.*(1.8.0_60) 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downl ...

  3. Spark 1.6升级2.x防踩坑指南

    原创文章,谢绝转载 Spark 2.x自2.0.0发布到目前的2.2.0已经有一年多的时间了,2.x宣称有诸多的性能改进,相信不少使用Spark的同学还停留在1.6.x或者更低的版本上,没有升级到2. ...

  4. 关于用VMware克隆linux系统后,无法联网找不到eth0网卡的问题

    当使用克隆后的虚拟机时发现系统中的网卡eth0没有了,使用ifconfig -a会发现只有eth1.因为系统是克隆过来的,原有的eth0以及ip地址都是原先网卡的,VMware发现已经被占用,就会创建 ...

  5. cnpm install -S 与cnpm install -D (dependencies和devDependencies的区别)

    npm install takes 3 exclusive, optional flags which save or update the package version in your main ...

  6. VS2012启用angularjs智能提示Intelligence(转)

    1. 關閉正在執行的 Visual Studio 2012 2. 開啟檔案總管,並進入以下目錄: C:\Program Files (x86)\Microsoft Visual Studio 11.0 ...

  7. Prism for Xamarin.Forms

    一.使用环境 OS:Win 10 16273 VS:VS2017- 15.3.4 Xamarin:4.6.3.4,nuget:2.4 Android Emulator:Visual Studio fo ...

  8. MSH:一个简单SH工具实现

    本文将分为不同的Part,分别实现Shell的一部分功能. msh从CSAPP的SHLAB出发,逐渐完善SHELL功能,并移植到自己的OS上. Github: https://github.com/H ...

  9. web切图的几个快捷键及总结

      自由的控制视图系列 自由的浏览图片:按住空格后,鼠标拖动 自由的缩放图片:按住alt+滚轮 切换到实际像素(100%):Ctrl + 1 工作区类型切换:Tab 控制内容系列 通过画面上点选一个图 ...

  10. K好数--蓝桥杯

    JAVA版K好数--蓝桥杯 历经千辛万苦,也算是研究出来了这道题了. 这道题主要运用了动态规划(Dynamic Planning)的思想,何谓动态规划?其实就是将一个大问题分成一个个小问题,然后先通过 ...