DHCP는 BOOTP를 이용하므로
filter에 bootp 라고 하면 된다고 하는데

윈도우 - ipconfig / renew 하니 딱 두개의 패킷이 잡히네 머~



[링크 : http://wiki.wireshark.org/DHCP]
신고
Posted by 구차니

댓글을 달아 주세요

확인은 좀 해봐야겠지만, BOOTP와 TFTP의 연관관계가 궁금해졌다.

일단 bootp는 BOOTstrap Protocol의 약자이고
DHCP는 Dynamic Host Configuration Protocol의 약자이다.
TFTP는 Trivial File Transfer Protocol이며, FTP가 TCP로 전송하는데 반해, TFTP는 UDP를 사용한다.

BOOTP 역시 DHCP와 동일하게 IP를 주어주지만,
DHCP 와는 다르게, 부팅시에만 아이피를 주며 부팅이후에 아이피를 변경하는데 관여하지는 않는다.

아무튼 가장 궁금했던 bootp와 tftp의 연관은, 아래에 설명이 되어있다.

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

  • 클라이언트는 BOOTP 서버에 연결하여 주소를 결정하고 부팅 파일 이름을 선택합니다.
  • 클라이언트는 TFTP(Trivial File Transfer Protocol) 서버에 연결하여 부팅 이미지의 파일을 전송합니다.

[링크 : http://technet.microsoft.com/ko-kr/library/cc781243%28WS.10%29.aspx]
bootp는 아이피랑 부팅 파일을 알려주고
tftp를 통해 부팅 이미지 파일을 보내준다.

윈도우에서는 tftpd32 라는 프로그램이 tftp + bootp의 역활을 했기에 단일 프로그램으로 가능했지만
리눅스에서는 bootp + tftp 의 조합으로 해야할 것으로 보인다.

[링크 : http://d-i.alioth.debian.org/manual/ko.powerpc/ch04s05.html]

group {
         filename "Xncd19r";
         next-server ncd-booter;

         host ncd1 { hardware ethernet 0:c0:c3:49:2b:57; }
         host ncd4 { hardware ethernet 0:c0:c3:80:fc:32; }
         host ncd8 { hardware ethernet 0:c0:c3:22:46:81; }
       }

[링크 : http://www.daemon-systems.org/man/dhcpd.conf.5.html]

be BootP exclude tag list
   bf    Bootfile

bi BootP include tag list
   bs    Bootfile size in 512-octet blocks
   cf    Client FQDN
   cl    (DHCP) Client Identifier (unquoted hex string)

[링크 : http://www.net.princeton.edu/hostmaster/fieldInfo/bootptab.5.html]

머, dhcp에도 bootp에도 부팅용 파일을 설정하는 구문이 있는것 봐서는
dhcp + tftp 조합이나, bootp + tftp 조합으로 PXE를 진행하면 될것으로 추측된다.
신고

'프로그램 사용 > PXE(네트워크 부트)' 카테고리의 다른 글

DHCP / BOOTP / TFTP  (4) 2010.04.27
PXE 부팅하기  (0) 2010.04.25
PXE를 통한 우분투/XP 설치  (0) 2009.12.09
Posted by 구차니
TAG bootp, DHCP, tftp

댓글을 달아 주세요

  1. 꾸준히 공부하시는 모습이 보기 좋습니다.
    공부해야 된다고 책도 사고 자료도 모아 놓지만.. 정작 일에 치여 계획적인 공부가 힘든데..
    물론 핑계라고 한다면 할 말은 없지만요.. ^^;;;

    2010.04.27 18:27 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 글쓴시간을 보시면...
      일하기 싫어서 회사에서 딴진한거랍니다! ㅋㅋ

      2010.04.27 19:14 신고 [ ADDR : EDIT/ DEL ]
  2. 글쓴 시간이 점심시간인데요 뭐..
    점심시간에는 좀 쉬셔야죠.. ^^

    2010.04.27 19:28 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 그냥 일하기 싫어서 빈둥 대다가 한시간 걸려서 쓴거라는 반전?! ㅋㅋ

      2010.04.27 19:54 신고 [ ADDR : EDIT/ DEL ]

Linux2009.06.09 20:40
현재 발견한 방법은

$ ps -ef | grep dhc
root      3144  2824  0 20:17 ?        00:00:00 /sbin/dhclient -d -sf /usr/lib/NetworkManager/nm-dhcp-client.action -pf /var/run/dhclient-eth0.pid -lf /var/lib/dhcp3/dhclient-eth0.lease -cf /var/run/nm-dhclient-eth0.conf eth0

프로세스중에 dhcp 데몬인 dhclient가 구동중인지 확인하는 것과

$ more /etc/resolv.conf
; generated by /sbin/dhclient-script
search private
nameserver 192.168.10.1
nameserver 168.126.63.1
nameserver 168.126.63.2

resolv.conf 파일에 위의 문구를 확인하는 방법이 있다.
문제는..  ubuntu 계열에는 resolv.conf 파일에 위와 같은 표식이 나타나지 않는다는 것.
신고
Posted by 구차니
TAG dhclient, DHCP

댓글을 달아 주세요

Microsoft/Windows2009.02.03 18:10
공유기에서는 특정 MAC 어드레스를 특정 IP로 DHCP 할당을 정하는 기능이 있는데,
윈도우 자체 내장 공유기에서도 그러한 기능이 가능하다고 한다.

기본 게이트웨이, DNS 및 호스트 이름 구성

ICS 클라이언트는 기본 게이트웨이와 DNS 서버에 대해 ICS 호스트를 사용하도록 구성해야 합니다. 이렇게 하면 ICS 호스트가 클라이언트를 위해 인터넷 게이트웨이 역할을 하고 클라이언트를 위해 이름 확인을 수행합니다. Windows XP ICS에서는 ICS가 사용하는 내부 인터페이스의 주소는 항상 192.168.0.1입니다. 따라서 도메인 이름 시스템(DNS) 및 동적 호스트 구성 프로토콜(DHCP) 요청에 대해 이 주소를 사용하도록 정적 클라이언트를 구성해야 합니다.

또한 Windows XP ICS는 항상 MSHOME.NET의 도메인 이름을 사용하므로 클라이언트에 대해 정규화된 도메인 이름을 지정하려면 클라이언트 이름 다음에 ".MSHOME.NET"을 사용해야 합니다. 예를 들어, "COMPUTER1.MSHOME.NET"은 이름이 COMPUTER1인 내부 클라이언트의 정규화된 이름입니다.

정적 클라이언트를 구성하려면 다음 단계를 사용하십시오.

참고: 이 문서에서는 클라이언트 컴퓨터가 Windows XP를 실행하고 있다고 가정합니다. 어떤 운영 체제를 클라이언트에서 실행하는지에 관계 없이 목적은 같지만 실제 프로세스는 다를 수 있습니다.
  1. 시작, 제어판, 네트워크 및 인터넷 연결을 차례로 누른 다음 네트워크 연결을 누릅니다.
  2. 개인 ICS 네트워크에 연결된 네트워크 연결을 마우스 오른쪽 단추로 누른 다음 속성을 누릅니다.
  3. 일반 탭의 이 연결에 다음 항목을 사용 목록에서 인터넷 프로토콜(TCP/IP)을 누른 다음 속성을 누릅니다.
  4. 일반 탭에서 다음 IP 주소 사용을 누릅니다. 항목을 다음과 같이 구성합니다.
    • IP 주소: 이 클라이언트에 대해 선택한 IP 주소(예: 192.168.0.100)
    • 서브넷 마스크: 255.255.255.0
    • 기본 게이트웨이: 192.168.0.1
    • 다음 DNS 서버 주소 사용을 누른 다음 기본 설정 DNS 서버 상자에 192.168.0.1을 입력합니다.
  5. 고급을 누른 다음 DNS 탭을 누릅니다.
  6. 이 연결의 DNS 접미사 상자에 MSHOME.NET을 입력합니다.
  7. 확인을 누릅니다.
  8. 확인을 누릅니다.
이름 확인을 위해 컴퓨터 이름을 적어 둡니다.
  1. 시작을 누르고 제어판을 누른 다음 성능 및 유지 관리를 누르고 시스템을 누릅니다.
  2. 컴퓨터 이름 탭을 누릅니다.
  3. "전체 컴퓨터 이름" 줄의 항목을 적어 둡니다.

    이 문서의 목적을 위해 "전체 컴퓨터 이름" 줄에 나열된 이름에서 첫 번째 마침표 앞(마침표는 제외)에 나오는 부분까지가 컴퓨터 이름에 해당합니다. 예를 들어, "COMPUTER1."이 나열되면 컴퓨터 이름은 COMPUTER1(마침표 제외)입니다.
  4. 열려 있는 모든 대화 상자를 닫습니다.

정적 클라이언트를 Hosts 파일에 추가

정적 구성을 완료하려면 각 정적 클라이언트를 ICS 호스트의 Hosts 파일에 둡니다. Hosts 파일을 사용하면 이름 확인 속도가 증가하고 인터넷에서 DNS 서버로 불필요한 쿼리가 보내지지 않습니다. 인터넷에 전화 접속 연결하는 경우 정적 클라이언트를 Hosts 파일에 추가하면 인터넷 연결을 위해 전화 접속하는 트래픽이 최소화됩니다.
  1. Windows XP 기반 ICS 호스트 컴퓨터에서 Windows 탐색기를 시작하고 다음 폴더를 엽니다.
    %SystemRoot%\System32\Drivers\Etc
  2. 이 폴더에는 사용자가 알고 있어야 하는 두 파일이 들어 있습니다. Hosts.ics 파일은 ICS가 동적으로 구성된 클라이언트에 대한 정보를 저장하는 데 사용됩니다. 연결이나 데이터 손실을 막기 위해 이 파일은 변경하지 마십시오. Hosts 파일(파일 이름 확장명 없음)은 정적으로 구성된 클라이언트에 대한 정보를 추가하는 파일입니다. Hosts 파일을 마우스 오른쪽 단추로 누른 다음 열기를 누릅니다. 목록에서 프로그램 선택을 누른 다음 확인을 누릅니다. 프로그램 목록에서 메모장을 누른 다음 확인을 누릅니다. 메모장이 시작되고 Hosts 파일의 내용이 표시됩니다.
  3. 파일에는 "127.0.0.1 localhost"라는 항목만 들어 있을 것입니다. 삽입 포인터를 마지막 항목 다음의 첫 번째 빈 줄로 이동합니다.
  4. 앞의 항목과 같은 모델에 따라 먼저 정적으로 구성된 클라이언트의 IP 주소를 입력하고 Tab 키를 누른 다음 정규화된 컴퓨터 이름을 입력합니다. 예를 들어, 정적으로 구성된 클라이언트의 IP 주소가 192.168.0.100이고 호스트 이름이 COMPUTER1인 경우 다음과 같이 입력합니다.
    192.168.0.100 COMPUTER1.MSHOME.NET
    IP 주소와 이름을 구분하는 것은 탭 문자라는 사실을 염두에 둡니다.

  5. Enter 키를 두 번 눌러 마지막 항목 다음에 빈 줄을 두 개 만듭니다. 파일을 저장한 다음 메모장을 끝냅니다.
이렇게 하면 정적으로 구성된 클라이언트가 ICS 네트워크에 참가할 수 있도록 구성이 완료됩니다.
[출처 : http://support.microsoft.com/kb/309642/ko]


그리고 DHCP는 무조건 192.168.0.1 대역을 할당 하도록 되어 있는데, 이를 변경하는 방법은 아래와 같다.
ICS 호스트에서 DHCP 서비스의 IP 범위를 변경하려면 다음과 같이 하십시오.
  1. 레지스트리 편집기를 사용하여 다음 레지스트리 키에서 IntranetInfo 값의 데이터 값을 수정합니다.
    Hkey_Local_Machine\System\CurrentControlSet\Services\ICSharing\Settings\General
    나열된 첫 번째 숫자는 해당 ICS 호스트의 내부 IP 주소의 IP 주소입니다. 두번째 숫자는 쉼표로 구분된 서브넷 IP 주소입니다. 새 범위의 첫 번째 IP 주소를 입력하고, 쉼표로 구분한 다음 서브넷 마스크(예: 169.254.0.1,255.255.0.0.)를 입력합니다.
  2. 다음 레지스트리 키에서 Start 값의 데이터 값을 수정합니다.
    Hkey_Local_Machine\System\CurrentControlSet\Services\ICSharing\Addressing\Settings
    값을 선택한 IP 범위의 두번째 주소로 변경합니다. 이 주소 값은 IntranetInfo 키에 사용되는 IP 주소보다 작거나 같을 수 없습니다.
  3. 같은 레지스트리 키에서 Stop 값의 데이터 값을 수정합니다. 선택한 IP 범위의 마지막 IP 주소를 입력합니다.
  4. 시작을 누르고 설정을 가리키고 제어판을 누른 다음 네트워크를 두 번 누릅니다.
  5. TCP/IP(홈)-> 네트워크 어댑터를 두 번 누릅니다.
  6. IP 주소 탭의 IP 주소 지정 상자에 IntranetInfo 값에 대해 지정한 값을 입력합니다. 서브넷 마스크 상자에서 레지스트리의 서브넷 마스크에 사용한 값을 입력합니다.
  7. 확인을 누른 다음 다시 확인을 누릅니다. 컴퓨터를 다시 시작하라는 내용의 메시지가 나타나면 컴퓨터를 다시 시작합니다.
  8. 컴퓨터가 다시 시작된 후 1분동안 기다립니다.
  9. 각 클라이언트에서 시작을 누르고, 실행을 누르고, winipcfg를 입력한 다음 확인을 누릅니다.
  10. 모두 해제를 누른 다음 모두 갱신을 누릅니다.
앞에서 설명한 방법으로 이러한 특정 ICS 설정을 변경할 수는 있지만 ICS에 대한 IP 설정을 기본 구성과 다르게 사용자 지정하는 것은 Microsoft 고객 기술지원부에서 지원하지 않습니다.
[출처 : http://support.microsoft.com/?scid=kb%3Bko%3B230148&x=9&y=12]
신고
Posted by 구차니

댓글을 달아 주세요