<othercredit role="translator"><firstname>Marek</firstname><surname>Laane</surname><affiliation><address><email>bald@starman.ee</email></address></affiliation><contrib>Tõlge eesti keelde</contrib></othercredit>
<para>&lisa; eesmärk on pakkuda omamoodi <quote>võrgunaabrust</quote>, kuid seda ainult TCP/IP protokollile toetudes, ilma igasuguse vajaduseta <acronym>SMB</acronym> või mille tahes järele.</para>
<para>See on nii <acronym>LAN</acronym> infoserveri (&lisa;) kui ka piirangutega <acronym>LAN</acronym> infoserveri (&reslisa;) käsiraamat</para>
<para>&lisa; eesmärk on pakkuda omamoodi <quote>võrgunaabrust</quote>, kuid seda ainult TCP/IP protokollile toetudes, ilma igasuguse vajaduseta Samba või mille tahes järele.</para>
<para>&lisa;le võib anda <acronym>IP</acronym> aadresside vahemiku, misjärel &lisa; saadab <acronym>ICMP</acronym> echo nõuded kõigile määratud <acronym>IP</acronym> aadressidele ja ootab neilt vastust.</para>
<para>&lisa;le võib anda korralduse käivitada <command>nmblookup</command> <option>"*"</option>. Käsureavahend <command>nmblookup</command> peab olema paigaldatud koos Samba paketiga. Käsk <command>nmblookup</command> <option>"*"</option> saadab ühendatud võrkudele leviteate ning kõik masinad, kus töötab <acronym>SMB</acronym> teenus, vastavad sellele.</para>
<para>Konfiguratsioonifailis määratakse IP aadresside vahemik, mida &lisa; kontrollib tuvastamaks, kas nad töötavad.</para>
<para>Kõige lihtsamal juhul on selleks sinu enda võrguaadress/alamvõrgumask, millisel juhul &lisa; kontrollib iga võimalikku masinat sinu võrgus tuvastamaks, kas see töötab.</para>
<para>Masinaid kontrollitakse <acronym>ICMP</acronym> echo nõuetega. Et olla võimeline saatma ja vastu võtma <acronym>ICMP</acronym> echo nõudeid ja vastuseid, tuleb avada niinimetatud <quote>toorsokkel</quote>. Seepärast läheb vaja administraatori (<systemitem class="username">root</systemitem>) õigusi. Sokkel tuleb avada kohe pärast rakenduse käivitamist ning pärast sokli edukat avamist loobutakse kohe administraatori õigustest (vaata <filename>main.cpp</filename> ja <filename>strictmain.cpp</filename>).</para>
<para>Kui &lisa; on seadistatud kasutama ka rakendust <command>nmblookup</command>, siis ta <literal>popen("nmblookup \"*\"")</literal> ja seejärel analüüsib tulemusi.</para>
<para>Et <acronym>ICMP</acronym> nõuded ja leviteated võivad põhjustada omajagu võrguliiklust, kui ühes ja samas võrgus töötab mitu sellist serverit, teevad need serverid omavahel koostööd. Enne pingimist (või <command>nmblookup</command> rakendamist) saadavad nad leviteate porti 7741.</para>
<para>Kui keegi leviteatele vastab, saadakse vastajalt <acronym>TCP</acronym> pordi 7741 vahendusel töötavate masinate täielik nimekiri ning pingimine (või <command>nmblookup</command>) jäetakse ära.</para>
<para>Kui keegi ei vasta, alustab leviteate saatnud masin teiste masinate pingimist (või kasutab <command>nmblookup</command>-i) ja avab seejärel sokli, mis jälgib mainitud leviteateid. Kui masin saab oma leviteatele vastuse, ei pea ta avama soklit leviteadete kuulamiseks. Seetõttu on tavaliselt vaid ühel serveril see sokkel avatud ja just see üksainus server ka tegelikult pingib (või kasutab <command>nmblookup</command>-i) teisi masinaid. </para>
<para>Teisisõnu - serverid on laisad ja töötavad põhimõttel <quote>ma teen midagi ainult siis, kui keegi teine seda minu eest ära ei tee</quote>.</para>
<para>On veel üks omadus, mis kahandab võrgukoormust.</para>
<para>Oletame, et &lisa; on seatud uuendama iga 10 minuti järel. Kuid sa ei kasuta serverit just väga tihti. Kui keegi ei kasuta serverit viimase uuendamisperioodi jooksul, siis server võtab ette uuenduse (kas ise või masina abil, mis seda tegelikult teeb) ning kahekordistab uuendusintervalli, &ie; järgmine uuendus leiab aset 20 minuti pärast.</para>
<para>Nii juhtub kuni neli korda, see tähendab, et kui keegi ei kasuta serverit kümneminutilise uuendusperioodi kestel pikka aega, suureneb uuendusperiood lõpuks 160 minuti ehk peaaegu kolme tunnini. Kui keegi siis serveri andmeid kasutab, saab ta vana nimekirja (kuni 160 minutit vana). Serverit kasutades seatakse aga uuendusintervall taas esialgseks, &ie; 10 minutile, ning uuendus algab kohe, kui viimasest uuendusest on möödas enam kui 10 minutit. See tähendab, et kui said vastuseks vana nimekirja, võid mõne hetke pärast uuesti proovida ja vastuseks peaks olema tuttuus versioon.</para>
<para>Sellel on otsene mõju serveritele, mis ise ei pingi (või ei kasuta nmblookup-i), sest tavaliselt tarvitab neid vaid üks kasutaja, ning suhteliselt vähene mõju serverile, mis pingib (või kasutab <command>nmblookup</command>-i), sest seda serverit kasutavad kõik teised võrgu serverid.</para>
<para>Nii on võimalik, et paljud masinad võrgus kasutavad antud serverit, kuid võrgukoormus on ometi tagasihoidlik. Kasutaja seisukohalt pole eriti oluline teada, kas võrgus on ka server (&ie; nimeserver või failiserver või mis iganes), millel töötab &lisa;. Ta võib alati panna &lisa; oma masinas tööle ning &lisa; tuvastab ise, kas selline on olemas ja annab sellest ka kasutajale teada.</para>
<para> &lisa; esimene klient on &kde; 2 IO moodul, nii et kasutaja võib anda käsu <userinput>lan://localhost</userinput> või lihtsalt <userinput>lan:/</userinput>, mis mõlemad võtavad ühendust &lisa;ga samas süsteemis.</para>
<para>Kui tegemist on kogu aeg töötava masinaga ja kasutaja teab, et sellel töötab ka &lisa;, võib ta oma &lisa; klienti kasutada otseselt selle serveriga (mainitud IO mooduli puhul <userinput>lan://serveri_nimi</userinput>).</para>
<para>Kui sa ei soovi, et &lisa; osaleks leviteadetes, vaid teeks alati ise pingi, pane ta kasutama mingit muud porti käsureavõtmega <option>--port</option> või <option>-p</option>. See ei ole siiski soovitatav!</para>
<para>Kui saata &lisa;le <command>SIGHUP</command>, loeb see oma konfiguratsioonifaili uuesti. Kui saata &lisa;le <command>SIGUSR1</command>, avaldab ta standardväljundis oma olekuinfo.</para>
<para>Üle sokli edastatavate andmete vorming on lihtne: <computeroutput><IP aadress kümnendkujul võrgubaidijärjekorras><üks tühik 0x20><masina täisnimi><lõpetav '\0'><reavahetus '\n'></computeroutput> ja viimane rida <computeroutput>0 succeeded<'\n'></computeroutput> </para>
<para>Kui sinu võrgus valitsevad väga ranged turvareeglid, võib osa inimesi pingi pidada potentsiaalseks rünnakuks. Kui sellega tekib probleeme, proovi kasutada piirangutega versiooni &reslisa;.</para>
<para>Kui sinu võrgus valitsevad väga ranged turvareeglid või sa ei soovi avada veel mõnda porti või mis iganes põhjus ka ei oleks, on võimalik kasutada &reslisa;.</para>
<para>&reslisa; abil ei saa pingida kogu võrku ega aadressidevahemikku, praegu on võimalik anda &reslisa;le kuni 64 masinat nime kaupa konfiguratsioonifailis. Neid siis pingitaksegi. Siiski saab kasutada ka <command>nmblookup</command>-i.</para>
<para>&reslisa; edastab infot ainult UNIX domeeni sokli kaudu, &ie; mitte üle võrgu. Sokli nimi on <filename>/tmp/resLisa-SinuKasutajanimi</filename>, nii et &reslisa; on võimalik rahulikult lasta tööle panna ühel ja samal masinal enam kui ühe kasutaja poolt.</para>
<para>Et see ei tohi ometi tekitada turvariski, on mõttekas &reslisa; paigaldada setuid <systemitem class="username">root</systemitem>. Administraatori (<systemitem class="username">root</systemitem>) privileegidest loobutakse kohe pärast käivitamist (vaata <filename>strictmain.cpp</filename>), neid läheb vaja ainult toorsokli loomiseks, et saata <acronym>ICMP</acronym> echo nõudeid.</para>
<para>Ka leviteateid ei saadeta ega võeta vastu. Ka siin on esimene klient &kde; 2 IO moodul (näiteks <userinput>rlan:/</userinput> &konqueror;is).</para>
<para>192.168.100.0/255.255.255.0, &ie; <acronym>IP</acronym> aadress ja omistatud võrgumask.</para>
<para>See ei pea olema sinu masina võrguaadress ja võrgumask. Kui näiteks sinu enda aadress on 10.0.0.0/255.0.0.0, võid määrata ka ka 10.1.2.0/255.255.255.0, kui tunned huvi ainult nende aadresside vastu. <acronym>IP</acronym> aadressi ja võrgumaski kombinatsiooni peab eraldama kaldkriips <quote>/</quote> ning aadress ei pea olema reaalne võrguaadress, see võib olla ka soovitud võrgu masina aadress, &ie; 10.12.34.67/255.0.0.0 on sama, mis 10.0.0.0/255.0.0.0.</para>
<para><acronym>IP</acronym> aadressi väljendatakse selle nelja numbriga ning igale neist võib määrata omaette vahemiku: 192-192.169-171.100-199.0-9 </para>
<para>Antud näites pingitakse kõiki <acronym>IP</acronym> aadresse esimese numbriga 192, teise numbriga 168 kuni 168, kolmanda numbriga 100 kuni 199 ja viimase numbriga 0 kuni 9. See teeb kokku 1*1*100*10=1000 aadressi.</para>
<para>Sellel on tõenäoliselt mõtet ainult haruharva. Siin tuleb määrata kõigi nelja numbri vahemik, alati eraldajaks <quote>-</quote>.</para>
<para>See on samuti väga tähtis. &lisa; pingib ainult aadresse, tunnustab kliente ja vastab leviteadetele aadressidelt, mis on antud sellele reale kirjutatud aadressidega. Lisada võib kuni 32 võrguaadressi/võrgumaski või üksikaadressi. Eraldajaks on semikoolon ja kindlasti ei tohi aadresside vahele jätta tühikut!</para>
<para>Kogu võrk ja üks üksikaadress sobivad. Püüa alati teha see nii rangeks kui võimalik, tavaliselt on mõistlik valik sinu võrguaadress/võrgumask.</para>
<para>Selles kirjes on vaid üks võrguaadress/võrgumask. Sellele saadetakse võrgu leviteated. Tavaliselt peaks see olema sinu võrguaadress/võrgumask, näiteks 192.168.0.0/255.255.0.0</para>
<para>Siin saab anda parameetri <parameter>0</parameter> või <parameter>1</parameter>. Parameeter <parameter>1</parameter> tähendab, et &lisa; käivitab <command>nmblookup</command> <option>"*"</option> ja analüüsib käsu väljundit. See tekitab vähem võrguliiklust kui pingimine, kuid saadakse vaid masinad, millel töötab <acronym>SMB</acronym> teenus (&Windows; masinad või masinad, millel töötab Samba).</para>
<para>Selle lubamisel ning ka pingitavate <acronym>IP</acronym> aadresside määramisel rakendatakse kõigepealt <command>nmblookup</command> ja alles seejärel hakatakse pingima. Siis pingitakse ainult aadresse, mida ei ole juba tuvastatud <command>nmblookup</command>-iga. See kahandab veidi võrgukoormust.</para>
<para>Kui &lisa; pingib, &ie; saadab <acronym>ICMP</acronym> echo nõudeid, saadetakse hulk nõudeid korraga ja jäädakse seejärel vastust ootama siin määratud sajandiksekundiks. Tavaliselt on mõistlik valida 5 ja 50 sajandiksekundi vahel, maksimum on 99 (ehk 0,99 sekundit, mis on juba väga pikk aeg). Püüa hoida see väärtus võimalikult väike, kuid samas piisavalt suur, et leitaks kõik töötavad masinad.</para>
<para>Kui &lisa; on echo nõuded esimest korda välja saatnud, võib siiski juhtuda, et mõnda masinat ei leitud. Tulemuse parandamiseks võib &lisa; pingida ka teist korda. Sel korral pingitakse ainult neid masinaid, millelt vastust ei saadud. Kui tavaliselt annab juba esimene ping hea tulemuse, võib teise pingimise keelata, määrates SecondWait väärtuseks <userinput>-1</userinput>.</para>
<para>Üldiselt on mõtet määrata lubamise korral selle väärtus veidi pikemaks kui <option>FirstWait</option> väärtus, sest masinad, mida esimesel korral ei leitud, on tõenäoliselt aeglasemad või asuvad päris kaugel, nii et nende vastus võib võtta mõni millisekund rohkem aega. Tavaliselt on mõistlik väärtus 5 kuni 50 või ka -1, mis teise pingi keelab. Maksimum on 99 (ehk 0,99 sekundit, mis on väga pikk aeg).</para>
<para>See on ajavahemik, mille järel &lisa; uuenduse ette võtab. Selle aja möödudes pingib &lisa; uuesti või rakendab <command>nmblookup</command>-i või hangib masinate nimekirja &lisa; serverilt, mis tegelikult pingib.</para>
<para>Kehtivad väärtused on 30 ja 1800 sekundi (pool tundi) vahel. Kui võrk on suur, ära määra intervalli liiga väikeseks (muidu kasvab võrgu koormus). Üsna mõistlikud väärtused jäävad 300 ja 900 sekundi ehk 5 ja 15 minuti vahele.</para>
<para>Pea meeles, et kui keegi serverit ei kasuta, suureneb intervall kahekordseks ja nii kuni neli korda järjest, mis tähendab, et intervall võib muutuda kuni 16 korda pikemaks siinmääratust, kuid see omandab kohe oma esialgse väärtuse, kui keegi serverit kasutab.</para>
<para>Kui saadakse vastus echo nõudele IP aadressilt, mille korral &lisa; ei suuda nime määrata, edastatakse see ainult üle pordi, kui siin on väärtuseks määratud 1.</para>
<para>Ma ei ole päris kindel, kas see on väga kasulik võimalus, kuid võib ette tulla mingeid infrastruktuuri seadmeid võrgus, millele ei ole omistatud nime ja mida seetõttu ei avaldata. Määra väärtuseks 0, kui soovid neid varjatuna hoida ;-) Kui sa ei ole kindel, määra väärtuseks 0.</para>
<para>Pingides ehk echo nõudeid saates saadab &lisa; neid korraga teele terve hulga ja jääb siis vastuseid ootama. Vaikimisi saadetakse korraga 256 pingi ning enamasti ei ole seda väärtust vaja muuta. Kui see on palju suurem, võib echo nõuete vastuste vastuvõtmise sisemine puhver jääda väikeseks, kui see on liiga väike, on uuendamine aeglasem.</para>
<para>Otsib esmalt <filename>$<envar>HOME</envar>/.trinity/share/config/lisarc</filename>, seejärel <filename>$<envar>TDEDIR</envar>/share/config/lisarc</filename>.</para>
<para>Otsib <filename>lisarc</filename> kõigis kataloogides, mis tagastati <userinput><command>tde-config</command> <option>--path</option> <parameter>config</parameter></userinput> rakendamisel</para>
<para>Käivtab serveri antud numbriga pordis. Selle kasutamisel ei pruugi &lisa; olla valmis koostööks teiste võrgus töötavate &lisa;dega. &reslisa; korral ei ole see võti kasutatav.</para>
<para>Kui saadad &lisa;le või &reslisa;le hangup-signaali, loeb see uuesti oma konfiguratsioonifaili (<userinput><command>killall</command> <option>-HUP lisa</option></userinput>).</para>
<para>Kui saadad &lisa;le või &reslisa;le User1-signaali, näitab see standardväljundis olekuinfot (<userinput><command>killall</command> <option>USR1 lisa</option></userinput>). Küll aga ei ole midagi näha, kui konsool, millelt &lisa;/&reslisa; käivitati, on töö lõpetanud.</para>
<para>Nii &reslisa; kui &lisa; avavad niinimetatud <quote>toorsokli</quote> <acronym>ICMP</acronym> echo nõuete (pingi) saatmiseks ja vastuvõtmiseks. Avamiseks vajavad nad administraatori (<systemitem class="username">root</systemitem>) privileege.</para>
<para>&lisa; pakub teenust <acronym>TCP</acronym> pordil 7441 ja peab olema paigaldatud administraatori (<systemitem class="username">root</systemitem>) poolt ning käivitatud koos süsteemi käivitamisega. Kuidas see täpselt välja näeb, sõltub suuresti sellest, milline on sinu operatsioonisüsteem.</para>
<para>&reslisa; on mõeldud käivitatama kasutajate kaupa, see ei paku midagi võrgule. See peab olema paigaldatud setuid <systemitem class="username">root</systemitem>.</para>
<para>&lisa; loeb faili <filename>lisarc</filename>, &reslisa; faili <filename>reslisarc</filename>. Kui soovid neid mõlemat seadistada &juhtimiskeskus;es, tuleb nad käivitada käsureavõtmega <option>-K</option>.</para>
<para>Täpsemat infot selle kohta, kust nad oma konfiguratsioonifaile loevad, annab <xref linkend="command-line-options"/>.</para>