Pisze ten tekst dla wszystkich milosnikow iproute/iproute2, ktorzy nie potrafia juz zwyklego routingu bez tych toolsow zrobic. A to przeciez takie latwe! Niezaleznie od iproute, ludzie ci nie potrafia tez obslugiwac ifconfig, aby np. dodac IP do interfejsu. Zaczynamy od najprostszego setupu sieci, powiedzmy wewnetrznej, w ktorej dostalismy IP z puli 192.168.x.x przy czym nasza bramka to 192.168.0.1: ifconfig eth0 192.168.0.25 netmask 255.255.255.0 up (na FreeBSD zastap eth0 swoim interfejsem sieciowym) *cyk* i mamy IP na interfejsie. OK, to bylo latwe, nie? I nawet nie potrzeba bylo iproute, prawda? ;) Teraz bedzie troche trudniej, ale ciagle jeszcze nie potrzeba iproute (niesamowite, nieprawdaz?). Dodajemy standardowa route pakietow: Linux: route add default gw 192.168.0.1 FreeBSD: route add default 192.168.0.1 O ustawianiu DNS nie napisze tu specjalnie, bo nie nalezy to do tematu. Przyjrzyjmy sie dokladniej naszej bramce. Nie widac na niej iproute. Straszne! Co teraz zrobimy? Jak zrobic routing pomiedzy 2 sieciami na 2 kartach ethernet? Ano, nie trzeba iproute... ba... nie trzeba nawet route! Kernel (linuxowy i freebsdowy) robia to full-automagicznie. Jak? Dodajemy na drugim interfejsie bramki po prostu drugie IP, do drugiej sieci. Jedyna rzecz na ktora trzeba zwazac to to, aby dwie sieci na roznych interfejsach NIGDY (powtarzam, NIGDY) sie nie nakrywaly! Dodajemy po prostu te IP: ifconfig eth1 192.168.1.1 netmask 255.255.255.0 up (na FreeBSD zastap eth1 swoim interfejsem sieciowym) po czym idziemy na druga workstacje (pierwsza ustawilismy juz z adresem 192.168.0.25) i ustawiamy tam tak samo IP: ifconfig eth0 192.168.1.58 netmask 255.255.255.0 up (na FreeBSD zastap eth0 swoim interfejsem sieciowym) I co, bolalo? Nie, oczywiscie nie. Teraz (pamietaj: full-automagicznie!) mozna juz pingowac z pierwszej workstacji druga. Jezeli to nie dziala, wklepujemy na bramce: Linux: echo 1 >/proc/sys/net/ipv4/ip_forward FreeBSD: sysctl net.inet.ip.forwarding=1 Po czym caly routing zostaje wlaczony (full-automagicznie). Tablice routingu mozemy zobaczyc (nie, nie komeda route, bo pokazuje tylko na linuxie) komenda netstat: netstat -rn No tak, powiecie... ale gdzie tu iproute? Nie ma i nie bedzie. Nie trzeba, nigdy nie bylo i nie bedzie potrzebne. Przynajmniej dla was. Jak naprawde bedziecie potrzebowac, to sami zauwazycie gdzie sa granice komendy route. I to tyle na dzisiaj. Nastepnym razem zrobimy to samo na IPv6, chociaz przy odrobinie myslenia powinniscie to juz sami umiec zrobic ;) SinusPL, Wed Oct 20 17:59:28 CEST 2004 ---- Witamy na nastepnej lekcji: routing dla poczatkujacych (bez iproute)! Temat dzisiejszej lekcji: jak wyroutowac zakres IP na inny komputer w sieci. Zalozenie: dostalismy od ISP zakres IP, powiedzmy 1.1.1.0/28. Jest to 16 IP. Pare z nich chcemy zatrzymac na routerze, inne chcemy wyroutowac dalej, na nasz komputer w sieci. Istnieje pare sytuacji: Sytuacja 1: Link od ISP Siec lokalna ---------------eth0-[MODEM/ROUTER]-eth1------------------eth0-[KOMP1] Na routerze: eth0 ma pare IP, powiedzmy: 1.1.1.1, 1.1.1.2 i 1.1.1.3 z maska 255.255.255.240 W tym wypadku, aby KOMP1 mogl tez uzywac adresow z puli 1.1.1.0/28, MUSI on byc podlaczony rownolegle z ROUTER do internetu. Nie za nim. Jezeli ale ISP dal siec transferowa, np. 2.2.2.0/30 czyli 4 IP, sytuacja wyglada nastepujaco: ISP 2.2.2.1 -> ROUTER 2.2.2.2 + 1.1.1.1 + 1.1.1.2 + 1.1.1.3 -> KOMP 1.1.1.4 W tym wypadku mozemy podzielic siec 1.1.1.0/28 na 2 sieci, po 8 adresow, czyli na 1.1.1.0/29 i 1.1.1.8/29. Jedna z nich zachowujemy na ROUTER, na dowolnym interfejsie, na KOMP1 i ROUTER robimy znowu dowolna siec transferowa (np. z 192.168.5.x) i routujemy na ROUTER ten zakres na KOMP1: Linux: route add -net 1.1.1.8/29 gw 192.168.144.1 FreeBSD: route add -net 1.1.1.8/29 192.168.144.1 Po czym dopisujemy do eth0 na KOMP1 odpowiednie IP (z tych 8 jest 6 do uzytku). Po default route KOMP1 i ROUTER wiedza, dokad odprowadzac pakiety z tych IP. Wszystko to znowu bez iproute ;) Co prawda nie zrobilismy tego po IPv6, ale jeszcze zrobimy ;) SinusPL, Thu Oct 21 16:18:54 CEST 2004