Network

DHCP & BOOTP & RARP

연탄집게 2007. 9. 18. 19:33
* 정 의 *

RARP
(Reverse Address Resolution Protocol)

RARP는 근거리통신망 내에 물리적으로 존재하는 장치가 게이트웨이ARP 목록이나 캐시로부터 자신의 IP 주소를 알아내기 위한 확인 요청을 하는데 사용되는 프로토콜이다. 네트웍 관리자는 근거리통신망의 게이트웨이 라우터 내에 물리적인 장치가 그에 상응하는 IP주소를 지칭하도록 목록표를 작성한다. 새로운 장치가 설정되었을 때, RARP 클라이언트 프로그램은 라우터 상의 RARP 서버에게 그 장치를 위한 IP 주소를 보내주도록 요청한다. RARP 서버는 라우터 목록 내에 새로운 엔트리가 설정되었다고 가정하여, 그 장치에게 IP 주소를 답신해 주게 된다.

RARP는 이더넷, FDDI, 토큰링 등의 근거리통신망에서 사용할 수 있는 프로토콜이다.


DHCP (Dynamic Host Configuration Protocol)

DHCP[디에이치씨피]네트웍 관리자들이 조직 내의 네트웍 상에서 IP 주소를 중앙에서 관리하고 할당해줄 수 있도록 해주는 프로토콜이다. 인터넷의 TCP/IP 프로토콜에서는, 각 컴퓨터들이 고유한 IP 주소를 가져야만 인터넷에 접속할 수 있다. 조직에서 컴퓨터 사용자들이 인터넷에 접속할 때, IP 주소는 각 컴퓨터에 반드시 할당되어야만 한다. DHCP를 사용하지 않는 경우에는, 각 컴퓨터마다 IP 주소가 수작업으로 입력되어야만 하며, 만약 컴퓨터가 네트웍의 다른 부분에 속한 장소로 이동되면 IP 주소를 새로이 입력해야 한다. DHCP는 네트웍 관리자가 중앙에서 IP 주소를 관리하고 할당하며, 컴퓨터가 네트웍의 다른 장소에 접속되었을 때 자동으로 새로운 IP 주소를 보내줄 수 있게 해준다.

DHCP는 주어진 IP 주소가 일정한 시간동안만 그 컴퓨터에 유효하도록 하는 "임대" 개념을 사용한다. 임대시간은 사용자가 특정한 장소에서 얼마나 오랫동안 인터넷 접속이 필요할 것인지에 따라 달라질 수 있다. DHCP는 사용자들이 자주 바뀌는 학교와 같은 환경에서 특히 유용하다. DHCP는 사용 가능한 IP 주소의 개수보다 더 많은 컴퓨터가 있는 경우에도 IP 주소의 임대시간을 짧게 함으로써 네트웍을 동적으로 재구성할 수 있다.

DHCP는 영구적인 IP 주소를 필요로 하는 웹서버에 대해서는 정적인 주소를 제공한다.

DHCP는 네트웍 IP 관리 프로토콜인 BOOTP의 대안으로 사용된다. DHCP가 더욱 진보된 프로토콜이지만, 두 개의 프로토콜 모두 일반적으로 사용된다. 어떤 조직에서는 두 개의 프로토콜 모두를 사용하지만, 동일한 조직에서 그것을 언제, 어떻게 사용할지를 이해하는 것이 무엇보다 중요하다. 윈도우NT와 같은 몇몇 운영체계에는 DHCP 서버가 딸려 나온다. DHCP 또는 BOOTP 클라이언트는 네트웍이 구성될 수 있도록 각 컴퓨터에 위치하는 프로그램이다.


BOOTP (Bootstrap Protocol) ; 초기 적재 통신 규약

BOOTP는 네트웍 사용자가 자동으로 구성되고(IP 주소를 받게), 사용자의 간여 없이도 부트되는 운영체계를 가지고 있게 해주는 프로토콜이다. X 터미널 등과 같이 하드디스크를 갖지 않은 장치의 설정 정보를 자동적으로 할당, 관리하기 위해서 개발되었다. 네트웍 관리자에 의해 관리되는 BOOTP 서버는, 일정 시간동안 IP 주소를 자동으로 할당한다.

BOOTP는 좀더 진보된 네트웍 관리 프로토콜인 DHCP의 기반이 된다.


BOOTP vs DHCP


BOOTP/DHCP의 유사성

BOOTP와 DHCP의 관계로 인해 두 프로토콜 모두 일부 정의 특성을 공유합니다. 공통 요소는 다음과 같습니다.


서버와 클라이언트 간에 메시지를 교환하기 위해 사용하는 형식 구조

BOOTP와 DHCP는 거의 똑같은 요청 메시지(클라이언트에서 전송)와 응답 메시지(서버에서 전송)를 사용합니다. 이들 프로토콜에 있는 메시지는 576바이트의 단일 UDP(사용자 데이터그램 프로토콜) 데이터그램을 사용하여 각 프로토콜 메시지를 묶습니다. 메시지 머리글은 선택적인 데이터 전송에 사용되는 마지막 메시지 머리글 필드를 제외하면 BOOTP와 DHCP에서 동일합니다. BOOTP에서는 이 선택적 필드를 공급업체별 영역이라고 하고 64옥텟으로 제한됩니다. DHCP에서는 이 영역을 옵션 필드라고 하고 최대 312옥텟의 DHCP 옵션 정보를 운반할 수 있습니다.


클라이언트/서버 통신에 잘 알려진 UDP 포트 사용

BOOTP와 DHCP 모두 서버와 클라이언트 간에 메시지를 전송하고 수신할 때 예약된 같은 프로토콜 포트를 사용합니다. BOOTP 서버와 DHCP 서버 모두 67번 UDP 포트를 사용하여 클라이언트 요청 메시지를 수신하고 받습니다. BOOTP와 DHCP 클라이언트는 보통 BOOTP 서버나 DHCP 서버에서 메시지 응답을 받아들이기 위해 68번 UDP 포트를 예약합니다.

DHCP와 BOOTP 메시지는 거의 동일한 포맷 형식과 패킷 구조를 사용하고 대개 잘 알려진 같은 서비스 포트를 사용하므로 BOOTP 및 DHCP 릴레이 에이전트 프로그램은 일반적으로 BOOTP와 DHCP 메시지를 구분하지 않고 본질적으로 같은 메시지 형식으로 처리합니다.


구성 서비스의 필수 부분인 IP 주소 배포

BOOTP와 DHCP가 시작 중에 클라이언트에 IP 주소를 할당하지만 다른 할당 방법을 사용합니다. BOOTP는 보통 각 클라이언트에 단일 IP 주소를 고정 할당하여 이 주소를 BOOTP 서버 데이터베이스에 영구적으로 보존합니다. DHCP는 보통 사용 가능한 IP 주소를 동적으로 임대 할당하여 각 DHCP 클라이언트 주소를 DHCP 서버 데이터베이스에 일시적으로 보존합니다.


BOOTP/DHCP의 차이점

BOOTP와 DHCP에서 호스트를 구성하는 방법에는 상당한 차이가 있습니다. 다음 표에서는 서로 다른 두 프로토콜의 기능을 비교하고 대조합니다.


 BOOTP

 DHCP


  DHCP보다 먼저 만들어졌습니다.


  BOOTP보다 나중에 만들어졌습니다.


  제한된 부팅 기능이 있고 디스크가 없는 워크스테이션을 구성하기 위한 프로토콜입니다.


 

  로컬 하드 드라이브와 완전한 부팅 기능이 있으며 위치가 자주 바뀌는 네트워크 컴퓨터(예: 휴대용)를 구성하기 위한 프로토콜입니다.



  동적 BOOTP의 IP 주소 임대 만료일은 기본적으로 30일입니다.


  DHCP의 IP 주소 임대 만료일은 기본적으로 8일입니다.

  공급업체 확장이라고 하는 제한된 수의 클라이언트 구성 매개 변수를 지원합니다.


  옵션이라고 하는 크고 확장 가능한 클라이언트 구성 매개 변수 집합을 지원합니다.

  다음과 같이 2 단계 bootstrap 구성 프로세스를 설명합니다.

1. 클라이언트는 BOOTP 서버에 연결하여 주소를 결정하고 부팅 파일 이름을 선택합니다.

2. 클라이언트는 TFTP(Trivial File Transfer Protocol) 서버에 연결하여 부팅 이미지의 파일을 전송합니다.


 

  DHCP 클라이언트가 그 IP 주소를 결정하고 네트워크 작업에 필요한 모든 초기 구성 세부 사항을 얻기 위해 DHCP 서버와 협상하는 단일 단계 부팅 구성 프로세스를 설명합니다.


  BOOTP 클라이언트는 시스템이 다시 시작할  때를 제외하고는 BOOTP 서버로 구성을 다시 바인딩하거나 갱신하지 않습니다.


 

  DHCP 클라이언트는 DHCP 서버로 구성을 다시 바인딩하거나 갱신할 때 시스템을 다시 시작하지 않습니다. 대신 클라이언트는 DHCP 서버에 임대된 주소 할당을 갱신하기 위해 설정된 시간 간격마다 자동으로 리바인딩 상태가 됩니다. 이 프로세스는 백그라운드에서 이루어지므로 사용자가 인식할 수 없습니다.


출처 : http://www.microsoft.com/technet/prodtechnol/windowsserver2003/ko/library/ServerHelp/8e75e9f0-72e0-4b06-b6dd-abf88e652d3a.mspx?mfr=true






BOOTP/RARP의 차이점


RARP  : 이더넷 카드에 직접 접근하여 IP를 알아냄. IP세션만 이용

             MAC계층과 물리계층에서 IP계층으로 통신

BOOTP : UDP 세션을 이용하여 IP를 알아냄. 크기도 작아 응용프로그램과 함께 사용될 수 있음.

            네트워크상에서 BOOTP는 IP를 모든 워크스테이션에 Broadcasting 함.

            UDP세션을 사용하기 때문에 신뢰성 보장을 위하여 시간제한을 둠