본문 바로가기

Red Hat Linux

Linux 네트워크 관리 - Red Hat Enterprise Linux Technical Overview (9)

 

 

리눅스 nmcli 프로그램

리눅스 네트워크는 네트워크 매니저라는 서비스를 통해 관리된다. cli로는 nmcli가 있다. 네트워크 매니저는 네트워크를 프로파일별로 관리한다. nmcli는 다양한 sub-command 트리로 이루어져있기 때문에 탭을 잘 사용해 sub-commnad를 활용하는 것이 좋다. 

 

 

 

리눅스 네트워크 프로파일 정보 조회

`nmcli con show`를 사용하면 프로파일들을 조회할 수 있다. 이때 con은 connection의 약자이다.

[root@localhost /]# nmcli con show
NAME    UUID                                  TYPE      DEVICE 
ens160  5caab0b2-ddf9-43fc-81f6-8959e6a48cbc  ethernet  ens160

 

ens160이라는 프로파일이 있고, 이 프로파일의 UUID를 볼 수 있다. 이 프로파일은 이더넷 기반이며 ens160이라는 장치 파일(device file)을 사용한다.  `nmcli con show 프로파일명` 명령어를 사용하면 해당 프로파일의 디테일을 조회할 수 있다. 

 

 

 

리눅스 네트워크 프로파일 추가

`nmcli con add <속성명> <속성값>` 명령어를 통해 특정 속성을 명시하여 네트워크 프로파일을 추가할 수 있다.

[root@localhost /]# nmcli con add con-name static-connection type ethernet ifname ens160
Connection 'static-connection' (42f1a126-b333-4bcc-80d9-8547c090abef) successfully added.
[root@localhost /]# nmcli con show
NAME               UUID                                  TYPE      DEVICE 
ens160             5caab0b2-ddf9-43fc-81f6-8959e6a48cbc  ethernet  ens160 
static-connection  42f1a126-b333-4bcc-80d9-8547c090abef  ethernet  --
[root@localhost /]# nmcli con show --active
NAME    UUID                                  TYPE      DEVICE 
ens160  5caab0b2-ddf9-43fc-81f6-8959e6a48cbc  ethernet  ens160

 

위 명령어는 다음과 같은 속성으로 네트워크 프로필을 추가하는 것이다. 

  • 프로파일명 : static-connection
  • 타입 : 이더넷
  • 디바이스명 : ens160

두 개의 프로파일이 하나의 디바이스를 사용할 수 없기 때문에  `ens160` 하나만 활성화된 상태이다. 

 

 

 

 

리눅스 네트워크 프로파일 수정 - 덮어쓰기

`nmcli con mod <속성명> <속성값>`명령어를 통해 속성들의 값을 바꿀 수 있다. 이때 각 속성 값은 덮어쓰기 된다.

[root@localhost /]# nmcli con mod static-connection ipv4.addresses 10.0.0.1/24 ipv4.gateway 10.0.0.254 ipv4.dns 10.0.0.254
[root@localhost /]# nmcli con show static-connection 
(생략)
ipv4.dns:                               10.0.0.254
(생략)
ipv4.addresses:                         10.0.0.1/24
ipv4.gateway:                           10.0.0.254

 

 

 

리눅스 네트워크 프로파일 삭제

`nmcli con delete <프로파일명>` 명령어를 통해 프로파일을 삭제할 수 있다. 

[root@localhost /]# nmcli con delete static-connection
Connection 'static-connection' (42f1a126-b333-4bcc-80d9-8547c090abef) successfully deleted.

 

 

 

리눅스 네트워크 프로파일 수정 - 값 추가하기

`nmcli con mod +<속성명> <속성값>`와 같이 속성명 앞에 + 사인을 붙이면 속성들의 값을 추가할 수 있다. 

[root@localhost /]# nmcli con mod ens160 +ipv4.addresses 10.0.0.1/24 +ipv4.dns 8.8.8.8
[root@localhost /]# nmcli con show ens160
(생략)
ipv4.dns:                               192.168.8.2,8.8.8.8
(생략)
ipv4.addresses:                         192.168.8.129/24, 10.0.0.1/24

두 개의 속성 값이 콤마로 연결되어 있는 것을 확인할 수 있다. 

 

 

 

네트워크 설정 반영

`nmcli con up <프로파일명>`을 수행해주면 비로소 변경한 설정들이 반영된다. `ip a s <프로파일명>`과 `/etc/resolv.conf` 파일을 출력해보면 변경이 잘 되었음을 확인할 수 있다. 

[root@localhost ~]$ nmcli con up ens160 
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)
[root@localhost ~]$ ip a s ens160
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:0c:29:02:35:d3 brd ff:ff:ff:ff:ff:ff
    altname enp3s0
    inet 192.168.8.129/24 brd 192.168.8.255 scope global noprefixroute ens160
       valid_lft forever preferred_lft forever
    inet 10.0.0.1/24 brd 10.0.0.255 scope global noprefixroute ens160
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe02:35d3/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
[root@localhost ~]$ cat /etc/resolv.conf 
# Generated by NetworkManager
search localdomain
nameserver 192.168.8.2
nameserver 8.8.8.8

 

 

 


 

본 포스트 시리즈는  RH024 Red Hat Enterprise Linux Technical Overview 」 강좌를 요약한 내용입니다.