Linux Network Manager 를 제어하는 nmcli 명령어


TL;DR

정적 IP 를 설정할 경우 CentOS nmcli 명령어로 정적 ip (Static IP) 설정하기 를 참고하세요.


network 설정 변경후 반영 방법은 RHEL/CentOS 8 network 설정 반영 을 참고하세요.

모든 connection 표시

활성화된 내역만 표시하려면 --active 옵션을 추가합니다.

$ nmcli con show

NAME         UUID                                  TYPE      DEVICE 
System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
ens3         522d46ea-91a5-4761-97f7-754afc9dda66  ethernet  --     


ip 설정

con mod 명령어 뒤에 show 에서 표시되는 connection NAME (위에서는 "System eth0") 을 적어주고 IP 와 netmask, gateway 를 명시합니다.

IP V4
$ nmcli con mod "System eth0" ipv4.address 192.0.2.2/24 ipv4.gateway 192.0.2.254 ipv4.dns "8.8.8.8 168.126.63.1"
IP V6
$ nmcli con mod "System eth0" ipv6.address 2001:db8:0:1::a00:1/64 ipv6.gateway 2001:db8:0:1::1

DHCP 활성화

$ nmcli device modify "System eth0" ipv4.method auto
$ nmcli device modify "System eth0" ipv6.method auto


부팅시 자동 활성화

nmcli con mod "System eth0" connection.autoconnect yes


설정 상태 보기

$ nmcli device show "System eth0"

설정 반영

$ systemctl restart NetworkManager.service

개요

nmcli 는 커맨드에서 Network Manager 를 제어하거나 network 상태를 볼 수 있는 명령어로 다양하게 활용할 수 있는 유용한 명령어입니다.


사용법은 nmcli [OPTIONS] OBJECT {COMMAND} 의 문법을 사용하며 OBJECT 는 nmcli 로 실행할 action 을 의미합니다.


general, networking, radio 등의 OBJECT 가 있으며 축약해서 맨 앞자리 알파벳만 사용해도 됩니다.

즉 아래 2개는 동일한 명령어입니다.


$ nmcli general status
$ nmcli g status


OBJECT 별 상세 옵션을 보려면 --help 옵션을 추가하고 실행하면 됩니다.

$ nmcli general --help

Usage: nmcli general { COMMAND | help }

COMMAND := { status | hostname | permissions | logging }

  status

  hostname [<hostname>]

  permissions

  logging [level <log level>] [domains <log domains>]


general 명령어

network 상태나 정보를 볼 수 있습니다.

$ nmcli general { status | hostname | permissions | logging } ARG


현재 네트워크 상태를 보려면 status 옵션을 주거나 아예 생략하면 됩니다. 

$ nmcli g st


STATE      CONNECTIVITY  WIFI-HW  WIFI     WWAN-HW  WWAN    
connected  full          enabled  enabled  enabled  enabled 


hostname 옵션을 주면 현재 서버에 설정한 호스트 명을 알 수 있습니다.

$ nmcli g h

lesstif.com


device 명령어

device 디바이스 상세 정보를 볼 수 있습니다.

nmcli device show


networking 명령어

on/off 옵션으로 네트워크 매니저가 네트웍 관리 여부 설정

nmcli networking { on  | off | connectivity } ARG


network off

원격으로 연결했을 경우 nmcli network off 를 실행하지 말 것.! RHEL/CentOS 8 network 설정 반영 참고

nmcli net off



network on

nmcli net on


radio 

WIFI 를 on/off 할 수 있습니다.


nmcli radio wifi on


connection 명령어


network 활성화

nmcli connection up 


See Also