Dhclient: Difference between revisions
Line 120: | Line 120: | ||
1) http://www.computerhope.com/unix/dhclient.htm#01 <br /> | 1) http://www.computerhope.com/unix/dhclient.htm#01 <br /> | ||
2) http://linux.about.com/library/cmd/blcmdl8_dhclient.htm <br /> | 2) http://linux.about.com/library/cmd/blcmdl8_dhclient.htm <br /> | ||
3) http://www.freebsd.org/cgi/man.cgi?query=dhclient&sektion=8 | 3) http://www.freebsd.org/cgi/man.cgi?query=dhclient&sektion=8 <br /> | ||
4) http://www.freebsd.org/cgi/man.cgi?query=dhclient.conf&sektion=5 | 4) http://www.freebsd.org/cgi/man.cgi?query=dhclient.conf&sektion=5 <br /> |
Revision as of 01:40, 31 December 2013
Autor
Priit Varul
Rühm A21
2013
Sissejuhatus
dhclient - ehk Dynamic Host Configuration Protocol (DHCP) Client.
Tarkvara dhclient (DHCP client), mis võimaldab konfigureerida ühte või rohkemaid interface'e kasutades DHCP protokolli, BOOTP protokolli või kui need protokollid peaksid ebaõnnestunma, siis staatiliselt aadresse määrates.
DHCP protokoll võimaldab host'il keskse serveriga ühendada kus hoitakse listi IP aadressidega, mis võidakse määrata ühele või rohkematele subnetitele. DHCP klient pöördub aadressi pool'i poole kus on IP aadressid mille abil võrgus suhelda. Sealjuures annab DHCP protokoll kliendile olulist informatsiooni võrgu kohta kuhu ta ühendatud on. Näiteks nagu default ruuteri asukoht-, nimeserveri asukoht võrgus jne.
Viide lõigule: Kasutatud materjal 1
Eesmärk
Süsteemi käivitades loeb dhclient dhclient.conf failist interface konfiguratsiooniks vajalikke juhendeid. Peale seda saab dhclient listi kõikidest võrguliidestest mis on antud süsteemi poolt seadistatud. Iga interface jaoks korjab dhclient eraldi DHCP protokollist konfiguratsiooni.
Selleks, et hoida silma peal lease'del kui süsteem käivitub või restardib, hoiab dhclient listi lease'de kohta failis dhclient.leases. Süsteemi käivitudes peale dhclient.conf faili lugemist, loeb dhclient dhclient.lease failist kas on kord juba antud interface'dele IP'd või ei. Kui on, siis läheb sama IP tagasi mis enne restarti süsteemil oli.
Aja jooksul võib juhtuda, et dhclient.leases fail läheb väga suureks, selle vältimiseks loob dhclient aeg ajalt uue dhclient.leases faili toetudes enda andmebaasile. Vana versioon dhclient.leases failist säilitatakse nime dhclient.leases~ all kuni dhclient uuesti andmebaasi üle kirjutab.
Vanu lease hoitakse alles juhuks kui DHCP server peaks mingil põhjusel kättesaamatu olema. Selle puhul, võetakse vanad leased dhclient.leases failist, mis ei ole veel aegunud, ja kui on kindlaks tehtud, et lease on endiselt kehtiv, kasutatakse seda kuni ta aegub võib kuni DHCP server uuesti tööle hakkab.
Viide lõigule: Kasutatud materjal 2
Üldised dhclienti käsklused
Käsurea kaudu antakse ette dhclientile missugust võrgu interface'i peaks ta konfigureerima hakkama.
Valikud on järgmised:
-b Sunnib dhclienti kohese tahaplaanile liikumise.
-c file Täpsustab vahelduva faili asukoha konfiguratsiooni failile.
-d Sunnivad dhclienti alati esiplaanil jooksma. Dhclient töötab vaikimisi senikaua esiplaanil kuni interface on konfigureeritud. Kui see tehtud läheb dclient tahaplaanile.
-l file Täpsustab vahelduva faili asukoha lease failile.
-p file Täpsustab vahelduva faili asukoha PID failile. Vaikimisi asub fail /var/run/dhclient.interface.pid.
-q Sunnib dhclienti käivitamisel nii öelda vaikima.
-u Sunnib dhclienti tundmatute lease'de tagasilükkamiseks. Vaikimisi käitub dhclient vastupidi ja aksepteerib tundmatud lease'd.
Viide lõigule: Kasutatud materjal 3
Dhclient.conf
Nagu ülal öeldud sisaldab dhclient.conf fail dhclienti konfiguratsiooni intot. Fail võib sisaldada lisatabeleid ja eraldatud ridu korrektse vormistuse pärast. Võtmesõnad failis on väikeste tähtedega. Kommentaarid võivad olla failis kirjutatud kugu igale poole. Kommentaarid algavad märgiga "#" ja lõpevad rea lõpuga.
Dhclient.conf failiga konfigureeritakse kliendi käitumist mitmel viisil nagu näiteks: protokolli ajastus, serverist küsitud informatsioon, vaikimisi seaded jne. Seda faili saab ka täita aadressidega käsitsi kasutamaks võrku millel pole DHCP serverit küljes.
Protokolli ajastamine
Kliendi ajaline käitumine ei pea olema kasutaja poolt konfigureeritud ja juhul kui seda ka kasutaja poolt tehtud pole, kasutatakse vaikimisi seaded. Kuigi on olemas mõned käsud mille abil ajalist käitumist vajadusel ise seadistada:
timeout time; timeouti teadaanne määrab ära ajavahemiku mille jooksul lubab ta kliendil endale aadressi saada, kui selle aja jooksul pole aadressi saadud otsustab dhclient, et server on kättesaamatu.
retry time; Kui klient ei saanud serveriga ühendust ja endale aadressi, määrab see käsk aja millal dhclient endale uuesti aadressi serveri poolt küsima hakkab. Vaikimisi on selleks ajaks 5 minutit.
select-timeout time; Võib juhtuda et võrgus on kaks DHCP serverit mis erinevaid aadresse jagavad. Select-timemout time on mõeldud selleks, kui klient saadab requesti mitmele serverile ja kui ta sätestatud aja jooksul pole eelistatud aadressi kätte saanud valib ta esimese pakkumise mis kohale jõuab. Vaikimisi on select-timeout null sekundit.
reboot time; Kui klienti restarditakse püüab ta uuesti endale aadressi saada. Reboot käsklus annab ette aja mis peab mööduma, enne kui klient uuesti uue aadressi nõude annab. Vaikimisi on see 10 sekundit ja selle aja jooksul peaks üldiselt klient endale uuesti sama aadressi kätte saama.
backoff-cutoff time; Klient kasutab backoff algoritmi, kui peaks mitmed kliendid end samal ajal seadistada püüdma. Backoff-cutoff määrab ära maksimaalse aja mille jooksul on kliendil lubatud seadistusest taganeda. Vaikimisi on selleks 2 minutit.
initial-interval time; On ajavahemik esimesel korral serveri pöördumisel teise korraga kui ta pole aadressi esimese korraga saanud. Iga korraga suurendatakse kahe korra aja intervalli ja kui see läheb suuremaks kui bacoff-cutoff on, loobub klient serveri poole pöördumast. Vaikimisi on see 10 sekundi peale määratud.
Lease nõuded ja taotlused
DHCP protokoll lubabk liendil nõuda informatsiooni serverilt. Samuti lubab protokoll kliendil serveri poolt pakutavast keelduda, kui klient antud informatsiooni ei vaja.
request [option] [, ... option]; Teeb kindlaks, et ükskõik mis server temaga ühendust võtab, aksepteerib ta ainult väärtusi mis on requestis kirjas.
require [option] [, ... option]; Võimalik määrata kindlad väärtused mida klient soovib ja klient aksepteerib ainult seda serverit kes tema nõudmisi täidab.
send { [option declaration] [, ... option declaration] } Send väärtus võimaldab kliendil saata täpsed väärtused serverile mida klient vajab.
Näide dhclient.conf
Järgnev seadistus on kasutatud arvutis mille ip alias on 192.5.5.213 ja millel on üks interface.
timeout 60; retry 60; reboot 10; select-timeout 5; initial-interval 2; reject 192.33.137.209; interface "ep0" { send host-name "andare.fugue.com"; send dhcp-client-identifier 1:0:a0:24:ab:fb:9c; send dhcp-lease-time 3600; supersede domain-name "fugue.com rc.vix.com home.vix.com"; prepend domain-name-servers 127.0.0.1; request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, host-name; require subnet-mask, domain-name-servers; script "/etc/dhclient-script"; media "media 10baseT/UTP", "media 10base2/BNC"; } alias { interface "ep0"; fixed-address 192.5.5.213; option subnet-mask 255.255.255.255; }
Dhclient.leases
Kasutatud kirjandus
1) http://www.computerhope.com/unix/dhclient.htm#01
2) http://linux.about.com/library/cmd/blcmdl8_dhclient.htm
3) http://www.freebsd.org/cgi/man.cgi?query=dhclient&sektion=8
4) http://www.freebsd.org/cgi/man.cgi?query=dhclient.conf&sektion=5