Bridge - instalacja.<newline> <author>Autor: Chris Cole, <htmlurl url="mailto:chris@polymer.uakron.edu" name="chris@polymer.uakron.edu"><newline> v1.03, 23 Sierpnia 1996<newline> <bf>Wersja polska: Bartosz Maruszewski <htmlurl url="mailto:B.Maruszewski@zsmeie.torun.pl" name="B.Maruszewski@zsmeie.torun.pl"><newline> </bf> v1.01, 26 Lipca 1997 <abstract> Wszelkie sugestie i poprawki są mile widziane pod adresem <em/chris@polymer.uakron.edu/. Oryginał tego dokumentu możesz znaleźć pod adresem <htmlurl url="ftp://ftp.icm.edu.pl:/pub/Linux/sunsite/docs/HOWTO/mini" name="ftp.icm.edu.pl"> w katalogu <tt>/pub/Linux/sunsite/docs/HOWTO/mini</tt>. Dokument ten został napisany w standardzie ISO-8859-2. </abstract> <sect>Ustawienie bridge'a. <p> <enum> <item>Zdobądź "Bridge Config" (BRCFG.tgz): <url url="ftp://shadow.cabi.net/pub/Linux/" name="shadow.cabi.net">. <item>Zdobądź i przeczytaj Multiple ethernet HOWTO na <url url="ftp://ftp.icm.edu.pl:/pub/Linux/sunsite/docs/HOWTO/mini/Multiple-Ethernet" name="SUNSite Polska">. <item>Włącz złożone urządzenia ethernet-owe przez dodanie tej linii do pliku <tt>/etc/lilo.conf</tt> <verb> append = "ether=0,0,eth1" </verb> Jeśli masz trzy interfejsy na swoim bridge'u, to wpisz taką linię: <verb> append = "ether=0,0,eth1 ether=0,0,eth2" </verb> Więcej urządzeń można dodać zwiększając ilość parametrów <it/ether/. Domyślnie jądro szuka tylko jednej karty Ethernet, a jak już znajdzie to przerywa dalsze szukanie. Linia ta informuje jądro, aby szukało dalej urządzeń Ethernet jak już znajdzie jedno. Alternatywnie możesz użyć parametru podczas startu: <verb> linux ether=0,0,eth1 </verb> albo z trzema interfejsami: <verb> linux ether=0,0,eth1 ether=0,0,eth2 </verb> <item>Skompiluj ponownie jądro z włączoną opcją <tt/BRIDGING/. <item>Bridge nie powinien mieć adresu IP. Może mieć, ale czysty bridge go nie potrzebuje. Aby usunąć adres IP ze swojego bridge'a idź do katalogu <tt>/etc/sysconfig/network-scripts/</tt> (w dystrybucji RedHat) i skopiuj plik <tt/ifcfg-lo0/ na <tt/ifcfg-eth0/ i <tt/ifcfg-eth1/. W tych dwóch plikach *-eth zmień linię <tt/DEVICE=lo/ na <tt/DEVICE=eth0/ i <tt/DEVICE=eth1/. W innych dystrybucjach może to być rozwiązane inaczej, zrób to co musisz ! Jeśli jest więcej niż dwa interfejsy na tym bridge'u, upewnij się, że zrobiłeś dla nich odpowiednie urządzenia. <item>Zrestartuj system, żeby uruchomić nowe jądro i żeby interfejsy sieciowe nie były podpięte pod numery IP. <item>Jak już system stoi, uruchom kart-ę/y w trybie "bezwzględnym" (promiscous), tak że będą śledzić każdy pakiet przechodzący przez nie: <verb> ifconfig promisc eth0 ; ifconfig promisc eth1 </verb> Wszystkie interfejsy, do których są podłączone segmenty mające być bridge'owane muszą być w tym trybie. <item>Włączanie bridge'owania przy pomocy programu <it/brcfg/: <verb> brcfg -ena </verb> <item>Sprawdź czy na każdym interfejsie jest inny ruch: <verb> tcpdump -i eth0 (w jednym oknie) tcpdump -i eth1 (w innym oknie) </verb> Uruchom jakiegoś sniffer-a czy tcpdump-a na innej maszynie, żeby zweryfikować, że bridge oddziela poprawnie segmenty. </enum> <sect>Częste problemy. <p> P1: Dostaję komunikat: <tt/"ioctl(SIOCGIFBR) failed: Package not installed"/. Co on oznacza ? O1: Nie masz włączonej opcji <it/BRIDGING/ w jądrze. Zdobądź jakieś jądro 2.0 lub wyższe i skompiluj je z tą opcją włączoną. P2: Maszyny z jednej strony nie mogą ping-ować drugiej strony ! O2: - Czy włączyłeś bridge'owanie poleceniem <it/brcfg -ena/ ?<newline> (<it/brcfg/ powinien pisać <tt/bridging is ENABLED/.)<newline> - Czy właczyłeś tryb "bezwzględny" na urządzeniach ?<newline> (wydaj polecenie <it/ifconfig/. Flaga <tt/PROMISC/ powinna być<newline> włączona dla wszystkich interfejsów)<newline> - Używając złożonych adapterów interfejsów, upewnij się, że<newline> odpowiedni interfejs jest włączony. Może musisz użyć<newline> programu konfiguracyjnego, który przyszedł wraz z kartą. P3: Nie mogę się połączyć telnet-em, ftp z bridge'a ! Czemu ? O3: Dlatego, że interfejsy na bridge'u nie mają przypisanych adresów IP. Bridge ma być przeźroczystą częścią sieci. P4: Co muszę zrobić, żeby ustawić ruting ? O4: Nic ! Cały ruting jest obsługiwany przez kod w jądrze. Żeby zobaczyć znalezione przez bridge adresy ethernet-owe użyj programu <it/brcfg/: <verb> brcfg -deb </verb> P5: Bridge niby działa, ale dlaczego <it/traceroute/ go nie pokazuje ? O5: Z powodu natury bridge'a - <it/traceroute/ <bf/NIE/ powinien pokazywać bridge'a jako części ścieżki. Bridge ma być przeźroczystą częścią sieci. P6: Czy muszę wkompilować <tt/IP_FORWARD/ w jądro ? O6: Nie. Kod bridge'a w jądrze zajmuje się transportem pakietu. <tt/IP_FORWARD/ jest dla ruterów, które mają przypisane adresy IP do swoich interfejsów. P7: Dlaczego według programu <it/brcfg/ adresy ethernet-owe dla portu 1 i 2 są takie same - nie powinny być różne ? O7: Nie. Każdemu portowi na bridge'u specjalnie przypisywany jest ten sam adres ethernet-owy przez kod bridge'a. <sect>Od tłumacza. <p> Tłumaczenie to jest chronione prawami autorskimi © Bartosza Maruszewskiego. Dozwolone jest rozprowadzanie i dystrybucja na prawach takich samych jak dokument oryginalny. Jeśli znalazłeś jakieś rażące błędy ortograficzne, gramatyczne, składniowe, techniczne to pisz do mnie: <htmlurl url="mailto:B.Maruszewski@zsmeie.torun.pl" name="B.Maruszewski@zsmeie.torun.pl"> Oficjalną stroną tłumaczeń HOWTO jest <htmlurl url="http://www.jtz.org.pl/" name="http://www.jtz.org.pl/"> Aktualne wersje przetłumaczonych dokumentów znajdują się na tejże stronie. Dostępne są także poprzez anonimowe ftp pod adresem <htmlurl url="ftp://ftp.ippt.gov.pl/pub/Linux/JTZ/" name="ftp.ippt.gov.pl"> w katalogu <tt>/pub/Linux/JTZ/</tt>. Przetłumaczone przeze mnie dokumenty znajdują się także na <url url="http://www.zsmeie.torun.pl/~bart/tlumaczenie.html" name="mojej stronie WWW."> Są tam też odwołania do Polskiej Strony Tłumaczeniowej. Kontakt z naszą grupą, grupą tłumaczy możesz uzyskać poprzez listę dyskusyjną jtz@ippt.gov.pl. Jeśli chcesz sie na nią zapisać, to wyślij list o treści <tt>subscribe jtz Imię Nazwisko</tt> na adres <tt>listproc@ippt.gov.pl</tt> </article>