Linux documentation Project (CS) / Příručka správce sítě
Previous Content Next Up

 

3. Konfigurace síťového hardwaru

3.1 Zařízení, ovladače atd.

    Až dosud jsme se bavili o síťových rozhraních a o všeobecných problémech protokolu TCP/IP, ale zatím jsme si neřekli, co se doopravdy děje, když "síťový kódio jádra přistupuje k části hardwaru. Nyní si řekneme něco o koncepci rozhraní a ovladačů.

    Nejprve máte samozřejmě vlastní hardware, například ethernetovou kartu: to je laminátová deska přecpaná spoustou mrňavých čipů, na kterých lze najít nějaká čísílka. Toto vše je umístěno ve slotu vašeho počítače a všeobecně se tomu říká zařízení.

    Abyste vůbec mohli používat ethernetovou kartu, musí být v jádru Linuxu k dispozici speciální funkce, které rozumí způsobu, jakým je k tomuto zařízení přistupováno. Takovýmto funkcím říkáme ovladače zařízení. Například Linux obsahuje ovladače zařízení pro několik skupin ethernetových karet, které si jsou z funkčního hlediska hodně podobné. Jsou nazvány "Becker Series Drivers" po svém autorovi Donaldu Beckerovi. Jiným příkladem je ovladač D-Link, který obsluhuje kapesní adaptér D-Link, jenž je připojen k paralelnímu portu.

    Ale co myslíme tím, když říkáme, že ovladač se "stará" o zařízení? Vraťme se zpět k ethernetové kartě, kterou jsme si popsali na začátku. Ovladač musí být nějakým způsobem schopen komunikovat s logikou hardwarové karty: musí jí posílat příkazy a data, a ta by mu měla na oplátku doručit všechna přijatá data.

    U počítačů PC se tato komunikace odehrává v oblasti V/V paměti, která je namapována na registry karty. Všechny příkazy a data vyslané jádrem do karty musí těmito registry projít. V/V paměť je obecně určena zadáním počáteční, neboli základní adresy (base address). Typické základní adresy pro ethernetové karty jsou 0x300 nebo 0x360.

    Obvykle není třeba si dělat příliš starosti s konfigurací hardwaru, jako je základní adresa, protože jádro se při zavádění pokusí detekovat pozici karty. Tento proces se nazývá automatické detekce, což znamená, že jádro přečte několik adresových míst a porovná přečtená data s tím, co by získal, kdyby na nich byla nainstalována určitá ethernetová karta. Mohou však existovat ethernetové karty, které automatickou detekci neumí; to bývá případ levných ethernetových karet, které nejsou dokonalými klony standardních karet jiných výrobců. Jádro systému také bude při zavádění zkoušet detekovat pouze jediné ethernetové zařízení. Pokud používáte více než jednu kartu, musíte jádru o této kartě explicitně říci.

    Dalším takovým parametrem, který musíte jádru předat, je požadavek kanálu přerušení (interrupt request channel). Pokud potřebují hardwarové komponenty něco zařídit, obvykle předají jádru přerušení. Příkladem může býti obdržení dat nebo výskyt speciálních událostí. U počítačů PC se mohou přerušení vyskytnout na jednom z 15 kanálů přerušení, které jsou očíslovány 0, 1 a 3 až 15. Číslo přerušení, které je hardwarové komponentě přiděleno, se nazývá číslo požadavku přerušení (interrupt request number), zkráceně IRQ.

    V kapitole 2 jsme si řekli, že jádro přistupuje k zařízení pomocí tzv. rozhraní. Ta poskytují abstraktní množinu funkcí, jako je například posílání nebo příjem datagramu, které jsou pro všechny typy hardwaru totožné.

    Rozhraní jsou identifikována prostřednictvím svého názvu. Tyto názvy jsou interně definovány v jádru, nejedná se však o soubory zařízení v adresáři /dev. Typickými názvy ethernetových rozhraní jsou eth0, eth1 atd. Přiřazení rozhraní k jednotlivým zařízením obvykle závisí na pořadí, ve kterém jsou zařízení nakonfigurována; například první nainstalovaná ethernetová karta obdrží název eth0, další bude eth1 atd. Jedinou výjimku z tohoto pravidla tvoří rozhraní SLIP, která jsou přidělována dynamicky; to znamená, kdykoliv je uskutečněno spojení SLIP, je rozhraní přiřazeno sériovému portu.

    Schéma uvedené na obrázku 3.1 se pokouší ukázat vztahy mezi hardwarem, ovladači zařízení a rozhraními. Při zavádění zobrazí jádro detekovaná zařízení a rozhraní, která se mu podařilo nainstalovat. Následuje výpis typické obrazovky při zavádění systému:

...

This processor honours the WP bit even when in

supervisor mode. Good.

Floppy drive(s): fd0 is 1.44M

Swansea University Computer Society NET3.010

IP Protocols: ICMP, UDP, TCP

PPP: version 0.2.1 (4 channels) OPTIMIZE_FLAGS

TCP compression code copyright 1989

Regents of the University of California

PPP line discipline registered.

SLIP: version 0.7.5 (4 channels)

CSLIP: code copyright 1989

Regents of the University of California

dl0: D-Link DE-600 pocket adapter,  Ethernet Address: 00:80:C8:71:76:95

Checking 386/387 coupling...OK, fpu using exception 16 error reporting.

Linux version 1.1.11 (okir@monad) #3

Sat May 7 14:57:18 MET DST 1994

...

    Výpis ukazuje, že jádro bylo zkompilováno se zapnutým protokolem TCP/IP, včetně ovladačů pro protokoly SLIP, CSLIP a PPP. Třetí řádka odspodu uvádí, že byl detekován kapesní adaptér D-Link a nainstalován jako rozhraní dl0. Máte-li jiný typ ethernetové karty, vypíše jádro zpravidla řádek začínající eth0, za nímž následuje typ detekované karty. Pokud máte nainstalovanou ethernetovou kartu, ale nevidíte žádnou takovou zprávu, znamená to, že jádro není schopno správně detekovat vaši kartu. Tímto problémem se budeme zabývat v další části.

3.2 Konfigurace kernelu (jádra)

    Většina distributorů Linuxu dodává zaváděcí diskety, které pracují se všemi běžnými typy hardwaru počítačů PC. To znamená, že jádro na těchto disketách je zkompilováno se všemi skupinami ovladačů, které však nikdy nebudete potřebovat všechny a které plýtvají drahocennou pamětí, protože části jádra nelze z paměti zrušit. Proto si obvykle sestavíte své vlastní jádro, jež bude obsahovat pouze ovladače, které skutečně chcete nebo potřebujete.

    Chcete-li používat systém Linux, měli byste ovládat sestavování jádra. Základy jsou vysvětleny v manuálu Matta Welshe "Installation and Getting Started", který je součástí série Linux - dokumentační projekt. Proto se v této stati zmíníme pouze o těch konfiguračních volbách, které ovlivňují nastavení sítí.

    Při spuštění příkazu make config budete nejprve dotazováni na všeobecné konfigurace, například zda chcete či nechcete jádro s emulací matematického koprocesoru atd. Jeden z těchto dotazů se bude týkat podpory pro sítě na bázi TCP/IP. Aby bylo vaše jádro schopno pracovat se sítěmi, musíte na tento dotaz odpovědět y (yes - ano).

3.2.1 Volby jádra Linuxu verze 1.0 a vyšší

    Jakmile je dokončena obecná část voleb, bude konfigurace pokračovat dotazy na různé rysy systému, jako jsou ovladače SCSI apod. Následující seznam otázek se pak bude týkat podpory sítí. Přesná množina konfiguračních voleb se z důvodu probíhajícího vývoje stále mění. Typický seznam voleb, který nabízí většina verzí jádra mezi 1.0 a 1.1, vypadá následovně:

*

* Network device support

*

Network device support? (CONFIG_ETHERCARDS) [y]

    Pokud chcete používat nějaký typ síťových zařízení, aš se už jedná o protokol Ethernet, SLIP nebo PPP, musíte na tuto otázku odpovědět y (bez ohledu na název makra, který je uveden v kulatých závorkách). Pokud na tuto otázku odpovíte kladně, bude automaticky povolena podpora ethernetových typů zařízení. Podpora ostatních typů síťových ovladačů musí být povolena samostatně:

SLIP (serial line) support? (CONFIG_SLIP) [y]

SLIP compressed headers (SL_COMPRESSED) [y]

PPP (point-to-point) support (CONFIG_PPP) [y]

PLIP (parallel port) support (CONFIG_PLIP) [n]

    Tyto otázky se týkají spojení pomocí různých protokolů, které Linux podporuje. Protokol SLIP vám umožní posílat IP-datagramy po sériové lince. Možnost komprimovat hlavičku poskytuje podporu pro protokol CSLIP. Tato technika zkomprimuje hlavičky TCP/IP až na tři bajty. Všimněte si, že tato volba jádra nezapíná automaticky protokol CSLIP, pouze mu zprostředkovává nezbytné funkce jádra.

PPP je dalším protokolem, který umožňuje posílání síťových dat po sériové lince. Je mnohem pružnější, než protokol SLIP a není omezen jen na protokol IP, ale podporuje i protokol IPX, je-li tento nainstalován.

PLIP nabízí způsob, jak posílat IP-datagramy za pomoci spojení přes paralelní port. Většinou se používá ke komunikaci s počítači PC, na kterých běží operační systém DOS.

    Následující otázky se budou zabývat ethernetovými kartami od různých výrobců. Protože se stále vyvíjí nové ovladače, může být tato část rozšířena o další otázky. Pokud chcete sestavit jádro, které budete používat na více strojích, měli byste povolit více než jeden ovladač.

NE2000/NE1000 support (CONFIG_NE2000) [y]

WD80*3 support (CONFIG_WD80x3) [n]

SMC Ultra support (CONFIG_ULTRA) [n]

3c501 support (CONFIG_EL1) [n]

3c503 support (CONFIG_EL2) [n]

3c509/3c579 support (CONFIG_EL3) [n]

HP PCLAN support (CONFIG_HPLAN) [n]

AT1500 and NE2100 (LANCE and PCnet-ISA) support (CONFIG_LANCE) [n]

AT1700 support (CONFIG_AT1700) [n]

DEPCA support (CONFIG_DEPCA) [n]

D-Link DE600 pocket adaptor support (CONFIG_DE600) [y]

AT-LAN-TEC/RealTek pocket adaptor support (CONFIG_ATP) [n]

*

* CD-ROM drivers

*

...

    Nakonec se vás konfigurační script v části věnované systémům souborů zeptá, zda chcete podporu pro NFS, síťový souborový systém (network filesystem). NFS umožňuje exportovat souborové systémy na několik hostitelů, takže se vám bude zdát, že jsou soubory uloženy na běžném pevném disku, který je připojen k danému hostiteli.

NFS filesystem support (CONFIG_NFS_FS) [y]

3.2.2 Volby jádra Linuxu verze 1.1.14 a vyšší

    Od verze 1.1.14, do které byla přidána alfa-verze protokolu IPX, se lehce změnila konfigurační procedura. Část s obecnými volbami se nyní zeptá, zda si přejete nějakou podporu sítí. Pak ihned následuje skupina dotazů týkající se síťových voleb.

*

* Networking options

*

TCP/IP networking (CONFIG_INET) [y]

    Aby bylo možné používat sítě na bázi TCP/IP, musíte na tuto otázku odpovědět y. Pokud však odpovíte n, i nadále bude možné sestavit jádro s podporou protokolu IPX.

IP forwarding/gatewaying (CONFIG_IP_FORWARD) [n]

Tuto volbu byste měli povolit v případě, že váš systém bude vystupovat jako brána mezi dvěma Ethernety, nebo mezi Ethernetem a spojením SLIP atd. I když příliš nevadí, když tuto volbu implicitně povolíte, budete možná chtít v případě konfigurace hostitele jako tzv. firewall tuto volbu zakázat. Firewally jsou hostitelé, kteří jsou připojeni ke dvěma nebo více sítím, avšak nesměrují mezi nimi síťový provoz. Obecně poskytují uživatelům firemní sítě přístup k Internetu, a to s minimálními riziky pro vnitřní síť. Uživatelé se budou moci přihlašovat k firewallu a používat internetové služby, ale počítače ve firmě budou chráněny před vnějšími útoky, protože žádné příchozí spojení nemůže přes firewall přejít.

*

* (it is safe to leave these untouched)

*

PC/TCP compatibility mode (CONFIG_INET_PCTCP) [n]

    Za pomoci této volby zabráníte nekompatibilitě s některými verzemi PC/TCP, což je komerční implementace TCP/IP u počítačů PC s operačním systémem DOS. Pokud tuto volbu povolíte, budete stále moci komunikovat s běžnými unixovými stroji, avšak u pomalých linek může dojít ke ztrátě výkonu.

Reverse ARP (CONFIG_INET_RARP) [n]

    Tato funkce povolí RARP, protokol pro zpětné rozlišení adres. Protokol RARP je používán u bezdiskových klientů a X-terminálů, kde při zavádění slouží ke zjištění IP-adresy. Protokol RARP byste měli povolit jen v případě, že hodláte provozovat tento typ klientů. Poslední balík síťových utilit (net-0.32d) obsahuje malou utilitu s názvem rarp, která umožňuje přidávat systémy do vyrovnávací paměti RARP.

Assume subnets are local (CONFIG_INET_SNARL) [y]

    Posíláte-li data přes TCP, musí je jádro před předáním protokolu IP rozdělit do několika IP paketů. U hostitelů, kteří jsou dosažitelní po místní síti, jako například Ethernet, se použijí větší pakety než u hostitelů, pro jejichž dosažení musí urazit dlouhou cestu.

    Pokud nepovolíte SNARL, bude jádro předpokládat, že lokální sítě jsou pouze takové, se kterými má skutečné rozhraní. Pokud se však podíváte na síť třídy B v Groucho Marx University, uvidíte, že celá síť třídy B je lokální, avšak většina hostitelů má rozhraní pouze s jednou nebo se dvěma podsítěmi. Jestliže SNARL povolíte, bude jádro předpokládat, že všechny podsítě jsou lokální a pro komunikaci se všemi hostiteli v rámci univerzity použije velké pakety.

    Pokud chcete pro data, která jsou posílána konkrétním hostitelům, používat pakety o malé velikosti (protože například data putují po spojení SLIP), můžete tak učinit za pomoci volby mtu příkazu route; ta je stručně probrána na konci této kapitoly.

Disable NAGLE algorithm (normally enabled) (CONFIG_TCP_NAGLE_OFF) [n]

    Pravidlo NAGLE je heuristické a zabraňuje posílání zvláště malých IP-paketů, někdy nazývaných minigramy (tinygrams). Minigramy jsou obvykle tvořeny nástroji pro interaktivní práci se sítí, které přenášejí jednotlivé stisky kláves, jako například telnet nebo rsh. Minigramy jsou však mimořádně nehospodárné u spojení s malou šířkou pásma, například pomocí protokolu SLIP. Algoritmus NAGLE se tomu může pokusit zabránit tak, že za určitých okolností na chvíli pozdrží vyslání dat za pomoci protokolu TCP. Máte-li vážné problémy se ztracenými pakety, pak můžete algoritmus NAGLE zakázat.

The IPX protocol (CONFIG_IPX) [n]

    Tato volba povolí protokol IPX, což je transportní protokol, který používají sítě Novell. Jednou z výhod může být možnost výměny dat s utilitami DOS, které využívají protokol IPX, nebo směrování dopravy mezi vašimi sítěmi Novell prostřednictvím spojení PPP.

Od verze jádra 1.1.16 podporuje Linux ještě jeden typ ovladače, tzv. fiktivní ovladač. Následující otázka se týká počátku sekce, ve které se nastavují ovladače zařízení.

Dummy net driver support (CONFIG_DUMMY) [y]

    Fiktivní ovladač toho příliš mnoho neumí, ale je poměrně užitečný u samostatných hostitelů nebo hostitelů SLIP. V podstatě jde o maskující zpětnovazebné rozhraní. Důvodem pro tento druh rozhraní, jsou hostitelé, kteří poskytují SLIP, ale nemají žádný Ethernet. Přesto však potřebujete rozhraní, které bude mít po celou dobu přiřazenu IP-adresu. Podrobněji je tento problém probírán ve stati Fiktivní rozhraní v kapitole 5.

3.3 Průvodce linuxovými síťovými zařízeními

    Jádro Linuxu podporuje množství ovladačů hardwaru pro různé typy zařízení. Tato staš obsahuje krátký přehled dostupných rodin ovladačů a názvů rozhraní, které ovladače používají.

V Linuxu existuje množství standardních názvů rozhraní, jejichž výčet následuje. Většina ovladačů podporuje více než jedno rozhraní. V takovém případě jsou rozhraní číslována,např. eth0, eth1 atd.

 

lo Lokální zpětnovazebné rozhraní. Je používáno za účelem testování, stejně jako dvojice síťových aplikací. Pracuje jako uzavřený obvod, kde všechny datagramy, které jsou na něj poslány, jsou okamžitě. V jádru existuje vždy jedno zpětnovazebné rozhraní. Menší nebo větší počet těchto rozhraní nemá smysl.
ethn Ethernetová karta číslo n. To je obecný název rozhraní pro většinu ethernetových karet.
dln Tato rozhraní přistupují ke kapesnímu adaptéru D-Link DE-600, což je další ethernetové zařízení. Jeho specialita spočívá v tom, že je řízeno přes paralelní port.
sln Rozhraní SLIP číslo n. Rozhraní SLIP jsou přidělena sériovým linkám v takovém pořadí, v jakém jsou sériové linky přiřazovány protokolu SLIP; například první sériová linka nakonfigurovaná pro protokol SLIP bude sl0 atd. Jádro podporuje až čtyři rozhraní SLIP.
pppn Rozhraní PPP číslo n. Stejně jako rozhraní SLIP je i rozhraní PPP přiděleno sériové lince v okamžiku, kdy je sériová linka přepnuta do režimu PPP. V současné době jsou podporována až čtyři rozhraní.
plipn Rozhraní PLIP číslo n. Protokol PLIP dopravuje datagramy po paralelních linkách. Jsou podporována až tři rozhraní PLIP. Tato rozhraní jsou přidělována ovladačem PLIP při procesu zavádění systému a jsou mapována na paralelní porty.

Pro ostatní ovladače rozhraní, které budou připsány později, například ISDN nebo AX.25, budou zavedeny nové názvy.

V následujících odstavcích si popíšeme použití výše popsaných ovladačů.

3.4 Instalace Ethernetu

    Aktuální síťový kód Linuxu podporuje různé skupiny ethernetových karet. Většinu ovladačů napsal Donaldem Becker (becker@cesdis.gsfc.nasa.gov), který je autorem rodiny ovladačů karet založených na čipu National Semiconductor 8390; tato skupina se proslavila pod názvem Becker Series Drivers. Dále existují ovladače pro několik produktů od firmy D-Link, mezi ně patří i kapesní adaptér D-Link, který umožňuje přistupovat k Ethernetu přes paralelní port. Tento ovladač napsal Bjřrn Ekwall (bj0rn@blox.se). Ovladač DEPCA vytvořil Davide C. Davies (davies@wanton.lkg.dec.com).

3.4.1 Kabeláž Ethernetu

    Pokud instalujete Ethernet poprvé v životě, pak se vám možná bude hodit krátký úvod do kabeláže. Ethernet je velmi vybíravý na správné kabely. Kabel musí být na obou koncích ukončen rezistorem o odporu 50 Ohmů a nesmí mít žádné větvení (například tři kabely spojené do hvězdy). Pokud používáte tenký koaxiální kabel s BNC-konektory tvaru T, musí být tyto konektory zacvaknuty přímo do konektoru karty; neměli byste vřazovat žádný kabelový segment.

    Pokud používáte tlusté kabely, musíte svého hostitele připojit přes tzv. transceiver (někdy se také používá označení jednotka pro připojení Ethernetu). Transceiver můžete zapojit do 15pólového portu AUI, který najdete na vaší kartě. Alternativou je použití stíněného kabelu.

3.4.2 Podporované karty

Kompletní seznam podporovaných karet je k dispozici v dokumentu Ethernet HOWTO, jehož autorem je Paul Gotmaker.

    Následuje seznam známějších karet podporovaných systémem Linux. Aktuální seznam, který najdete v dokumentu HOWTO, je asi třikrát delší. I když ale najdete v tomto seznamu svou kartu, podívejte se nejprve do dokumentu HOWTO. Někdy jsou tam totiž důležité informace o tom, jak tyto karty úspěšně zprovoznit. To se týká zejména některých ethernetových karet založených na kanálu DMA, které používají stejný DMA-kanál jako implicitně nastavený SCSI-řadič Adaptec 1542. Pokud nepřesunete jednu z karet na jiný DMA-kanál, bude ethernetová karta zapisovat data z paketu na libovolná místa na vašem pevném disku.

3Com EtherLink Jsou podporovány karty 3c503 a 3c503/16, stejně tak i 3c507 a 3c509. To platí i pro kartu 3c501, která je ale příliš pomalá, než aby se její koupě vyplatila.

Novell Eagle NE1000, NE2000 a spousta jejich klonů. Jsou podporovány i karty NE1500 a NE2100.

Western Digital/SMC Podporovány jsou karty WD8003 a WD8013 (stejné jako SMC Elite a SMC Elite Plus) a také nová karta SMC Elite 16 Ultra.

Hewlett Packard HP 27252, HP 27247B a HP J2405A.

D-Link Kapesní adaptér DE-600, DE-100, DE-200 a DE-220-T. Existuje i záloha pro kartu DE-650-T, což je PCMCIA karta.

DEC DE200 (32K/64K), DE202, DE100 a DEPCA model E.

Allied Telesis AT1500 a AT1700.

    V Linuxu lze společně s jednou z těchto karet použít předkompilované jádro od jednoho z hlavních linuxových distributorů. Tato jádra mají zpravidla vestavěné ovladače pro všechny typy karet. Nicméně z dlouhodobého hlediska je lepší si sestavit své vlastní jádro a zkompilovat ho pouze s těmi ovladači, které budete skutečně potřebovat.

3.4.3 Automatická detekce Ethernetu

    Při zavádění se ethernetový kód pokusí nalézt vaši kartu a určit její typ. Karty jsou detekovány na následujících adresách a v následujícím pořadí:

 

Karta Sondované adresy
WD/SMC 0x300, 0x280, 0x380, 0x240
SMC 16 Ultra 0x300, 0x280
3c501 0x280
3c503 0x300, 0x310, 0x330, 0x350, 0x250, 0x280, 0x2a0, 0x2e0
Nex000 0x300,0x280, 0x320, 0x340, 0x360
HP 0x300,0x320, 0x340, 0x280, 0x2c0, 0x200, 0x240
DEPCA 0x300,0x320, 0x340, 0x360

    Pro kód automatické detekce existují dvě omezení. Za prvé, jádro nemusí korektně rozpoznat všechny karty. To platí zejména pro některé levnější klony běžných karet, ale také pro některé karty WD80x3. Druhým problémem je, že jádro nebude automaticky detekovat výskyt více než jedné karty. To je záměr, protože se předpokládá, že budete osobně chtít řídit, které rozhraní bude dané kartě přiřazeno.

Používáte-li více než jednu kartu nebo pokud se automatická detekce karty nezdaří, je třeba jádru explicitně říci základní adresu a název karty.

    V Net-3 můžete k tomuto účelu použít dva různé postupy. Jeden spočívá v úpravě nebo doplnění informací do souboru drivers/net/Space.c se zdrojovým kódem jádra, který obsahuje veškeré informace o ovladačích. Tento způsob se doporučuje pouze v případě, že jste obeznámeni se síťovým kódem. Mnohem lepší je poskytnout jádru tyto informace při zavádění. Pokud pro zavádění systému použijete příkaz lilo, můžete předat parametry jádra za pomoci volby append v souboru lilo.conf. Chcete-li jádro informovat o ethernetovém zařízení, předejte mu následující parametr:

ether=irq,base_addr,param1,param2,name

    První čtyři parametry jsou číselné, zatímco poslední představuje název zařízení. Všechny numerické hodnoty jsou nepovinné; pokud je vynecháte nebo uvedete nulové hodnoty, pokusí se jádro získat jejich hodnotu detekcí nebo místo nich použije implicitní hodnoty.

    První parametr nastavuje IRQ, které bude přiděleno zařízení. Jádro se implicitně pokusí automaticky detekovat IRQ-kanál daného zařízení. Ovladač 3c503 disponuje speciální vlastností, která vybere volný IRQ-kanál ze seznamu 5, 9, 3, 4 a nakonfiguruje kartu tak, aby tento kanál používala.

    Parametr base_addr udává V/V základní adresu karty. Zadáte-li hodnotu nula, pokusí se jádro zjistit adresu z výše uvedeného seznamu.

    Zbývající dva parametry mohou různé typy ovladačů používat odlišným způsobem. U karet sdílejících paměť, jako například WD80x3, určují počáteční a koncovou adresu oblasti sdílené paměti. Ostatní karty používají zpravidla parametr param1 k nastavení úrovně zobrazení ladicích informací. Hodnoty od 1 do 7 ukazují zvyšující se úroveň rozsahu výpisů, zatímco hodnota 8 ji vypíná; 0 udává implicitní volbu. Ovladač 3c503 používá param2 k výběru vnitřního transceiveru (implicitně) nebo vnějšího transceiveru (hodnota 1). Nulová hodnota způsobí použití BNC-konektoru umístěného na kartě; hodnota 1 vyvolá použití portu AUI.

    Pokud máte dvě ethernetové karty, může Linux automaticky detekovat jednu z nich a parametry druhé karty mu pak předáte pomocí příkazu lilo. Je třeba se však ujistit, že ovladač náhodně nenašel nejprve druhou kartu. V tom případě by totiž druhou kartu vůbec nenašel. Lze tak učinit pomocí volby reserve v příkazu lilo, která explicitně řekne jádru, aby nedetekoval V/V-prostor obsazený druhou kartou.

Chcete-li například, aby Linux nainstaloval druhou ethernetovou kartu na adresu 0x300 jako eth0, musíte jádru předat následující parametry:

reserve=0x300,32 ether=0,0x300,eth1

Volba reserve zajistí, aby žádný ovladač nepřistupoval při detekci určitého zařízení k V/Vprostoru karty. Parametry jádra lze také použít k přesměrování automatické detekce eth0:

reserve=0x340,32 ether=0,0x340,eth0

Chcete-li úplně vypnout automatickou detekci, použijte argument base_addr s hodnotou -1:

ether=0,-1,eth0

3.5 Ovladač PLIP

    Protokol PLIP znamená IP-protokol po paralelní lince (Parallel Line IP) a představuje levnou alternativu sítě, pokud chcete propojit pouze dva počítače. Používá paralelní port společně se speciálním kabelem a dosahuje rychlosti od 10 kBps do 40 kBps.

    Protokol PLIP původně vyvinula firma Crynwr, Inc. Jeho návrh je poměrně prostý: po dlouhou dobu byly u počítačů PC paralelní porty používány pouze jako jednosměrné porty pro tiskárny; to znamená, že při posílání informací z počítače PC do periferního zařízení mohlo být použito pouze osm datových linek. Posílání nebylo možné opačným směrem. Protokol PLIP se s tím vypořádal tak, že u portu používá pro vstup pět stavových linek, což ale zpomaluje přenos dat, protože všechna data jsou přenášena pouze po částech (po polovinách bajtu). Tento pracovní režim se nazývá nulový režim protokolu PLIP. Dnes se zdá, že se již tyto jednosměrné porty vůbec nepoužívají. Proto existuje rozšíření protokolu PLIP zvané režim 1, které používá plné 8bitové rozhraní.

    Na rozdíl od předchozích verzí kódu protokolu PLIP se současná verze snaží být kompatibilní s implementacemi protokolu PLIP firmy Crynwr. Totéž platí i pro ovladač protokolu PLIP v telnetu NCSA.

    Ke spojení dvou počítačů za pomoci protokolu PLIP potřebujete speciální kabel, který seženete v některých obchodech pod označením kabel "Null Printer" nebo "Turbo Laplink". Poměrně jednoduše si ale můžete vyrobit kabel vlastní. Příloha A ukazuje, jak na to.

Linuxový ovladač protokolu PLIP je výsledkem práce obrovského množství lidí. Momentálně ho spravuje pan Niibe Yutaka. Pokud je ovladač protokolu PLIP zakompilován do jádra, nastaví následující síťové rozhraní každého z dostupných paralelních portů: rozhraní plip0 bude odpovídat paralelnímu portu lp0, rozhraní plip1 bude odpovídat paralelnímu portu lp1 atd. Mapování rozhraní PLIP k paralelním portům je následující:

 

Rozhraní V/V port IRQ
plip0 0x3BC 7
plip1 0x378 7
plip2 0x278 5

    Máte-li port pro tiskárnu nakonfigurován odlišným způsobem, je třeba upravit tyto hodnoty v souboru drivers/net/Space.c, ve zdrojovém kódu jádra Linuxu. Potom je třeba jádro znovu sestavit.

    Nicméně toto mapování neznamená, že nemůžete používat paralelní porty obvyklým způsobem. Ovladač protokolu PLIP přistupuje k paralelním portům pouze v případě, že je k němu nakonfigurováno odpovídající rozhraní.

3.6 Ovladače SLIP a PPP

    Protokoly SLIP (IP po sériové lince) a PPP (Protokol Point-to-Point) se hojně využívají k posílání IP-paketů po sériové lince. Připojení SLIP a přístup k internetovým počítačům za pomoci protkolu PPP nabízí množství firem. Tímto způsobem poskytují IP připojení soukromým osobám (jinak by pro ně bylo připojení cenově nedostupné).

    Abyste mohli používat ovladače SLIP nebo PPP, nejsou nutné žádné hardwarové úpravy; stačí použít libovolný sériový port. Protože sériové porty nejsou pro komunikaci na bázi TCP/IP typické, bude jim věnována samostatná kapitola.Více informací tak najdete v kapitole 4.

Previous Content Next Up