안녕하세요. 썬구루입니다. 이 게시물에서는 CentOS 6.6을 DHCP 클라이언트로 구성하는 방법에 알아보도록 하겠습니다.
모든 운영체제는 DHCP 클라이언트로 구성될 수 있습니다. 우리가 사용하는 스마트폰도 Wi Fi 존에 들어가면 Wi Fi AP(Access Point / DHCP 서버)로부터 IP 주소를 받는 DHCP 클라이언트로 동작될 수 있습니다.
일단 이전에 리눅스 본딩(Linux Bonding) 구성을 하기 위해 Network Manager를 내렸었는데 쉽게 DHCP 클라이언트로 구성하기 리눅스 본딩(Linux Bonding) 이전의 시점으로 VMware Workstation의 스냅샷(Snapshot) 기능을 사용하여 Revert를 합니다.
다시 말해 NIC가 한 개이고 Network Manager가 동작하던 시점으로 되돌립니다.
■ VMware Workstation 가상 네트워크 DHCP 서버 구성
VMware Workstation은 호스트 운영체제(윈도우7, 윈도우8 등)에 설치되는 PC 가상화 소프트웨어(Hosted 방식의 Hypervisor)입니다. 그리고 이 소프트웨어를 설치하면 가상 네트워크 기능을 지원하는데 설치 시 생성되는 VMnet8 가상 스위치(가상 네트워크)에 DHCP 서버가 자동으로 구성됩니다. 이를 잠깐 편집하여 자동 할당할 IP 주소 범위를 변경합니다.
VMware Workstation > Edit 메뉴 > Virtual Network Editor > Change Settings 버튼 > VMnet8 > DHCP Settings
Starting IP address : 192.168.80.201
Ending IP address : 192.168.80.210
OK 버튼 > OK 버튼
■ CentOS 6.x DHCP Client 구성
CentOS 6.x를 DHCP Client로 설정하는 방법은 아래와 같습니다.
▶ nm-connection-editor GUI Tool
▶ NIC 구성 파일 수동 변경 후 적용
▶ dhclient 명령
1). nm-connection-editor GUI Tool
GUI 툴을 사용하여 DHCP Client 구성하는 가장 간단한 방법입니다. 이를 사용하기 위해 Network Manager 서비스가 동작하고 있어야 합니다.
[root@sunguru ~]# service --status-all | grep -i network
NetworkManager (pid 2130)를 실행하고 있습니다.. ^C [root@sunguru ~]# |
서비스가 실행되고 있다면 아래와 같은 명령 또는 X윈도우(Gnome 데스크톱) 상단 패널(Panel)에 있는 네트워크 아이콘을 클릭하여 GUI 툴을 실행합니다.
[root@sunguru ~]# /usr/bin/nm-connection-editor
|
DHCP 클라이언트 설정
- NIC 선택
- 변경하기
- IPv4 설정 탭(Tab) 선택
- 방식에서 자동(DHCP) 선택
- 적용 버튼
- 닫기 버튼
아래와 같은 명령을 실행하여 변경 사항을 적용합니다.
[root@sunguru ~]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:0C:29:56:E3:45 inet addr:192.168.80.250 Bcast:192.168.80.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe56:e345/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:6 errors:0 dropped:0 overruns:0 frame:0 TX packets:11 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:552 (552.0 b) TX bytes:746 (746.0 b) [root@sunguru ~]# service network restart <= 다른 명령으로도 적용 가능 인터페이스 eth0 (을)를 종료 중: 장치 상태: 3 (연결 끊겼음) [ OK ] loopback 인터페이스 종료 중: [ OK ] loopback 인터페이스 활성화중 입니다: [ OK ] eth0 인터페이스 활성화중 입니다: 활성화된 연결 상태: 활성화중 활성화된 연결 경로: /org/freedesktop/NetworkManager/ActiveConnection/1 상태: 활성화됨 연결이 활성화되었습니다 [ OK ] [root@sunguru ~]# [root@sunguru ~]# ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:0C:29:56:E3:45 inet addr:192.168.80.101 Bcast:192.168.80.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe56:e345/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:14 errors:0 dropped:0 overruns:0 frame:0 TX packets:21 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:2545 (2.4 KiB) TX bytes:1742 (1.7 KiB) [root@sunguru ~]# |
자동으로 할당받는 IP 주소는 192.168.80.101 ~ 192.168.80.120 중 하나입니다.
2). NIC 구성 파일
리눅스에 익숙하지 않으시는 분들은 개인적으로 VI 편집기를 사용하여 NIC에 관련된 구성 파일을 편집하는 것을 권하지 않습니다. 해서 NIC 관련 구성 파일 중 DHCP Client로 설정하기 위해 사용되는 구성 값만 보여 드리겠습니다. (NIC 구성 파일 고급 설명은 올해 하반기나 내전 초에 게시글을 올릴 예정입니다. ) 그리고 NIC 구성 파일들은 /etc/sysconfig/network-scripts 디렉터리에 존재합니다.
아래는 수동으로 IP 주소를 설정했을 때 NIC 구성 파일의 내용입니다.
[root@sunguru ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 TYPE=Ethernet UUID=6e26fd44-6b79-4d25-a347-9cd68d433336 ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0" HWADDR=00:0C:29:56:E3:45 IPADDR=192.168.80.250 PREFIX=24 GATEWAY=192.168.80.2 DNS1=168.126.63.1 LAST_CONNECT=1468953671 [root@sunguru ~]# |
아래는 DHCP Client 구성 후 NIC 구성 파일의 내용입니다. 만약 VI 편집기를 사용하여 수동으로 변경하려면 위 표의 내용 중 빨간색 부분을 삭제하고 아래 표 내용 중 초록색 부분을 추가한 후 network 서비스를 재시작하면 됩니다.
[root@sunguru ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 TYPE=Ethernet UUID=6e26fd44-6b79-4d25-a347-9cd68d433336 ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=dhcp DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0" HWADDR=00:0C:29:56:E3:45 PEERDNS=yes PEERROUTES=yes LAST_CONNECT=1468950671 [root@sunguru ~]# |
3). dhclient 명령을 이용한 IP 주소 받기
dhclient라는 명령을 사용하여 IP 주소 해제 또는 갱신을 할 수 있습니다.. 이것은 윈도우 운영체제에서 ipconfig 명령을 실행하여 자동 할당받은 IP 주소를 해제하고 갱신하는 것과 유사합니다.
운영체제
|
IP 주소 해제
|
IP 주소 갱신
|
윈도우
|
CMD> ipconfig /release
|
CMD> ipconfig /renew |
리눅스
|
# dhclient -r eth0
|
# dhclient eth0 |
아래는 DHCP 서버로부터 자동 할당받은 IP 주소를 해제(반환)하고 새로 갱신하는 예를 보여줍니다.
# tcpdump port 67 or port 68 -e -n
|
[root@sunguru ~]# dhclient -r eth0
[root@sunguru ~]# ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:0C:29:56:E3:45 inet6 addr: fe80::20c:29ff:fe56:e345/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:207 errors:0 dropped:0 overruns:0 frame:0 TX packets:169 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:62119 (60.6 KiB) TX bytes:14167 (13.8 KiB) [root@sunguru ~]# dhclient eth0 [root@sunguru ~]# [root@sunguru ~]# ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:0C:29:56:E3:45 inet addr:192.168.80.105 Bcast:192.168.80.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe56:e345/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:212 errors:0 dropped:0 overruns:0 frame:0 TX packets:173 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:63178 (61.6 KiB) TX bytes:14935 (14.5 KiB) [root@sunguru ~]# |
여기까지 DHCP Client 구성하는 방법에 대해 알아보았습니다. 쉽게 변경하기 위해 nm-connetion-editor GUI 툴을 사용하여 변경하는 것을 권해드리고 싶네요. ^^
다음 게시물에서 CentOS 6.6을 가지고 DHCP 서버를 구성하는 방법에 대해 알아보도록 하겠습니다.
No comments:
Post a Comment