This is an old revision of the document!
X36LOS: Úloha 2
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 protokolu (RFC951) a dále nabídne jednu z následujících služeb nad UDP (RFC768) nebo ICMP (RFC792). Implementujte zjednodušenou verzi IP (RFC791, RFC1071) bez fragmentace a IP-options.
- DNS dotaz (RFC1035) (převod doménového jména na ip adresu, zjednodušený nslookup)
- TFTP server (RFC1350)
- TFTP klient (RFC1350)
- Zjistí směrovací tabulku pomocí RIP protokolu (RFC1058)
- Balíček serverů pro služby chargen/discard/echo/time
- ICMP - ping klient a server (RFC792)
- SNMP klient, který vrací a nastavuje SysOID, Location a SysContact
- Další UDP protokoly …
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.110 147.32.81.111
spustíte:
capnet arp eth0 147.32.81.110 147.32.81.111
Podmínky odevzdání
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~~