Bootstrap Protocol
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ískat adresu, odkud mohou načíst zaváděcí soubor operačního systému. Původně byl používaný pro bezdiskové stanice unixových systémů (díky kterému se tento protokol hodně používal k bootování), a také tento protokol začaly 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žíván 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ích přímé navázání spojení se sítí.
DHCP (Dynamic Host Configuration Protocol) je vyspělejší protokol založený na BOOTP, je také mnohem efektivnější při realizování spojení. Většina DHCP serverů nabízí 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řes shodné známé porty, DHCP a BOOTP přenosoví agenti je nerozlišují (považují je za zprávy stejného formátu).
Současně s přidělenou IP adresou se BOOTP klient dozví od serveru také název bootovacího souboru (viz formát paketu). Tento soubor si klient stáhne ze serveru pomocí protokolu TFTP a následně zahájí bootování operačního systému.
Formát paketu
Počet oktetů Název pole Popis 1 Operation Kód operace (BOOTREQUEST nebo BOOTREPLY) 1 Hardware Typ Typ hardwarové adresy 1 Hardware Lenght Délka hardwarové adresy 1 Hops 4 Transaction ID ID transakce 2 Seconds Doba (sec.), která uplynula od začátku bootování 2 Flags 4 Client IP Adress IP adresa klienta – pokud zná klient svou IP 4 Your Client IP Address IP adresa klienta – na toto místo ji doplní server 4 Server IP Address IP adresa serveru 4 Gateway IP Address IP adresa gatewaye 16 Clinet Hardware Adress Hardwarová adresa klienta 64 Server Host Name Jméno serveru 128 File Name Jméno bootovacího souboru Vendor Specific Area Další informace pro klienta (adresa DNS atd.)
Další protokoly
Externí odkazy
- Protokoly BOOTP a DHCP: http://technet2.microsoft.com/…
- DHCP, BOOTP: http://www.kasan.net/…