首頁 > 軟體

使用nmcli命令設定網路

2020-06-16 17:10:18

使用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 device status            顯示裝置狀態

    nmcli device show ens33        顯示網路介面屬性

    nmcli connection add help        檢視幫助

    nmcli connection reload        重新載入設定

    nmcli connection down test2        禁用test2的設定,注意一個網絡卡可以有多個設定。

    nmcli connection up test2        啟用test2的設定

    nmcli device disconnect ens33    禁用ens33網絡卡,物理網絡卡

    nmcli device disconnect ens33    啟用ens33網絡卡

圖形工具

    nm-connection-editor

字元工具

    nmtui

    nmtui-connect

    nmtui-edit

    nmtui-hostname

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 指定是否自動啟動

    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

(2)修改DNS為172.25.1.1

[root@centos73 ~]# nmcli connection modify test2 ipv4.dns 172.25.1.1

(3)新增DNS 114.114.114.114

[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

(5)修改IP地址

[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= . . .

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-07/145573.htm


IT145.com E-mail:sddin#qq.com