使用nmcli指令設定網路
NetworkManager是管理和監控網路設定的守護進程,設備既就是網路接口,連線是對網路介面的配置,一個網路介面可以有多個連接配置,但同時只有一個連接配置生效。
1 設定主機名稱
CentOS6 之前主機設定檔:/etc/sysconfig/network
CentOS7主機名稱配置文件:/etc/hostname,預設沒有這個文件,透過DNS反向解析取得主機名,主機名稱預設為:localhost.localdomain
顯示主機名稱資訊
hostname
# hostnamectl status
建立並修改檔案並生效
hostnamectl set-hostname deskX.example.com
[root@centos73 ~]# hostnamectl set-hostname centos7.3.com [root@centos73 ~]# hostname centos7.3.com [root@centos73 ~]# cat /etc/hostname centos7.3.com
#可以看到已經修改成功。
刪除檔案。回覆預設主機名稱localhost.localdomain
2 常用指令
## nmcli connection show 顯示所有連線 nmcli connection show - -active 顯示所有活動的連線狀態 nmcli connection show "ens33" 顯示網路連線設定 nmcli ens33 顯示網路介面屬性 nmcli connection add help 檢視幫助 nmcli connection reload 重新載入設定為連接配置重載1/105 test2的配置,注意一個網卡可以有多個配置。 nmcli connection up test2 啟用test2的設定 nmcli device disconnect ens33 N 禁用335C,實體卡 啟用ens33網路卡片圖形工具
nm-connection-editor字元工具
nmtui# nmtui-edit nmtui-hostname
##3 建立新連線設定3 建立新連線設定
(1 )建立新連線設定default,IP透過DHCP自動取得[root@centos73 ~]# nmcli connection add con-name default type Ethernet ifname eth0 Connection 'default' (d62f98af-86ed-4735-80aa-2d80351765b2) successfully added.
[root@centos73 ~]# nmcli connection delete default Connection 'default' (d62f98af-86ed-4735-80aa-2d80351765b2) successfully deleted.(2)創建新的連線設定test2,指定靜態IP,不自動連線
[root@centos73 ~]# nmcli connection add con-name test2 ipv4.method manual ifname ens33 autoconnect no type Ethernet ipv4.addresses 172.25.100.100/24 gw4 172.25.100.1 Connection 'test2' (98385bf5-8cc3-47e3-a5f2-51e2d736be6d) successfully added.
con-name 指定連線名字,沒有特別要求,
ipv4.methmod 指定取得IP位址的方式
ifname 指定網路卡設被名,而為次設定所生效的網路卡
autoconnect 指定是否自動啟動所生效的網路卡
autoconnect
ipv4.addresses 指定IPv4地址 gw4指定網關4查看/etc/sysconfig/network-scripts/目錄
會看到多出一個檔案ifcfg-test2。說明添加確實生效了。 /etc/sysconfig/network-scripts/ifcfg-test2#[root@centos73 ~]# ls /etc/sysconfig/network-scripts/ifcfg-* /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-lo /etc/sysconfig/network-scripts/ifcfg-ens34 /etc/sysconfig/network-scripts/ifcfg-test2
5 啟用test2連線設定
#[root@centos73 ~]# nmcli connection up test2 Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7) [root@centos73 ~]# systemctl restart network看下是否生效
[root@centos73 ~]# nmcli device show ens33 GENERAL.DEVICE: ens33 GENERAL.TYPE: ethernet GENERAL.HWADDR: 00:0C:29:3A:00:82 GENERAL.MTU: 1500 GENERAL.STATE: 100 (connected) GENERAL.CONNECTION: test2 GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/7 WIRED-PROPERTIES.CARRIER: on IP4.ADDRESS[1]: 172.25.100.100/24 IP4.GATEWAY: 172.25.100.1 IP6.ADDRESS[1]: fe80::5a5b:2cc3:a448:e2e1/64 IP6.GATEWAY:#好了,基本的IP位址設定成功
##6修改連線設定(
1)修改test2為自動啟動#
[root@centos73 ~]# nmcli connection modify test2 connection.autoconnect yes
[root@centos73 ~]# nmcli connection modify test2 ipv4.dns 172.25.1.1
[root@centos73 ~]# nmcli connection modify test2 +ipv4.dns 114.114.114.114
[root@centos73 ~]# cat /etc/sysconfig/network-scripts/ifcfg-test2 TYPE=Ethernet [……] NAME=test2 UUID=98385bf5-8cc3-47e3-a5f2-51e2d736be6d DEVICE=ens33 ONBOOT=yes DNS1=172.25.1.1 IPADDR=172.25.100.100 PREFIX=24 GATEWAY=172.25.100.1 DNS2=114.114.114.114可以看到都已生效
(4)刪除DNS
[root@centos73 ~]# nmcli connection modify test2 -ipv4.dns 114.114.114.114
[root@centos73 ~]# nmcli connection modify test2 ipv4.addresses 200.100.100.100/24 gw4 200.100.100.1
#
(6)还可以添加多个IP
[root@centos73 ~]# nmcli connection modify test2 +ipv4.addresses 10.10.10.10/8
7 nmcli 命令和/etc/sysconfig/network-scripts/ifcfg-*文件的对应关系
ipv4.method manual BOOTPROTO=none
ipv4.method auto BOOTPROTO=dhcp
ipv4.addresses "192.0.2.1/24 IPADDR=192.0.2.1
PREFIX=24
gw4 192.0.2.254" GATEWAY=192.0.2.254
ipv4.dns 8.8.8.8 DNS0=8.8.8.8
ipv4.dns-search example.com DOMAIN=example.com
ipv4.ignore-auto-dns true PEERDNS=no
connection.autoconnect yes ONBOOT=yes
connection.id eth0 NAME=eth0
connection.interface-name eth0 DEVICE=eth0
802-3-ethernet.mac-address . . . HWADDR= . . .
以上是nmcli的網路配置的詳細內容。更多資訊請關注PHP中文網其他相關文章!