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 連接配置名 +ipv4addresses  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 連接配置名 -ipv4addresses  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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM