<!doctype linuxdoc system> <article> <title> DHCPd mini HOWTO <author>저자 : Paul Makeev <<url url="mailto: mac@RoSprint.net" name="mac@RoSprint.net" >> <date> v1.2, 1997.6.24 <trans> 역자 : 심상현 <<url url="mailto: artsilly@ee.korea.ac.kr" name="artsilly@ee.korea.ac.kr" >> <tdate> v1.2-0.9, 1998.3.25 <abstract> 이문서는 DHCPd를 사용하기 위한 간략한 정보와 내용을 담고있는 mini HOWTO 이다. </abstract> <toc> <sect> 소개 <p>DHCP(Dynamic Host Configuration Protocol)는 각각의 호스트의 네트워크 파라미터 및 설정 사항들을 서버의 세팅을 사용하여 원격으로 설정해주는 프로토콜이다. DHCP 는 BOOTP와 호환을 유지한다. 이점에 대해서는 RFC 2131(재분류 이전의 RFC 1531) 를 참고하기 바란다. 그밖의 문건들에 대해서는 이문서 말미의 URL들을 이용하여 찾 아볼 수 있다. 이 미니-하우투 문서는 DHCP 서버 데몬에 대한 내용이다. DHCP 클라이언트 데몬에 대해서는 DHCPcd-mini-HOWTO를 참고하기 바란다. DHCPcd 패키지는 다음 사이트에서 쉽게 구할 수 있다. 배포 사이트: <url url="ftp:// ftp.kobe-u.ac.jp /pub/PC-UNIX/Linux/network/dhcp 32kB dhcpcd-0.65.tar.gz" name="ftp.kobe-u.ac.jp /pub/PC-UNIX/Linux/network/dhcp 32kB dhcpcd-0.65.tar.gz" > 보조 사이트: <url url="http://sunsite.unc.edu /pub/Linux/system/network/daemons 32kB dhcpcd-0.65.tar.gz" name="sunsite.unc.edu /pub/Linux/system/network/daemons 32kB dhcpcd-0.65.tar.gz" > </p> <sect> 리눅스에서의 DHCP 서버 <p>흔히 말하는 Unix스타일의 OS에서 사용할 수 있는 DHCP 서버의 종류는 다양하다. 이것들은 상용 또는 무료소프트웨어의 형태로 배포된다. 이 하우투 문서를 작성하며 Paul Vixie/ISC DHCPD 서버 데몬을 이용하여 테스트 하였다. 이 패키지는 리눅스에 서만 쓸 수 있도록 제작된 것은 아니지만 별 고생없이 컴파일하고 인스톨 할 수 있 다. 다음 사이트에서 제공되는 최신버전을 이용하거나 이 문서를 작성하며 확인된 5.0.9-베타버전을 구해서 사용하면 된다. 배포 사이트 :<url url=" ftp://ftp.isc.org/isc/dhcp/DHCPD-BETA-5.16.tar.gz" name="ftp.isc.org/isc/dhcp/DHCPD-BETA-5.16.tar.gz" > 5.0.9-베타를 구할 수 있는곳 : <url url="http://www.isc.org/dhcp/dhcp-beta.html" name="www.isc.org/dhcp/dhcp-beta.html" > <url url="ftp://ftp.vix.com" name="ftp.vix.com" >에서는 더이상 DHCPD 패키지를 구할 수 없을 것이다.(오래된 하우투 문 서를 보고 아직도 이 사이트를 찾아오는 사람이 있는지도 모르겠다. :-) ftp.isc.org에서 패키지를 찾아 사용하기 바란다. * 컴파일 하고 사용하기전에 반드시 README 화일을 숙지하기 바란다. 리눅스의 경 우에 컴파일하는 방법에 대해 나와있을 것이다. </p> <sect> 커널 설정하기 <p>커널에서의 MULTICAST, Socket Filtering 옵션을 활성화 시켜주어야 한다. 물론 TCP/IP 네트워크 설정 을 해주어야 하는 것은 당연한 일이다. ^.^ </p> <sect>설정하기 <p>[<url url="mailto: artsilly@ee artsilly" name="artsilly@ee artsilly" >]# ifconfig -a 위 명령행을 통해서 다음과 비슷한 내용을 볼 수 있을 것이다. <verb> eth0 Link encap:10Mbps Ethernet HWaddr 00:C0:4F:D3:C4:62 inet addr:183.217.19.43 Bcast:183.217.19.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2875542 errors:0 dropped:0 overruns:0 TX packets:218647 errors:0 dropped:0 overruns:0 Interrupt:11 Base address:0x210 </verb> 만일 3번째 라인에 있는 MULTICAST라는 단어가 보이지 않는다면 3절에서 언급한 커 널 설정을 해주어야 한다. MULTICAST가 되고 있는 커널이라면 다음의 명령을 통해 아래와 비슷한 내용이 나와야 한다. [<url url="mailto: artsilly@ee artsilly" name="artsilly@ee artsilly" >]# netstat -rn <verb> Kernel routing table Destination Gateway Genmask Flags Metric Ref Use Iface 255.255.255.255 0.0.0.0 255.255.255.255 UH 0 0 101 eth0 </verb> 이 내용은 멀티캐스트 라우팅을 설정해 놓아야한다. </p> <sect>멀티캐스트의 설정 및 그 문제점 <p> 다음의 명령행 [<url url="mailto: artsilly@ee artsilly"name="artsilly@ee artsilly">]# route add -host 255.255.255.255 으로 4절에서 말한 멀티캐스트을 세팅할 수 있다. 만약 이경우 "Unknown host"라는 에러가 나온다면 "route add -host hostname eth0" 같은 명령보단 이 주소를 /etc/hosts 화일에 첨가하기를 바란다. 정상적으로 동작하지 않는다면 커널을 최신 버전으로 교체하던가 새로운 네트워크 유틸리티를 구하여야 할 것이다. </p> <sect> DHCPD 설정 <p> 배포되는 패키지에 포함된 문서를 꼼꼼히 읽기 바란다. 설정에 대한 내용은 지금 다루기에는 너무 복잡하다. </p> <sect> 두개이상의 이더넷 카드에서 DHCPD를 사용하기 <p> DHCPD 메일링 리스트에 의하면 최신 안정 커널인 2.0.31과 DHCPD의 최신버전인 5.0.15를 이용하여 2개이상의 물리적 인터페이스를 사용할 수 있다고 한다. 2.0.31 의 커널에서 쓰는 SO_BINDTODEVICE 코드를 이용하여 하위레벨의 물리적인 인터페이 스를 구분하여 사용할 수 있다한다. 결국 최신버전의 DHCPD에서는 이것을 이용하여 두개의 인터페이스를 사용할 수 있는 것이다. 그러나 이 방법은 아직도 베타버전임 을 기억해야 한다. 나역시도 확인해 보지 못했지만 다음버전의 HOWTO 문서엔 좀더 정리된 정보를 줄 수 있을 것이다. </p> <sect> 동적 도메인 네임 서비스(Dynamic DNS) <p> DNS와 DHCP 서버를 함께 사용함으로서 도메인 네임을 동적으로 할당하는 것은 매우 고무적이며 권장할 만한 방법이다. RFC 2136이나 2137을 참고하도록 한다. 몇몇 DHCP서버와 DNS 서버는 DNS 정보를 효과적으로 갱신할 수 있는 효율적인 메카니즘을 제공한다. ISC에서 개발되고 있는 BIND v.8에서는 BIND내부에서 동적 갱신(Dynamic Update)를 할 수 있는 방법을 제공하고 있다. 조만간 DHCPD 와 BIND가 효과적으로 결합되기를 기대한다. BIND는 다음의 주소에서 구할 수 있다. BIND v.8 URL: <url url="http://www.isc.org/bind.html" name="www.isc.org/bind.html"> 약간 개인적인 이야기를 하자면 현재 DHCP와 DNS 테이블에 호스트 네임을 자동으로 추가하는 Python 프로그램을 작성하고 있다. RFC에서 권장하는 사항은 아니지만 아 주 지저분하고 귀찮은 일을 해준다. 정보가 필요한 사람은 위의 주소로 메일을 보내 주기 바란다. </p> <sect> 여러 프로그램을 구할 수 있는 곳 <p> <url url=" http://www.isc.org/dhcp.html" name="www.isc.org/dhcp.html"> - ISC DHCP 홈페이지. DHCPD에 대한 많은 것을 얻을 수 있다. 개인적으로 좋아하는 사이트이다. <url url="http://www.isc.org/bind.html" name="www.isc.org/bind.html" > - BIND v.8 의 정보를 얻을 수 있다. <url url="http://www-leland.stanford.edu/%7Ellurch/win95netbugs/faq-c.html" name="www-leland.stanford.edu/%7Ellurch/win95netbugs/faq-c.html" > - 윈도우즈 95 시스템의 네트워크 세팅에 대한 정보들 <url url="http://www.bucknell.edu/~droms/dhcp/index.html" name="www.bucknell.edu/~droms/dhcp/index.html" > - Ralph Droms가 제공하는 훌륭한 DHCP에 대한 FAQ와 링크들 <url url="http://web.syr.edu/~jmwobus/comfaqs/dhcp.faq.html" name="web.syr.edu/~jmwobus/comfaqs/dhcp.faq.html"> - John Wobus가 제공하는 DHCP 일반적인 FAQ와 정보들 메일링 리스트 <url url="mailto: dhcp-server@fugue.com" name="dhcp-server@fugue.com" > - ISC/Vixie DHCPD 에 대한 메일링 리스트 <url url="mailto: dhcp-v4@bucknell.edu" name="dhcp-v4@bucknell.edu">- bucknell DHCPD 에 대한 메일링 리스트 </p> </article>