zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    HDU 3572 Task Schedule(拆点+最大流dinic)
    POJ 1236 Network of Schools(Tarjan缩点)
    HDU 3605 Escape(状压+最大流)
    HDU 1166 敌兵布阵(分块)
    Leetcode 223 Rectangle Area
    Leetcode 219 Contains Duplicate II STL
    Leetcode 36 Valid Sudoku
    Leetcode 88 Merge Sorted Array STL
    Leetcode 160 Intersection of Two Linked Lists 单向链表
    Leetcode 111 Minimum Depth of Binary Tree 二叉树
  • 原文地址:https://www.cnblogs.com/libertylife/p/10514331.html
Copyright © 2011-2022 走看看