IT Japan

dhclient 사용법 본문

카테고리 없음

dhclient 사용법

swhwang 2016. 3. 23. 21:19
반응형
dhcp 서버에서 IP 할당을 받는 방법으로 dhclient 명령을 이용한 방법이 있다.

해당 명령어의 사용방법은 다음과 같다.

dhclient [Network interface name]

 상기와 같이 사용하며, DHCP 서버로 부터 IP를 할당 받아 네트워크 인터페이스 설정을 진행한다.

dhclient 명령어로 IP를 할당 받았을떄, 네트워크 통신을 사용하는 프로그램에서 문제점이 발생하였다.

발생된 문제점은 다음과 같다.
1. 프로그램 구동 지연
 - 네트워크 패킷 동작이 지연되어 프로그램 동작이 지연됨(gethostbyname() 부분)
2. IP 설정이 지연되는 경우 최장 60초까지 대기

1번 문제점의 경우 DNS 서버의 설정과 관련된다. IP설정이 완료된 상태에서 DNS 서버 설정을 확인하면 다음과 같이 되어 있는 것이 확인 가능하다.

$ cat /etc/resolv.conf

search fugue.com. home.vix.com.
namaserver 127.0.0.1
nameserver xxx.xxx.xxx.xx

상기와 같이 설정된것이 확인 가능하며, 문제가 발생된 부분은 'search fugue.com. home.vix.com.' 부분과 'nameserver 127.0.0.1' 2개 라인 부분이다. 해당 부분의 경우 기본으로 탑재된 dhclient.conf 파일을 사용하면서 추가된 부분으로, 네트워크 동작을 지연시키는 문제점이 발생한다.

상기 1번과 2번 문제점 수정을 위해서는 다음과 같이 'dhclient.conf' 파일을 수정하여 문제점 해결이 가능하다.

$ vi /etc/dhclient.conf
send host-name = pick-first-value(gethostname(), "ISC-dhclient");
send dhcp-client-identifier 1:0:a0:24:ab:fb:9c;
send dhcp-lease-time 3600;
#supersede domain-search "fugue.com", "home.vix.com"; # 해당 부분 제거 - search fugue.com. home.vix.com 제거 됨
#prepend domain-name-servers 127.0.0.1;  # 해당 부분 제거 - nameserver 127.0.0.1 제거 됨
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, host-name;
require subnet-mask, domain-name-servers;
timeout 10;          # 타임 아웃 시간 10 으로 변경. 시간 기준은 초.
retry 3;              # 재시도 횟수 3으로 변경
reboot 10;
select-timeout 5;
initial-interval 2;
script "/etc/dhclient-script";
#media "-link0 -link1 -link2", "link0 link1";  
reject 192.33.137.209;


상기와 같이 /etc/dhclient.conf 파일을 수정하여, 1번과 2번 문제점 수정이 가능합니다.

ttimeout 의 경우 IP 설정중 최대 대기 시간을 설정하게 됩니다. 설정한 시간 이내에 IP할당을 받지 못하면 프로그램이 종료됩니다.

반응형
Comments