Přeskočit na obsah

Bootstrap Protocol

Z Wikipedie, otevřené encyklopedie

Bootstrap Protocol neboli BOOTP je UDP protokol počítačových sítí používaný pro automatické získávání IP adres z BOOTP serveru v lokální síti. To se obvykle získává během bootovacího procesu když se spouští počítač. BOOTP server přidělí každému klientovi IP adresu z databáze adres. BOOTP je definovaný v RFC 951.

BOOTP umožňuje bezdiskovým pracovním stanicím získání adresy odkud mohou načíst zaváděcí soubor operačního systému. Původně byl používaný pro bezdiskové stanice Unix-like (díky kterému se tento protokol hodně používal k bootování) a také tento protokol začali používat některé společnosti ve svých sítových klientech k automatickému nastavením sítě (např. Windows) při zapojení nového počítače do sítě.

Původně byl také tento protokol využívaný pro první nastavení síťového spojení z diskety, byl též implementován do BIOSu některých sítových karet a také do mnoha základních desek, umožňující přímé navázání spojení se sítí.

DHCP (Dynamic Host Configuration Protocol) je vyspělejší protokol založený na BOOTP, ale je mnohem efektivnější při realizování spojení. Většina DHCP serverů nabízejí i podporu BOOTP.

Princip

Administrátor sítě vytváří konfigurační soubor, kde nastaví parametry pro všechny zařízení zapojené v lokální síti (síťové karty). Musí tedy udržovat databázi na bootp serveru a ručně do ní přidávat zařízení.
Startující stanice (bootp client – port 68) vytvoří dotaz „kdo jsem?“ a pomocí UDP ho odešle na IP adresu 255.255.255.255 (lokální broadcast – je odeslán na všechny zařízení v síti).
BOOTP server (port 67) po přijetí dotazu prohledá tabulku a najde-li v ní odpovídající MAC adresu tazatele, odešle mu z tabulky potřebná data pro nastavení síťové karty (IP adresu, masku podsítě, adresnu DNS serveru, cestu k serveru a souboru ze kterého má nabootovat operační systém, atd.). IP adresa přidělená zařízení je přidělená nastálo. To znamená že každé zařízení v síti musí mít jeden profil na BOOTP serveru a zabírá pro sebe jenu konkrétní IP adresu, která nemůže být přidělená jinému zařízení v síti (ani v případě že dané zařízení není zrovna připojeno)
Ke vzájemné komunikaci serverů s klienty používají protokoly BOOTP i DHCP stejné porty. Servery DHCP a BOOTP přijímají požadavky od klientů pomocí portu UDP 67. Síťoví klienti používající protokoly BOOTP a DHCP si pro příjem odpovědí do serverů většinou zamlouvají port UDP 68. Jelikož oba protokoly komunikují pomocí zpráv s téměř stejnou strukturou paketů, které také většinou posílají pře shodné známé porty, DHCP a BOOTP přenosoví agenti je nerozlišují (považují je za zprávy stejného formátu).


Formát paketu

Počet oktetů 1 1 1 1 4 2 2 4 4 4 4 16 64 128
Význam pole Operation Hardware Typ Hardware Lenght Hops Transaction ID Seconds Flags Client IP Adress Your Client IP Address Server IP Address Gateway IP Address Clinet Hardware Adress Server Host Name File Name Vendor Specific Area

Op - kód operace (BOOTREQUEST nebo BOOTREPLY)
Htype - typ hardwarové adresy
Hlen - délka hardwarové adresy
Xid - ID transakce
Secs - doba (sec.), která uplynula od začátku bootování
Flags - flagy
Ciaddr - IP adresa klienta – pokud zná klient svou IP
Yiaddr - IP adresa klienta – na toto místo ji doplní server
Siaddr - IP adresa serveru
Giaddr - IP adresa Gate Way
Chaddr - hardwarová adresa klienta
Sname - jméno serveru
File- jméno bootovacího souboru
Vendor Specific Area - další informace pro klienta (adresa DNS atd.)

Další protokoly

DHCP
ARP
RARP

Externí odkazy

Protokoly BOOTP a DHCP
DHCP, BOOTP