본문 바로가기

Linux is..../LINUX

RHEL7 - NetworkManager CLI(1) nmcli

 

 

자신의 PC를 fedora운영체제를 사용하시는 분들의 경우, NetworkManager GUI을 이용하여, 때때로 프로파일 등록 및 변경을 하시는 경우가 많으리라 생각됩니다.

 

이럴 경우, 피씨가 아닌 서버환경에서도 GUI로 확인 및 설정/변경이 어렵지 않다고 구현하실수 있겠죠.

다만, RHEL7버전의 몇몇 툴의 경우, GUI환경에 특화?(NetworkManager, PCP(Performance Co-pilot), firewalld 등)되어 있는 부분으로 접속환경이 터미널을 이용한 확인/설정이 필요한 경우, 난감한 상황이 따를수 있습니다.

 

이럴 경우, 많이들 아시는 NetworkManager CLI(nmcli)을 명령어를 이용하여 사용한다면, 위와 같은 부분들을 어느정도 해소하실수 있겠습니다.

 

http://fedoraproject.org/wiki/Tools/NetworkManager/CLI

 

NetworkManager을 이용하여, 네트워크 추가할수 있는 프로파일은 크게 1) 가상사설망, 2) Bonding, 3) Teaming 4) Bridge, 5) 가상 LAN 등이 있습니다.

 

그럼 간단하게 nmcli(NetworkManager CLI)명령어를 이용하여, 브릿지설정을 확인하도록합니다.

(아시다시피 RedHat Document에서 nmcli로 설정하길 권고합니다. 특히 브릿지의 경우.)

 

자세한 사용법은 help명령어를 통해 확인할수 있습니다.

$ nmcli help
Usage: nmcli [OPTIONS] OBJECT { COMMAND | help }

 

 

[root@ ~]# yum -y install qemu-kvm libvirt virt-install bridge-utils


# make sure modules are loaded
[root@ ~]# lsmod | grep kvm
kvm_intel       138567  0
kvm             441119  1 kvm_intel


[root@ ~]# systemctl start libvirtd
[root@ ~]# systemctl enable libvirtd

 

# add bridge "br0"
[root@ ~]# nmcli c add type bridge autoconnect yes con-name br0 ifname br0
Connection 'br0' (0f4b7bc8-8c7a-461a-bff1-d516b941a6ec) successfully added.

 

# set IP for br0
[root@ ~]# nmcli c modify br0 ipv4.addresses "10.0.0.30/24 10.0.0.1" ipv4.method manual

 

# set DNS for "br0"
[root@ ~]# nmcli c modify br0 ipv4.dns 10.0.0.1

 

# remove the current setting
[root@ ~]# nmcli c delete eno16777736

 

# add an interface again as a member of br0
[root@ ~]# nmcli c add type bridge-slave autoconnect yes con-name eno16777736 ifname eno16777736

master br0

 

# stop and start NetworkManager
[root@ ~]# systemctl stop NetworkManager; systemctl start NetworkManager

 

[root@ ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP>
    mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
    link/ether 00:0c:29:9f:9b:d3 brd ff:ff:ff:ff:ff:ff
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
    link/ether 22:f8:64:25:97:44 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
    link/ether 00:0c:29:9f:9b:d3 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.30/24 brd 10.0.0.255 scope global br0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe9f:9bd3/64 scope link
       valid_lft forever preferred_lft forever