09.06. Maršrutētāju atklāšanas ziņojumi protokolā ICMP

Last modified by Valdis Vītoliņš on 2018/01/15 21:44

09.06. Maršrutētāju atklāšanas ziņojumi protokolā ICMP

Agrāk šajā nodaļā minējām, ka viens veids, kā inicializēt maršrutēšanas tabulas, ir norādīt statiskus maršrutus konfigurācijas failos. To bieži izmanto, lai uzstādītu noklusētos ierakstus. Jaunāks veids ir izmantot ICMP maršrutētāju reklamēšanās ziņojumus un lūguma ziņojumus

Tam pamatā ir šāda pieeja: pēc sāknēšanas mītne apraida vai multiraida maršrutētāja lūguma ziņojumu. Viens vai vairāki maršrutētāji atbild ar maršrutētāja reklamēšanās ziņojumu. Turklāt maršrutētāji periodiski apraida vai multiraida sava maršrutētāja reklamēšanās ziņojumus, ļaujot jebkurai mītnei, kura klausās, atbilstoši izmanīt savu maršrutēšanas tabulu. 

RFC 1256 [Deering 1991] apraksta šo divu ICMP ziņojumu formātu. #picref("f_9_6.gif", "9.6.attēls") parāda ICPMP maršrutētāja lūguma ziņojuma formātu. #picref("f_9_7.gif", "9.7.attēls") parāda ICMP maršrutētāja reklamēšanās ziņojumu, kuru izsūta maršrutētāji.

#pic("f_9_6.gif", "500") 9.6.attēls: ICMP maršrutētāja lūguma ziņojuma formāts

#pic("f_9_7.gif", "500") 9.7.attēls: ICMP maršrutētāja reklamēšanās ziņojuma formāts

Maršrutētājs vienā ziņojumā var reklamēt vairākas adreses. Adresu skaits ir "number" lauks. Adreses ieraksta izmērs ir 32 bitu vārdu skaits katrai maršrutētāja adresei - tas vienmēr ir 2. Dzīves ilgums ir sekunžu skaits, cik ilgi reklamētās adreses var uzskatīt par derīgām.

Pēc tam seko viens vai vairāki pāri ar IP adresi un tās priekšrokas līmeni. IP adresei jābūt vienai no sūtošā maršrutētāja IP adresēm. Priekšrokas līmenis ir 32 bitu vesels skaitlis ar zīmi, kurš norāda šīs adreses kā noklusētās maršrutētāja adreses priekšroku, salīdzinot ar citām maršrutētāju adresēm šajā pašā apakštīklā. Lielākas vērtības nozīmē adreses, kurām dodama priekšroka. Priekšrokas līmenis

Maršrutētāja darbības apraksts

Kad maršrutētājs sāk darbu, tas periodiski pārraida reklāmas ziņojumus visiem interfeisiem, kuri ir spējīgi apraidei vai multiraidei. Šie reklāmas ziņojumi nav precīzi periodiski, bet atstarpes starp tiem tiek randomizētas, lai mazinātu varbūtību, ka radīsies sinhronizēšanās ar citiem maršrutētājiem šajā pašā apakštīklā. Parasts laika intervāls starp reklāmas ziņojumiem ir starp 450 un 600 sekundēm. Noklusētais dzīves ilgums reklāmas ziņojumam ir 30 minūtes.

Cits dzīves ilguma lauka pielietojums ir tad, ja interfeisu uz maršrutētāja uz brīdi atslēdz. Šajā gadījumā maršrutētājs var izsūtīt beigu reklāmu šim interfeisam, kur norādītais dzīves ilgums ir 0.

Papildus periodiskiem, nelūgtiem reklāmas ziņojumiem, maršrutētājs arī klausās lūguma ziņojumus no mītnēm. Tas atbild uz lūguma ziņojumiem ar saviem maršrutētāja reklāmas ziņojumiem.

Ja dotajā apakštīklā ir vairāki maršrutētāji, sistēmas administratora uzdevums ir atbilstoši konfigurēt priekšrokas līmeni katram maršrutētājam. Piemēram, galvenajam, noklusētajam maršrutētājam parasti būs augstāks priekšrokas līmenis nekā rezerves maršrutētājam.

Mītnes darbības apraksts

Sāknējoties, mītne parasti pārsūta trīs maršrutētāja lūgumziņojumus, ik pa 3 sekundēm. Tiklīdz kā tiek saņemts derīgs reklāmziņojums, lūgumi apstājas.

Mītne arī klausās uz reklāmām no blakusesošiem maršrutētājiem. Šie reklāmziņojumi var nomainīt mītnes noklusēto maršrutētāju. Tāpat, ja reklāmziņojumi netiek saņemti ilgāku laiku, pašreizējā noklusētā maršrutētāja dzīvescikls var noilgt.

Kamēr vien parastais noklusētais maršrutētājs darbojas, šis maršrutētājs sūtīs reklāmziņojumus ik pēc 10 minūtēm, katru ar dzīvesilgumu 30 minūtes. Tas nozīmē, ka mītnes maršrutēšanas tabulas noklusētais ieraksts nenoilgs pat tad, ja pazudīs viens vai divi reklāmziņojumi.

Implementācija

Maršrutētāja atklāšanas ziņojumus parasti ģenerē un apstrādā lietotāja (nevis kodola) process jeb dēmons. Tas pievieno vēl vienu programmu, kura labo maršrutēšanas tabulu #picref("f_9_1.gif", "9.1.attēlā"), lai gan tai vajag vienīgi pievienot vai izdzēst noklusēto maršrutēšanas ierakstu. Dēmonam būtu jābūt konfigurētam darboties kā maršrutētājam vai kā mītnei.

Šie divi ICMP ziņojumi ir jauni un nav atbalstīti uz visām sistēmām. Solaris 2.x ir vienīgā sistēma mūsu tīklā, kura atbalsta šos ziņojumus (in.rdisc.daemon). Lai gan RFC iesaka izmantot IP multiraidi, kad vien iespējams, maršrutētāju atklāšana var darboties arī, izmantojot apraides ziņojumus.