Navrhněte a implementujte program pracující nad rozhraním ovladačů síťové karty (Win), RAW socket (Linux), který si zjistí ip-adresu počítače pomocí BOOTP/DHCP protokolu (RFC951/RFC2131) a dále nabídne jednu z následujících služeb (většina nad UDP (RFC768) nebo ICMP (RFC792)). Implementujte zjednodušenou verzi IP (RFC791, RFC1071) bez fragmentace a IP-options.
Příklad programu pro linux posílající ARP dotaz arp.c
Příklady programů pro získání MAC adresy v OS Windows pomocí služeb Netbios adr_netbios.zip a SNMP adr_snmp.zip.
Jelikož je přístup k RAW socketům omezen pouze na superuživatele, je potřeba v prostředí učebny K308 použít program zpřístupňující RAW sockety normálnímu uživateli. Aby bylo možné program používat, je nutné použít upravené jádro (volba Linux-cap při zavádění Linuxu). Program který chcete spustit s příslušnými právy uveďte jako parametr programu netcap.
Tedy místo:
arp eth0 147.32.81.174 147.32.81.175
spustíte:
capnet arp eth0 147.32.81.174 147.32.81.175
Ukázka jak řešit například DNS dotaz:
Ve zdrojovém souboru budou uvedené použité zdroje, pokud vycházíte ze starší úlohy tak musí být poznat co bylo hotové a co je vaše práce.
Odevzdání na service.felk.cvut.cz do vašeho projektového adresáře (bude vytvořen později).
Uložit ve formě zkomprimovaného zip souboru, název bude ulohaX_<prijmeni>_<prijmeni spoluautora>, tzn. ulohy dělané ve dvojici budou na service uloženy dvakrát.
Odevzdávané úloze rozumí autor i spoluautor.
~~DISCUSSION~~