>  기사  >  부트스트랩은 어떤 프로토콜인가요?

부트스트랩은 어떤 프로토콜인가요?

青灯夜游
青灯夜游원래의
2021-12-28 14:38:282377검색

부트스트랩 프로토콜의 전체 이름은 중국어로 "부트스트랩 프로토콜"을 의미하는 "UDP/IP"를 기반으로 하는 프로토콜입니다. 이 프로토콜은 주로 클라이언트가 자체 IP 주소를 얻는 데 사용됩니다. 서버에서 서버의 IP 주소와 부팅 이미지 파일 이름을 가져옵니다.

부트스트랩은 어떤 프로토콜인가요?

이 튜토리얼의 운영 환경: Windows 7 시스템, DELL G3 컴퓨터

BOOTP: 부트스트랩 프로토콜

부트스트랩 프로토콜(BOOTP)은 UDP/IP 기반 프로토콜입니다. 이 프로토콜을 사용하면 부팅 호스트를 사용자 감독 없이 동적으로 구성할 수 있습니다. BOOTP는 주로 클라이언트가 자신의 IP 주소, 서버의 IP 주소 및 부팅 이미지 파일 이름을 서버로부터 가져오는 데 사용됩니다. 로컬 서브넷 마스크, 로컬 시간 오프셋, 기본 라우터 주소 및 다양한 인터넷 서버 주소와 같은 기타 구성 정보는 BOOTP 프로토콜을 사용하여 클라이언트에 전달될 수 있습니다.

BOOTP는 잘 알려진 두 가지 통신 포트 UDP67/68을 사용합니다. UDP67은 서버에 사용되고 UDP68은 BOOTP 클라이언트에 사용됩니다. 클라이언트가 시작되면 아직 IP 주소가 없습니다. 이때 BOOTP 클라이언트는 BOOTREQUEST라는 IP 주소 쿼리 요청 패킷을 브로드캐스트 형식으로 보냅니다. 이 요청 패킷에는 클라이언트의 물리적 주소가 포함될 수도 있습니다. IP 주소. 이미 존재하는 경우. 클라이언트는 주소 255.255.255.255를 사용하여 브로드캐스트를 보냅니다. 이 특수 주소를 제한된 브로드캐스트 주소라고 합니다. 그런 다음 클라이언트는 서버의 응답을 기다리고, 특정 시간 내에 응답이 수신되지 않으면 클라이언트는 요청을 다시 발행합니다.

서버는 bootreply 패킷을 통해 클라이언트 요청에 응답합니다. 요청에는 unix 또는 ethertip과 같은 "일반" 부팅 파일 이름이 포함될 수 있습니다. 그러나 서버가 부팅 응답 패킷을 보낼 때 이 필드를 해당 부팅 파일의 정확한 경로 이름으로 바꿉니다. 경로 이름을 결정하기 위해 서버는 자체 데이터베이스를 쿼리합니다. 이 데이터베이스는 클라이언트 주소, 요청된 파일 이름 및 사용자에 맞게 사용자 정의된 특수 부팅 파일을 연결합니다. 요청(bootrequest) 파일 이름이 비어 있으면 서버는 클라이언트가 로드해야 하는 기본 파일을 나타내는 파일 이름 필드를 반환합니다.

클라이언트 IP 주소를 알 수 없는 경우 서버에는 하드웨어 주소 및 IP 주소에 해당하는 데이터베이스가 있어야 합니다. 클라이언트 IP 주소도 "bootreply"의 필드에 입력됩니다.

BOOTP는 RARP와 유사하지만 RARP는 LAN 네트워크의 데이터 링크 계층에서만 실행되는 반면 UDP/IP 기반 구성 프로토콜 BOOTP는 더 많은 구성 정보를 제공하고 전체 IP 네트워크를 동적으로 구성할 수 있도록 합니다. 요약하면, BOOTP와 그 확장은 DHCP(동적 호스트 구성 프로토콜)의 기초가 되었습니다.

프로토콜 구조

8 16 24 32
Op Htype Hlen Hops
Xid
Secs Flags
Ciaddr
Yiaddr
Siaddr
Giaddr
Chaddr(16바이트 )
sname(64바이트)
파일( 128바이트)
Option(변수)
  • Op – 부팅 요청(BOOTREQUEST) 또는 부팅 응답(BOOTREPLY)일 수 있는 메시지 작업 코드
  • Htype – 하드웨어 주소 유형
  • Hlen – 하드웨어 주소 길이
  • Xid – 트랜잭션 ID
  • Secs – 클라이언트가 주소 요청 또는 갱신을 시작한 이후 경과된 시간(초)
  • Flags – 플래그
  • Ciaddr – 클라이언트 IP 주소
  • Yiaddr – “Yours”(클라이언트) IP 주소
  • Siaddr – 부트스트랩에서 다음으로 사용 가능한 서버의 IP 주소
  • Giaddr – 프록시를 통해 부팅할 때 프록시의 IP 주소
  • Chaddr – 클라이언트 하드웨어 주소
  • Sname – 기타 사용 가능한 서버 호스트 이름, null 종결자
  • 파일 - 부팅 파일 이름, null 종결자, DHCPDISCOVER 패키지의 null 값, DHCPOFFER 패키지의 정규화된 디렉터리 경로 이름
  • Options - IETF(http://www.ietf.org)의 선택적 매개 변수 필드

BOOTP RFC 951 및 RFC 1542 정의

더 많은 관련 지식을 보려면 FAQ 칼럼을 방문하세요!

위 내용은 부트스트랩은 어떤 프로토콜인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.