ip (1)

우선 다음과 같이 ip link 명령을 통해 네트워크 설정을 할 대상 인터페이스명을 확인한다.

1
2
3
4
5
[root@localhost ~]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether 00:0c:29:f3:94:f3 brd ff:ff:ff:ff:ff:ff
cs


위와 같이 확인된 ens192라는 인터페이스(랜포트)에 네트워크 설정을 해보겠다.



1. 설정파일 확인

/etc/sysconfig/network-scripts 경로에 보면 위에서 확인된 ens192와 관련된 설정파일인 ifcfg-ens192 파일을 찾을 수 있다.

1
2
[root@localhost ~]# ls -al /etc/sysconfig/network-scripts/ifcfg-ens192 
-rw-r--r--1 root root 203 Apr  6 10:59 /etc/sysconfig/network-scripts/ifcfg-ens192
cs



2. 설정파일 수정

1
2
3
4
5
6
7
8
9
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
DEVICE=ens192
ONBOOT=yes
IPADDR=192.168.20.10
NETMASK=255.255.255.0
GATEWAY=192.168.20.1
DNS1=168.126.63.1
cs

해당 설정파일의 내용이 기본값으로 이미 작성되어 있을 수도 있다.

필요 없는 항목들은 삭제하고 위 내용 정도로만 작성해도 충분하다.

각 설정항목의 이름은 대문자로 작성되어야 하며, 항목의 값은 대/소문자를 구분하니 유의해야 한다.



3. 설정항목의 의미와 설정될 수 있는 값

3-1. TYPE

1
TYPE=Ethernet
cs

해당 인터페이스의 유형을 지정할 수 있는 항목이며 설정될 수 있는 값은 Ethernet, Wireless, Bridge, Bond 등이 있다.

일반적인 유선 LAN 인터페이스에서는 Ethernet으로 설정하면 된다.


3-2. BOOTPROTO

1
BOOTPROTO=none
cs

해당 인터페이스가 활성화 될 때 어떤 프로토콜을 사용해서 네트워크 정보를 얻을 것인지 지정할 수 있는 항목이며 설정될 수 있는 값는 none, bootp, dhcp가 있다.

none으로 설정하면 해당 인터페이스가 활성화 될 때 아무런 프로토콜도 사용하지 않으며, 그렇기 때문에 사용자가 정적(static)으로 구성한 정보만 참조하게 된다. 흔히 none 대신 static으로 지정하는 경우가 많은데 RHEL/CentOS 계열에서는 static이라는 값은 존재하지 않는 값이다. BOOTPROTO 항목의 기본값이 none이기 때문에 static이라고 입력된 값이 무시되고 그냥 none으로 적용되는 것 뿐이다.

bootp는 dhcp와 흡사한 기능을 했던, 지금은 거의 사용되지 않는 프로토콜이다.

dhcp로 설정하면 해당 인터페이스가 활성화 될 때 dhcp 서버로 부터 네트워크 정보를 가져와서 적용하게 된다.


3-3. DEFROUTE

1
DEFROUTE=yes
cs

해당 인터페이스가 기본 라우팅 경로로 사용될 것인가를 지정할 수 있는 항목이며 기본값은 yes이다.

기본값이 yes인 탓에 인터페이스가 여러 개이고, 각각의 인터페이스마다 라우팅 정보가 설정되어 있을 경우 가장 마지막 순번의 인터페이스가 기본 라우팅 경로로 지정되어 버린다. 그렇기 때문에 인터페이스가 여러 개일 경우 특정 인터페이스만 기본 라우팅 경로로 사용하고 싶다면 해당 인터페이스에만 DEFROUTE=yes로 설정하고, 나머지 인터페이스에는 DEFROUTE=no로 설정해야 한다.

인터페이서의 순번은 ip link 명령을 통해 확인할 수 있으며 가장 맨 앞 열이 인터페이스 순번을 나타낸다.


3-4. DEVICE

1
DEVICE=ens192
cs

해당 인터페이스의 디바이스명을 지정할 수 있는 항목이며 일반적으로 ip link 명령으로 확인된 인터페이스명을 그대로 설정하면 된다.


3-5. ONBOOT

1
ONBOOT=yes
cs

시스템이 부팅될 때 해당 인터페이스를 활성화할 것인지를 지정할 수 있는 항목이다.

기본값은 no이기 때문에 ONBOOT=yes로 설정하지 않으면 시스템이 부팅될 때, 또는 네트워크 서비스를 시작할 때 해당 인터페이스가 활성화되지 않는다.


3-6. IPADDR

1
IPADDR=192.168.20.10
cs

해당 인터페이스에 정적으로 IP 주소를 설정하는 항목이다.

IP 주소가 필요없을 경우(bootp, dhcp, 그 밖에) 해당 항목을 삭제하면 된다.


3-7. NETMASK

1
NETMASK=255.255.255.0
cs

해당 인터페이스에 정적으로 네트워크마스크를 설정하는 항목이다.

필요없을 경우 해당 항목을 삭제하면 된다.


3-8. GATEWAY

1
GATEWAY=192.168.20.1
cs

해당 인터페이스에 정적으로 게이트웨이 주소를 설정하는 항목이다.

필요없을 경우 해당 항목을 삭제하면 된다.


3-9. DNS1

1
DNS1=168.126.63.1
cs

해당 인터페이스에 정적으로 DNS 주소를 설정하는 항목이다.

DNS 주소를 여러 개 설정해야 할 경우 DNS2, DNS3, DNS4 식으로 추가하면 된다.

필요없을 경우 해당 항목을 삭제하면 된다.



4. 위와 같이 설정파일을 수정한 후에는 네트워크 서비스를 재시작하거나 시스템을 재부팅해야 변경된 설정이 적용된다.

4-1. 네트워크 서비스 재시작으로 적용

1
[root@localhost ~]# service network restart
cs


4-2. 시스템 재부팅으로 적용

1
[root@localhost ~]# reboot
cs