Home > Common Problem > What protocol is bootstrap?

What protocol is bootstrap?

青灯夜游
Release: 2021-12-28 14:38:28
Original
2426 people have browsed it

The full name of the bootstrap protocol is "Bootstrap Protocol", which means "bootstrap protocol" in Chinese. It is a protocol based on "UDP/IP". This protocol is mainly used for the client to obtain its own IP address from the server. The server IP address and boot image file name.

What protocol is bootstrap?

The operating environment of this tutorial: Windows 7 system, DELL G3 computer

BOOTP: Bootstrap Protocol

Bootstrap Protocol (BOOTP) is a protocol based on UDP/IP. This protocol allows a booting host to be configured dynamically without user supervision. BOOTP is mainly used for the client to obtain its own IP address, the server's IP address and the boot image file name from the server. Other configuration information, such as the local subnet mask, local time offset, default router address, and various Internet server addresses, can be communicated to clients using the BOOTP protocol.

BOOTP uses two different well-known communication ports UDP67/68. UDP67 is used for servers and UDP68 is used for BOOTP clients. When the client starts, it does not have an IP address yet. At this time, the BOOTP client sends an IP address query request packet named BOOTREQUEST in the form of a broadcast. This request packet contains the client's physical address and may also have an IP address. , if it already exists. Clients send broadcasts using the address 255.255.255.255. This special address is called a limited broadcast address. The client then waits for a response from the server, and if no response is received within a specific period of time, the client reissues the request.

The server responds to client requests through bootreply packets. The request can contain a "generic" boot file name, for example, unix or ethertip. But when the server sends a boot reply packet, it replaces this field with the exact path name of the corresponding boot file. To determine the pathname, the server queries its own database. This database associates client addresses, requested file names, and special boot files customized for the user. If the request (bootrequest) file name is empty, the server returns a file name field to indicate the default file that the client needs to load.

When the client IP address is unknown, the server must have a database corresponding to the hardware address and IP address. The client IP address is also put into a field in "bootreply".

BOOTP is similar to RARP, but RARP only runs on the data link layer of the LAN network; while the UDP/IP-based configuration protocol BOOTP provides more configuration information and allows the entire IP network to be dynamically configured. . In summary, BOOTP and its extensions became the basis for Dynamic Host Configuration Protocol (DHCP).

Protocol structure

##OpXidSecsCiaddrYiaddrSiaddrGiaddrChaddr (16 bytes) sname (64 bytes) File (128 bytes) Option (variable)
8 ##16 24 32
Htype Hlen Hops
Flags
Op - Message operation code, which can be a boot request (BOOTREQUEST) or a boot reply (BOOTREPLY)
  • Htype – Hardware address type
  • Hlen – Hardware address length
  • Xid – Transaction ID.
  • Secs – After the client starts an address request or renewal Elapsed time (seconds)
  • Flags – Flags
  • Ciaddr – Client IP address
  • Yiaddr – “Your” (client) IP address
  • Siaddr – The IP address of the next available server in bootstrap
  • Giaddr – The IP address of the proxy when booting through the proxy
  • Chaddr – The client hardware address
  • Sname - other available server host name, null terminator
  • File - boot file name, null terminator; attribute name or null value in DHCPDISCOVER package, fully qualified directory path name in DHCPOFFER package
  • Options – Optional parameter field
  • BOOTP is defined by IETF (http://www.ietf.org) RFC 951 and RFC 1542

For more related knowledge, please visit

FAQ

column!

The above is the detailed content of What protocol is bootstrap?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template