[LINUX][RHEL7] 네트워크 IP설정 (nmcil 명령어, 설정파일 사용)
[LINUX][RHEL7] 네트워크 IP설정 (nmcil 명령어, 설정파일 사용)
레드헷 리눅스 7버전에서 nmcli를 통하여 네트워크 IP를 설정해 보겠습니다.
6이하의 버전에서 설정하던 방식으로 하다 보면 많이 생소 합니다.
7버전의 nmcli 통해 설정을하려면 network 데몬 뿐만 아니라 NetworkManager 데몬도 사용하여야 합니다. 아래 장치(device)와 연결(connection)이라는 용어가 나오는데 device는 실제장치 connection은 설정값을 셋팅하는 오브젝트 정도로 생각하면 될 것 같습니다.
1. 네트워크 설정(nmcli 명령어사용)
1) 모든 연결확인
먼저 모든 연결(connection)을 확인합니다. 랜포트에 연결된 장치가 기본적으로 동적으로 생성되어 있습니다.
#nmcli con show 이름 UUID 유형 장치 eno16777736 1ba6b053-e45e-424f-ad1d-ea37d749ce40 802-3-ethernet eno16777736 |
2) 장치상태 표시
다음은 장치(device)를 확인해 보도록 합니다. 장치 eno16777736가 연결CONNECTION eno16777736로 연결되어 통신이 되어지고 있습니다.
# nmcli dev status 장치 유형 상태 CONNECTION eno16777736 ethernet 연결됨 eno16777736 eno33554992 ethernet 연결 끊겼음 -- lo loopback 관리되지 않음 --
|
3) 현재의 장치설정을 확인합니다.
eno16777736라는 device에 eno16777736라는 connection이 연결되어 있고, 현재는 DHCP를 통해 IP가 설정되어 있습니다.
# nmcli dev show eno16777736 GENERAL.장치: eno16777736 GENERAL.유형: ethernet GENERAL.하드웨어주소: 00:0C:29:5D:15:C4 GENERAL.MTU: 1500 GENERAL.상태: 100 (연결됨) GENERAL.CONNECTION: eno16777736 GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/4 WIRED-PROPERTIES.캐리어: 켜짐 IP4.주소[1]: ip = 192.168.0.13/24, gw = 192.168.0.1 IP4.DNS[1]: 210.220.163.82 IP4.DNS[2]: 219.250.36.130 IP6.주소[1]: ip = fe80::20c:29ff:fe5d:15c4/64, gw = ::
|
4) 정적연결 생성
새로운 정적연결을 생성하여 IP를 설정해 보도록 하겠습니다.
현재의 연결을 다른 설정의 연결로 변경하기 위해 static-ens167라는 이름의 정적 연결(connection)을 생성합니다.
static-ens167라는 정적 연결(connection)을 eno16777736라는 device로 지정합니다.
# nmcli con add con-name "static-ens167" ifname eno16777736 type ethernet ip4 192.168.0.13/24 gw4 192.168.0.1 |
5) DNS정보 추가
새로 생성된 정적 연결의 DNS정보를 추가합니다.
# nmcli con mod "static-ens167" ipv4.dns 210.220.163.82 |
6) 모든연결보기, 활성화 연결보기
# nmcli con show static-ens167 b6189e05-6ee9-43e1-b649-8ff38a006d96 802-3-ethernet -- eno16777736 1ba6b053-e45e-424f-ad1d-ea37d749ce40 802-3-ethernet eno16777736
# nmcli con show --active eno16777736 1ba6b053-e45e-424f-ad1d-ea37d749ce40 802-3-ethernet eno16777736 |
새로운 연결 "static-ens167" 가 생성되었으나 활성연결은 기존 연결인 "eno16777736" 로 되어있음을 확인 할 수 있습니다.
7) 새로운 정적연결 활성화 하기
# nmcli con up "static-ens167" |
새로운 정적 연결(Connection)인 "static-ens167"를 장치(Device) "eno16777736" 에 연결하였습니다.
8) 활성화 확인
# nmcli con show --active static-ens167 b6189e05-6ee9-43e1-b649-8ff38a006d96 802-3-ethernet eno16777736 |
활성연결이 변경되었음을 확인 할 수 있습니다.
9) 새주소 확인
# ip addr show eno16777736 2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:5d:15:c4 brd ff:ff:ff:ff:ff:ff inet 192.168.0.13/24 brd 192.168.0.255 scope global eno16777736 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe5d:15c4/64 scope link valid_lft forever preferred_lft forever |
10) 기존연결 비활성화
기존에 OS설치시 자동으로 생성되었던 연결 "eno16777736"이 리부팅시에 device "eno16777736"와 연결이 되지 않도록 설정을 하고 리부팅 합니다. (ONBOOT = NO 동일옵션)
# nmcli con mod "eno16777736" connection.autoconnect no # shutdown -r now |
2. 네트워크 설정(파일)
Redhat7 버전에서도 기존 버전에서 사용하던 방식인 ifcfg 파일을 통해서도 IP를 설정 할 수 있습니다.
eth0, eth1 이라는 device가 있다고 가정합니다.
1) 디바이스 확인
먼저 장치(device)와 연결(connection) 정보를 확인합니다.
# nmcli dev status DEVICE TYPE STATE CONNECTION eth0 ethernet connected eth0 eth1 ethernet connected eth1 lo loopback unmanaged -- |
2) 네트워크 설정파일 수정
네트워크 설정파일을 수정합니다.
# vi /etc/sysconfig/network-scripts/ifcfg-eth0 TYPE=Ethernet BOOTPROTO=none DEFROUTE=yes IPV4_FAILURE_FATAL=no NAME=eth0 DEVICE=eth0 UUID=8664dba0-9625-490a-a54f-dc70041d1b43 ONBOOT=yes HWADDR=00:50:56:9B:1B:7F IPADDR0=192.168.0.13 PREFIX0=24 GATEWAY0=192.168.0.1 DNS1=210.220.163.82 |
3) 연결 활성화
설정한 연결을 활성화 합니다.
# nmcli con up "eth0" Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2) |
4) 연결 활성화 확인
장치와 연결을 확인 합니다.
# nmcli con show --active NAME UUID TYPE DEVICE eth1 8a2e1564-4685-41a0-baac-c5bf2500df41 802-3-ethernet eth1 eth0 8664dba0-9625-490a-a54f-dc70041d1b43 802-3-ethernet eth0
|
5) ip주소 확인
ip가 device에 정상적으로 설정이 되었는지 확인합니다.
# ip addr show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:50:56:9b:1b:7f brd ff:ff:ff:ff:ff:ff inet192.168.0.13/24 brd 192.168.0.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::250:56ff:fe9b:1b7f/64 scope link valid_lft forever preferred_lft forever |
3.호스트 네임 설정
Hostname 설정시에도 두가지 방식으로 설정이 가능합니다.
[파일수정방식]
1) 파일 수정
# vi /etc/hostname rhel-test |
2) 리부팅
# shutdown -r now |
[명령어 사용방식]
1) 현재 hostname 확인
# hostnamectl status |
2) 설정
# hostnamectl set-hostname rhel-test |
3) 설정파일 확인
# cat /etc/hostname |