Quagga - HOWTO
Jak jsem rozchodil Quaggu na Debianu
Předem bych chtěl poděkovat Vladkimu ktrý neúnavně odpovídá na mé únavné otázky, TomMovi
za vytvoření skriptů a konfiguráků a Skalákovi který mi poskytl tyto vytvořené soubory.
Prvně jsem se sna�il rozchodit Quaggu mezi dvěmi PC propojených na ethernetu. Poměrně
dlouho a bez výsledku. Pak jsem pou�il nastaveni od TomMa. A zde byli prvni výsledky.
Ale abych to nezdr�oval, tak tady je muj navrh postupu:
- Nastavit dummy adresu. Pokud nemáme dummy rozhraní, mů�eme nastavit přidělenou
dummy adresu na rozhrani lo:1. Tato varianta take funguje bez problemů.
- A - Pro Debian upravit soubor /etc/network/options následovne:
ip_forward=yes
spoofprotect=no
syncookies=yes
B - pro ostatní systémy vytvoříme skript rpfilteroff. Je potřeba zajistit, aby se spu�těl automaticky. Nastaví aby jadru nevadilo, kdy� odpoveď na paket přijde jinou cestou. (Podle Johanky.)
- Upravit soubor /etc/quagga/debian.conf
vtysh_enable=no
- Upravit soubor /etc/quagga/daemons (nevim proč, ale funguje to)
zebra=1
bgpd=no
ospfd=2
ospf6d=no
ripd=no
ripngd=no
- Vytvořit prázdný soubor "vtysh.conf" v adresáři /etc/quagga/
- Nastavit zebru.
K nastavení slou�í soubor "zebra.conf" v adresáři /etc/quagga/. Po zkoumání a badání jsem zjistil, �e pokud router neobsahuje cesty, které se musí ručně nastavit, není třeba tento soubor konfigurovat. Je jen nutné aby byl v adresáři. Pro o�ivení tuto variantu dokonce doporučuji. Případné routy se pak nastavi po o�ivení quaggy.
- Nastavit ospfd.
Tak toto je nejdule�itěj�í část. Nastavení je ulo�eno v souboru /etc/quagga/ospfd.conf. Zde provedená chyba se vět�inou projevi jen tím, �e to prostě nejede. Zde musí být nadefinovaná v�echna rozhraní na routru, jejich "cena", hlavni IP adresa routeru (dummy), sitě které se mají distributovat a které ne. Také plno dal�ích věcí, které zatim neznáme. Proto se timto souborem budu zabyvat podrobněji.
- Spustit Quagga.
To je nejjednodu�í čast. Stačí napsat "/etc/init.d/quagga start". Pokud budeme mít �těstí a v�e jsme dobře nastavili, tak do jedné minuty se nam zobrazí sousední sitě.
Konfigurace ospfd
Uvadim přímo vlastní konfigurační soubor popisem, nebot mě připada poměrně jasný.
Pro ujasnění je�tě uvádím, ze gw má dvě sítové rozhraní, z toho jedno je do internetu
(veřejná IP) a dvě bezdrátové sítě. Wlan0 ja mistní AP pro klienty a wlan1 slouzi jako
link na dalsi PC.
! Zapnuti logovani (po oziveni doporucuji vypnout) ! log file /var/log/quagga/ospfd.log ! log syslog ! ! Jmeno PC routeru hostname gw ! ! Seznam interfejsu a jejich cen. Priorita se tyka volby designated routeru. ! Cena se vypocita: cost= 1Gbps / rychlost interface ! Prikad : Sitovka 100M - cost= 10 ! Sitovka 10M - cost=100 ! Dummy je lokalni, proto cost=1 ! Wifi spoj se nastavuje podle kvality cost 100 az 1000 ! pro AP k pripojeni klientu doporucuji cost 200 az 1000 ! pro link mezi dvema PC doporucuji cost 100 a� 500 interface lo ! interface dummy0 description router ip ip ospf cost 1 ! interface eth0 description Internet ip ospf cost 2000 ip ospf priority 0 ! interface eth1 description Localnet ip ospf cost 10 ip ospf priority 1 ! interface wlan0 description AP Dlouha ip ospf cost 200 ip ospf priority 1 ! interface wlan1 description AP Link ip ospf cost 100 ip ospf priority 1 ! router ospf ! ID routeru - nejlepe asi vzit IP adresu "nejstabilnejsiho" interfejsu ospf router-id 10.129.64.65 ! ! chceme, aby OSPF (krome toho, co se dozvi vzajemnou komunikaci routeru) ! vytrubovalo jeste primo pripojene site a staticke cesty ze zebra.conf ! POZOR - default route se roztrubovat nebude - zamysli se, co by to melo ! za nasledky (jednim slovem pohroma). Pokud by se tak melo dit, musel by se ! sem pridat prikaz, ktery to povoluje. Takze default route je sice static, ! ale redistribute static se na ni nevztahuje. redistribute connected metric-type 1 redistribute static metric-type 1 ! ! Seznam interfaces ktere neobtezuj s broadcasty passive-interface eth0 ! ! Primo pripojene site na ktere se posilaji a poslouchaji broudcasty zebry a OSPF network 10.129.65.0/27 area 0 network 10.129.65.64/26 area 0 network 10.129.66.120/29 area 0 ! ! Primo pripojena sit, ktera se nema dale rozsirivat network 212.96.177.0/24 area 255 area 255 range 212.96.177.0/24 not-advertise ! ! Seznam routru ktere jsou na jedne podsiti neighbor 10.129.65.100 neighbor 10.129.66.121 ! !
Ře�ení problému
Pokud se nám v routovací tabulce nic neuká�e, přitom víme �e jsme připojeni na dal�í quaggu,
je dobré si ověřit jestli vysíláme broudkasty. K tomuto učelu jsem pou�il skript
logmon. Ten prvně nastaví pomocí iptables logovaní
broukastových paketů a poté začne pravidelně ka�dých 5 sekund tento log vypisovat.
Tyto broudkasty by se měly zobrazovat na v�ech rozhraní (pokud jsme to nezablokovali).
Jakmile se quaggy spolu "chytnou", objeví se broudkast na vstupu z IP adresou odesilatele
(druhé quaggy). Pokud ani poté se quagga nechytne a nevypise routy, je dobré provést
restart obou PC. Poté se mě v�dy chytla.
Odkazy
K pochopení a správnému nastavení mu�e take pomoci popis od
Johanky, nebo
tento popis.
Závěr
Budu se zde sna�it
zveřejnit postupně dal�í postřehy jak mé, tak těch co konstruktivně přispějí.
Tydýt