Výsledky 1 až 9 z 9

Téma: OSPF

  1. #1

    Standardní OSPF

    Mohl by nekdo poradit nejake blizsi informace (konkretni, jyxo a google znam). O implmentaci OSPF/quaggy,zebry - dynamickeho routovani? Jde mi o pochopeni principu, nasledne prakticke vyuziti.
    Diky
    amd64 x86_64 AMD Athlon(tm) 64 Processor 3000+ GNU/Linux
    Největší zábavou bývají ty počítačové úlohy, které jsou v praxi naprosto k ničemu

  2. #2

    Standardní

    Mám zkušenost s ripem v podání zebry, ospf už moc odlišný není.

    RIP mám nasazen na všech asi 8 routerech v síti. Jednoduše zkompiluješ zebru, vytvoříš init skripty pro spouštění a spustíš démony zebrad a ripd. Pro fungování se na to není třeba připojovat, takže to v zebrad.conf a ripd.conf zakážeš. Do ripd.conf pak už jen přidáváš rozhraní / subnety, který chceš propagovat do sítě a o ostatní se stará démon sám. U ospf je to podobně, jen se u route nastavujou ještě costy, aby démon věděl, která cesta je výhodnější..
    WS: AMD Athlon 64 4000+/2.6GHz, Gigabyte GA-MA69GM-S2H, 4GB RAM, 80GB Seagate 7200.10, 160GB Samsung SP1614C, LG GSA-4163B, Int. VGA Radeon X1250, AOpen H500B 350W, EIZO S1910-K, MS Basic Keyboard, MS Laser Mouse 6000
    SRVR: Intel Celeron 2.16GHz, Intel D865PERL, 1GB RAM, 2x320GB + 1x300GB Seagate SATA, AOpen H600A 350W, Inet 16Mbps/10GHz od www.lysafree.net

  3. #3

    Standardní

    Citace Původně odeslal KUBA
    Mám zkušenost s ripem v podání zebry, ospf už moc odlišný není.

    RIP mám nasazen na všech asi 8 routerech v síti. Jednoduše zkompiluješ zebru, vytvoříš init skripty pro spouštění a spustíš démony zebrad a ripd. Pro fungování se na to není třeba připojovat, takže to v zebrad.conf a ripd.conf zakážeš. Do ripd.conf pak už jen přidáváš rozhraní / subnety, který chceš propagovat do sítě a o ostatní se stará démon sám. U ospf je to podobně, jen se u route nastavujou ještě costy, aby démon věděl, která cesta je výhodnější..
    Dik, uz jsem neco nastudoval, snad zitra zkusime prejit na dyn. routovani . Btw jak se identifikuji igw's ? Mam nejakou predstavu, ale chci si byt jist.
    Kód:
    router ospf
     ...
     default-information originate always metric-type 1
    -- tohle by podle me melo propagovat konc. igatewaye (kdyz je jich vic, +jeste metriku). ()

    Pridavam linky, ze kterych jsem ziskal potrebne informace:

    http://www.zebra.org/
    http://pilot.org.ua/zebra/ospf.html
    http://www.repy.net/rfc/
    http://www.root.cz/clanek/1738
    http://www.abclinuxu.cz/forum/show/66360
    http://www.abclinuxu.cz/forum/show/62554
    amd64 x86_64 AMD Athlon(tm) 64 Processor 3000+ GNU/Linux
    Největší zábavou bývají ty počítačové úlohy, které jsou v praxi naprosto k ničemu

  4. #4
    Administrátor mince Avatar uživatele Jezevec
    Založen
    08.10.2002
    Bydliště
    Teplice
    Příspěvky
    6 736
    Vliv
    300

    Standardní

    Vzhledem k tomu ze to doma prave confim, tak neco malo:

    Pouzivam quagga 0.96.5, tohle je jen pokusnej konfig, ale mezi dvema kompama na LAN to fucka.

    zebra.conf:

    Kód:
    !
    ! Zebra configuration saved from vty
    !   2004/10/21 21:03:26
    !
    hostname jzvc_main_gw
    password heslo
    enable password heslo
    log stdout
    service advanced-vty
    service password-encryption
    !
    interface dummy0
     description router-ip
     ip address 10.160.0.1/32
     ipv6 nd suppress-ra
    !
    interface eth0
     description inet-ronja
     bandwidth 250
     ip address 10.10.10.10/30
     ipv6 nd suppress-ra
    !
    interface eth1
     description lan
     bandwidth 100000
     ip address 192.168.0.1/24
     ip address 10.160.1.1/26
     ipv6 address 3ffe:80ee:f28:1::1/64
    !
    ! z nejakyho zahadnyho duvodu to sice prideli IP i router, ale nefucka to
    ! ipv6 nd prefix-advertisement 3ffe:80ee:f28:1::/64
    ! ipv6 nd managed-config-flag
    ! ipv6 nd other-config-flag
    ! ipv6 nd ra-lifetime 900
      ipv6 nd suppress-ra
    !
    interface eth2
     description inet-proxim-backup
     bandwidth 60
     ip address 192.168.10.5/24
     ipv6 nd suppress-ra
    !
    interface eth3
     description wifi-ap
     bandwidth 10000
     ipv6 nd suppress-ra
    !
    interface ipng
     ipv6 nd suppress-ra
    !
    interface lo
     description loopback
     ip address 127.0.0.1/8
     ipv6 address ::1/128
    !
    interface sit0
     ipv6 nd suppress-ra
    !
    interface tap0
     ipv6 nd suppress-ra
    !
    ip route 0.0.0.0/0 10.10.10.10
    ip route 192.168.2.0/24 192.168.3.2
    ipv6 route 2000::/3 ipng
    !
    ip route 10.0.0.0/8 reject
    !
    access-list term permit 127.0.0.1/32
    access-list term deny any
    !
    !
    line vty
     access-class term
    !
    Heslo se zakoduje, pokud ten conf ulozis z konzole zebry (natelnetis se na ten port a v enable modu das write file)

    Ke kazdymu interface si tu muzes napsat IPv4/IPv6 adresy dle libosti, pokud po startu zebry tu adresu uz ma, nic se nedeje, pokud ne, tak ji dostane.
    Mimochodem interface dummy0 by pro dalsi ucely mel byt normalne videt pres ifconfig(= je treba ho nahodit), ale pro ucely sireni routy to netreba resit. Je to dulezity pro identifikaci konkretniho stroje.

    Melo by to umet i totez co radvd demon, ale jak vidis, je to zakomentovany, paac to "funguje" nako divne.

    ip route ... pridas si tu routy na site, ktery nejsou primo pripojeny (staticky routy). Ten reject jen zaridi, ze pokud router nezna cestu do site z toho rozsahu, tak nepouzije ani default a rejectne ten pozadavek. Sice blbe,ale prece - misto nedostupnosti site vrati nedostupnost stroje, ale budiz. Mozna ze to de nekde zmenit, ale k tomu sem se jeste nedostal.

    ten zbytek jen omezi pristup na telnet z localhostu (+ je samo dory mit nahozenej FW)

    Kdyz ted spustis zebru, normalne priradi ty IP adresy + prida ty staticky routy. Tot vse, nic vic se nestane.

    ospfd.conf:

    Kód:
    !
    ! Zebra configuration saved from vty
    !   2004/10/27 17:41:36
    !
    hostname jzvc_main_gw
    password heslo
    enable password heslo
    log stdout
    service advanced-vty
    service password-encryption
    !
    !
    !
    interface eth0
    !
    interface eth1
    !
    interface eth2
    !
    interface eth3
    !
    interface ipng
     ip ospf network point-to-point
    !
    interface lo
    !
    interface sit0
    !
    interface tap0
    !
    router ospf
     ospf router-id 10.160.0.1
     redistribute connected metric-type 1
     network 10.160.0.1/32 area 0.0.0.0
    ! network 10.160.33.64/28 area 0.0.0.0
     network 10.160.1.0/26 area 0.0.0.0
     neighbor 10.160.0.2
    !
    line vty
    !
    Takze opet popis interfaces (jinak v obou tech confech sou i veci, ktery sem tam nepsal, pridali se tam po write z konzole, takze sou default).
    Dulezita je ta cast za router ospf.
    Jako router-id se pouzije IP dummyho. Jak vidis, distribuce je na conncted = router bude vytrubovat do sveta vsechny routy, ke kterym je primo pripojenej.
    network jsou site kam se bude vytrubovat, v tomhle pripade jsou dve (= bude posilat routy na ty rozhrani, ktery maj IP z tehle rozsahu), na to se muzes podivat v konzoli ospf (show ip ospf interface).

    neighbor je router-id souseda (= v nasem pripade i jeho dummy ip), ten musi mit ve svym konfiguraku neighbor 10.160.0.1. Jinak to nebude fungovat.

    Pokud to ted pustis a na jedny ze siti ktery tu jsou uvedeny pustis dalsi ospfd, kde nechas konfiguraky vpodstate prazdny, krom toho neighbor, tak se ti prenesou routy.

    Tot asi vsjo. Zatim sem neresil ohodnocovani tras, a varuju, na www.quagga.net je sice dokumentace, ale ne vzdy sedi (ten parametr se treba jmenuje trochu jinak , je tam misto mezery pomlcka ...)

    EDIT: Jeste, malem bych zapomel, je treba FW povolit -d 224.0.0.0/24 (asi), tohle sem vycet na root.cz, ale nikde jinde na netu sem to nenasel, nejaka zminka je v RFC, ale taky takova neurcita. na root jsou jmenovany 3 tyhle adresy, ale pokud se k tomu pravidlu prida jeste -s a.b.c.d s IP kamose/u pro ktery tohle povolit, tak to neni problem .

    EDIT 2: Tak uz sem zase o neco chytrejsi, viz dnesni clanek na lupe http://www.lupa.cz/clanek.php3?show=3732 . Je tam kde zjistit ty multicastovy adresy.
    IMPROBE AMOR, QUID NON MORTALIA PECTORA COGIS - krutá jsi, lásko, kam až ty doženeš smrtelná srdce -- Vergilius
    Mnoho je prostředků, které léčí lásku, ale žádný není spolehlivý.
    S tím, čeho se na nás dopustili druzí se už nějak vyrovnáme. Horší je to s tím, čeho jsme se na sobě dopustili sami.
    -- Francois La Rochefoucauld
    Nabídnout přátelství tomu, kdo chce lásku, je jako dát chleba tomu, kdo umírá žízní.

  5. #5

    Standardní

    KOKOK . Mel jsem ted cas, tak jsem prubnul konfiguraci s 5PC . No, zda se, ze se simulace (respektive nastaveni) povedla.

    Zde jsou configy
    zebra.conf
    Kód:
    !
    ! All the same as zebra.conf
    !
    hostname router.nadrazi
    !password router
    !enable password router
    
    !log file /var/log/zebra/zebra.log
    !log record-priority
    !service advanced-vty
    
    ! service password-encryption
    
    !debug zebra events
    !debug zebra kernel
    interface dummy0
     ip address 192.168.0.2/32
    !
    interface lo
     ip address 127.0.0.1/8
    !
    interface wlan0
     ip address 192.168.250.9/29
    !
    interface wlan1
     ip address 192.168.3.97/27
    !
    interface eth1
     ip address 192.168.3.5/27
    !
    interface eth0
     ip address 192.168.1.25/24
    !
    !
    ! Ok, this bit is critical for *BSD machines.
    !
    ! The way that the linux and BSD ip stacks handle multicast is different.
    ! The BSD's need a route to the multicast destinaton before they will send
    ! any packets.
    !
    ! zebra dosn't know that it needs to add the routes it's self, so we add them as static routed
    ! pointing at5 the loopback interface (127.0.0.1)
    !
    !
    ! OSPF-ALL.MCAST.NET
    ip route 224.0.0.5/32 127.0.0.1
    !
    ! OSPF-DSIG.MCAST.NET
    ip route 224.0.0.6/32 127.0.0.1
    !
    ! RIP2-ROUTERS.MCAST.NET (ok, so we don't use rip, but we might as well have it here).
    ip route 224.0.0.9/32 127.0.0.1
    !
    ! Ok, this is important!
    !
    ! The lines below define an access list called 'term' that only allows packets from
    ! 127.0.0.1 (i.e. the local machine), We use this to limit access to zebra it's self
    ! to the local machine.
    !
    ! This means that zebra can only be reconfigured from the box it's running on.
    !
    ! (i think the 'deny any' line is redundant - there is an explicit one at
    ! the end of any access-list)
    !
    access-list term permit 127.0.0.1/32
    access-list term deny any
    !
    ! Here we apply the access list we just defined to the 'vty line' - now we
    ! can only log in from the bpox zebra is running on.
    !
    line vty
     access-class term
    !
    ! Thats it!
    !
    ospf.conf

    Kód:
    !
    ! Zebra configuration saved from vty
    !   2002/08/03 13:50:05
    !
    hostname router.nadrazi
    !password lIdicka
    !enable password lIdicka
    !log file /var/log/zebra/ospfd.log
    !log record-priority
    service advanced-vty
    !
    !
    !
    interface lo
    !
    interface dummy0
    !
    interface eth0
     description nadrazi-hiam
     ip ospf cost 10
    !
    interface eth1
     description nadrazi-libusin
    ! ip ospf network point-to-multipoint
     ip ospf cost 100
    ! ip ospf dead-interval 240
    !
    interface wlan0
     description nadrazi-libusin
     ip ospf cost 14
    ! ip ospf dead-interval 240
    ! ip ospf retransmit-interval 4
    !
    interface wlan1
     description nadrazi-ap
    ip ospf cost 14
    !
    
    router ospf
     ospf router-id 192.168.0.2
     redistribute static metric-type 1
     redistribute connected metric-type 1 
     passive-interface wlan1
     network 192.168.250.0/30 area 0
     network 192.168.250.4/30 area 0
     network 192.168.1.0/24 area 0
     network 192.168.0.2/32 area 0
     neighbor 192.168.0.1
     neighbor 192.168.0.4
    !
    distribute-list confil out connected
    access-list term permit 127.0.0.1/8
    access-list term deny any
    atdatd. Je to parada a celkem to i ulehcuje spravu, kdyz napriklad jeden spoj vypadne.
    amd64 x86_64 AMD Athlon(tm) 64 Processor 3000+ GNU/Linux
    Největší zábavou bývají ty počítačové úlohy, které jsou v praxi naprosto k ničemu

  6. #6

    Standardní

    Kód:
    priloha A: staticke ocenovani OSPF linek
    
    bit / sec             byte/sec        OSPF cost
    eth    1G               100M                1
    eth  100M                10M               10
    eth   10M                 1M              100
    sbni   2M               200K              500
    sbni   1M               100K             1000
    sbni 500K                50K             2000
    sbni 250K                25K             4000

  7. #7
    Administrátor mince Avatar uživatele Jezevec
    Založen
    08.10.2002
    Bydliště
    Teplice
    Příspěvky
    6 736
    Vliv
    300

    Standardní

    Takze na to odnocovani pouzivam bandwidth v zebra.conf ("rychlost" v bit/s) u kazdyho interface a auto-cost reference-bandwidth 1000 ("rychlost" v Mbit/s)v ospfd.conf. Pri tomhle nastaveni je cena 1Gbit linky 1 (pocita se jako podil reference-bandwidth/bandwidth). Funguje to (zatim neni stejne zadna jina cesta).

    Jeste jsem se snazil vyresit source routing, ale akosi mi vyslo, ze daleko efektivnejsi bude proste sirit default routu a kdo ji pripadne na svym routeru ode me chtit nebude, tak si nahodi filtr.

    Ted bych potreboval jeste nejakej rozumne (!= to co je na connected v RFC) okomentovanej prikladek na sumarizaci .

    2CompCrasher default routu lze sirit jen jednu => pokud chces pouzit jinou nez defaultni iGW, tak nejjednodussi reseni je tunel. Jinak bys musel na vsech routerech v oblasti nastavit, ze tvoje pakety urceny do inetu se maj posilat "ke vsem certum" .
    IMPROBE AMOR, QUID NON MORTALIA PECTORA COGIS - krutá jsi, lásko, kam až ty doženeš smrtelná srdce -- Vergilius
    Mnoho je prostředků, které léčí lásku, ale žádný není spolehlivý.
    S tím, čeho se na nás dopustili druzí se už nějak vyrovnáme. Horší je to s tím, čeho jsme se na sobě dopustili sami.
    -- Francois La Rochefoucauld
    Nabídnout přátelství tomu, kdo chce lásku, je jako dát chleba tomu, kdo umírá žízní.

  8. #8

    Standardní

    No, jasne - takhle je akorat urcena metrika u bran a kdyz jedna vypadne, pouzije se druha.. Tak jsem to myslel a pochopil..
    Viz muj planovany ospd.conf

    Kód:
    ! -*- ospf -*-
    !
    ! OSPFd configuration file
    !
    !
    hostname igw1.libusin
    !password zebra
    !enable password please-set-at-here
    !
    !log file /var/log/ospfd.log
    !log stdout
    !
    !definice jednotlivych sitovek
    !
    interface dummy0
    !
    interface lo
    !
    interface eth0 
     description sit
    bandwidth 100000000
    ! 
    interface eth1
     description isp peering
     bandwidth 100000000
    ! 
    interface wlan0
     description backup lan peer
     bandwidth 6000000
    ! 
    
    !nastaveni routeru
    !
    router ospf
     ospf router-id 192.168.0.4
     redistribute connected metric-type 1
     redistribute static metric-type 1
     passive-interface eth1
     network 192.168.3.0/29 area 0
     network ............... area 0
     atd atp
     default-information originate always metric 1
    !
    distribute-list confil out connected
    access-list confil permit 192.168.0.0/8
    access-list confil deny any
    Podle vseho to tak musi fungovat, o weekendu testnu.
    amd64 x86_64 AMD Athlon(tm) 64 Processor 3000+ GNU/Linux
    Největší zábavou bývají ty počítačové úlohy, které jsou v praxi naprosto k ničemu

  9. #9
    Administrátor mince Avatar uživatele Jezevec
    Založen
    08.10.2002
    Bydliště
    Teplice
    Příspěvky
    6 736
    Vliv
    300

    Standardní

    Pokud to tvuj kernel umi (jako ze asi jo) a zaonacis to tak, ze budes mit dve cesty se stejnou metrikou, tak se traffic bude delit mezi ne .
    Ciste teoreticky, by tohle melo jit i kdyz stejnou metriku nemaj, a rozdelit to v tom pomeru. Rucne to udelat umim (ip + nexthop), ale jak k tomu dokopat zebru netusim.
    IMPROBE AMOR, QUID NON MORTALIA PECTORA COGIS - krutá jsi, lásko, kam až ty doženeš smrtelná srdce -- Vergilius
    Mnoho je prostředků, které léčí lásku, ale žádný není spolehlivý.
    S tím, čeho se na nás dopustili druzí se už nějak vyrovnáme. Horší je to s tím, čeho jsme se na sobě dopustili sami.
    -- Francois La Rochefoucauld
    Nabídnout přátelství tomu, kdo chce lásku, je jako dát chleba tomu, kdo umírá žízní.

Informace o tématu

Users Browsing this Thread

Toto téma si právě prohlíží 1 uživatelů. (0 registrovaných a 1 anonymních)

Pravidla přispívání

  • Nemůžete zakládat nová témata
  • Nemůžete zasílat odpovědi
  • Nemůžete přikládat přílohy
  • Nemůžete upravovat své příspěvky
  •