abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:44 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 20:55 | Nová verze

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.

    Ladislav Hagara | Komentářů: 2
    včera 17:22 | Nová verze

    Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 1
    včera 17:11 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.

    Ladislav Hagara | Komentářů: 1
    včera 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 7
    včera 05:11 | Komunita

    #HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.

    Ladislav Hagara | Komentářů: 2
    17.4. 17:55 | IT novinky

    Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.

    Ladislav Hagara | Komentářů: 3
    17.4. 17:44 | IT novinky

    Společnost Boston Dynamics oznámila, že humanoidní hydraulický robot HD Atlas šel do důchodu (YouTube). Nastupuje nová vylepšená elektrická varianta (YouTube).

    Ladislav Hagara | Komentářů: 1
    KDE Plasma 6
     (68%)
     (10%)
     (2%)
     (19%)
    Celkem 556 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    BGP – dynamické routování – 3 (pokročilá konfigurace)

    20. 5. 2009 | Dušan Hokův | Sítě | 7890×

    Nyní nastal čas nahodit druhý peer a vylepšit konfiguraci routeru. Je také třeba provést další administrativu na RIPE.

    Delegace reverzních DNS

    Protože již běží první peer a vaše nové IP adresy jsou již dostupné ze světa, je třeba vydelegovat reverzní DNS zóny vašeho adresního rozsahu. Jakmile budete mít připraveny reverzní zóny v konfiguraci vašich nameserverů, je třeba zajistit přes RIPE vydelegování do světa. K tomuto účelu je vhodné použít web delegation checker.

    Záznam v RIPE databázi pro reverzní zónu 232.112.62.in-addr.arpa (256 adres) může vypadat nějak takto:

    domain:          232.112.62.in-addr.arpa
    descr:           MY Network
    admin-c:         IP5941-RIPE
    tech-c:          IP5941-RIPE
    zone-c:          IP5941-RIPE
    mnt-by:          MY-CZ-MNT
    changed:         mujmail@mojedomena.cz
    source:          RIPE
    nserver:         ns2.mojesit.net
    nserver:         ns1.mojesit.net
    

    Navázání dalšího peeru

    Abyste mohli splnit svůj cíl nezávislosti na jednom poskytovateli, je třeba navázat další peer po samostatné lince a odděleném rozhraní k dalšímu poskytovateli. Od něj rovněž dostanete tranzitní síť (/30) a dohodnete se na peeringu. Je dobré si promyslet, jak budete chtít dva uplinky využívat, což samozřejmě závisí i na velikosti poskytované konektivity od obou poskytovatelů. Můžete například nakonfigurovat, že veškerý traffic poteče přes prvního providera, druhý bude sloužit jen jako záloha a v normálním stavu zde poteče jen vzájemný provoz mezi oběma autonomními systémy, případně i autonomní systémy, které mají kratší as-path přes tento autonomní systém nebo jsou přímo a jen za ním. Můžete (musíte) rovněž rozvažovat traffic rovnoměrně mezi oběma peery, abyste například na jedné straně nepřetěžovali jednu linku a druhou nenechali ladem. BGP protokol umožňuje řídit, kudy poteče traffic jak příchozí, tak odchozí. Pro tyto účely existuje několik bgp atributů a metod.

    Pro nakonfigurování druhého peeru nejprve připravíme route-mapy a filtry přímo z konzole Quaggy, protože nám již jeden peer běží a nechceme způsobit žádný výpadek. Nakonec nakonfigurujeme druhý peer a aplikujeme na něj vytvořená pravidla.

    my-bgp# configure terminal 
    my-bgp(config)# route-map prov2-out permit 10
    my-bgp(config-route-map)# match as-path  my-as
    my-bgp(config-route-map)# set as-path prepend 57131 57131 57131
    my-bgp(config-route-map)#      
    

    Tím připravíme route mapu pro odchozí směr k druhému providerovi a nastavíme prepend, čímž uměle prodloužíme cestu vlastního AS přes tohoto providera. Výsledkem bude, že as-path přes prvního providera bude ve většině případů kratší a tím tedy příchozí traffic do vašeho AS půjde primárně přes prvního providera. Prepend tedy ovládá příchozí směr do vašeho AS.

    K ovládání odchozího trafficu slouží například atribut local-preference.

    route-map prov-in permit 10
     set metric 0
     set local-preference 90
    
    route-map prov2-in permit 10
     set metric 0
     set local-preference 80
    

    Vyšší hodnota tohoto bgp atributu znamená vyšší preferenci a tedy upřednostněný směr. Výchozí hodnota pro tento atribut je rovna 100.

    Nyní je je potřeba nadefinovat novou peer-group pro druhého providera a přiřadit vytvořené route-mapy a filtry.

    my-bgp# configure terminal 
    my-bgp(config)# router bgp 57131
    my-bgp(config-router)# neighbor PROVIDER2 peer-group
    my-bgp(config-router)# neighbor PROVIDER2 description Provider2
    my-bgp(config-router)# neighbor PROVIDER2 route-map prov2-in in
    my-bgp(config-router)# neighbor PROVIDER2 route-map prov2-out out
    my-bgp(config-router)# neighbor PROVIDER2 filter-list my-as out
    my-bgp(config-router)# neighbor PROVIDER2 soft-reconfiguration inbound
    my-bgp(config-router)# neighbor 77.124.15.2 remote-as 29113
    my-bgp(config-router)# neighbor 77.124.15.2 peer-group PROVIDER2
    

    Po změnách v route mapách je potřeba resetovat peer(y).

    clear ip bgp 177.104.215.242 soft

    To soft na konci je důležité; pokud by tam nebylo, jednalo by se o tvrdý reset BGP session a za každý tento reset dostává náš router penalty a pokud je to velmi často, router na druhé straně s vaším na nějakou dobu může přestat úplně komunikovat. Router dále dostává penalty i za flapování rout. Tomu, jak se má router zachovat, se říká BGP Dampening. Quagga zatím umí pouze bgp dampening <penalty>.

    Další možností pro řízení příchozího trafficu je atribut MED (Multi-Exit Discriminator). MED je jeden z mála parametrů přenášejících se mezi ebgp peery a umožňujících řídit routovací politiku mezi sousedními AS (kromě "oblíbeného" prodlužování as-path; sousedních proto, že jde o netranzitivní atribut). Nastavuje se v route-map pomocí set metric. Menší vítězí; v případě, že není nastaveno, bere se metric = 0 (a je konfigurovatelné, zda je to v takovém případě nejlepší, či nejhorší metrika). Match pravidly v route-map určíte, pro co konkrétně (pokud není match, aplikuje se route-mapa na všechny prefixy; matchovat je možné různé parametry jako as-path, prefix). Route-map se aplikuje na peer, případně na peer-group (pro MED typicky na out).

    route-map zzz permit 10
     match as-path neco
     set metric 200
    

    BGP atributy

    • 1 - ORIGIN - známý povinný
    • 2 - AS_PATH - známý povinný
    • 3 - NEXT_HOP - známý povinný
    • 4 - MULTI_EXIT_DISC - volitelný netranzitivní
    • 5 - LOCAL_PREF - známý volitelný
    • 6 - ATOMIC_AGGREGATE - známý volitelný
    • 7 - AGGREGATOR - známý volitelný
    • 8 - COMMUNITY - volitelný tranzitivní (Cisco)
    • 9 - ORIGINATOR_ID - volitelný netranzitivní (Cisco)
    • 10 - Cluster List - volitelný netranzitivní (Cisco)
    • ...
    • 255 - Rezervováno

    Využívají se i další atributy, například ve vztahu k 32bitovým číslům AS. Úplný výčet se nachází na iana.org.

    Pořadí, váha atributů

    Je-li více cest ven z vašeho AS, do routovací tabulky se umístí ta nejvhodnější. O výběru rozhodují následující atributy v uvedeném pořadí (rozhoduje se podle prvního atributu, podle kterého se dá jednoznačně rozhodnout, jinak se zkouší následující):

    1. vyšší hodnota atributu WEIGHT - parametr lokální pro router, kde je nakonfigurováno
    2. vyšší hodnota atributu LOCAL_PREFERENCE - parametr přenášený mezi peery v rámci téhož AS
    3. preference cesty generovaná routerem samotným (a pocházející z jeho AS) - získaná např. redistribucí z IGP nebo z network/aggregate deklarací
    4. menší délka AS_PATH (menší počet čísel AS v hodnotě AS_PATH)
    5. preferovanější hodnota atributu ORIGIN (nejpreferovanější IGP, následuje EGP a INCOMPLETE)
    6. nižší hodnota atributu MED
      • porovnává se pouze u cest z téhož sousedního AS
      • pomocí bgp always-compare-med v sekci router bgp docílíme porovnávání i v případech, kdy máme stejné cesty z různých sousedních AS
    7. cesty získané z EBGP preferovány před cestami z IBGP
    8. next_hop dostupný přes kratší cestu vnitřkem AS (např. nižší metrika v OSPF)
    9. preferována cesta, která se naučila dříve (starší)
    10. preferována cesta z routeru s nižším ROUTER_ID
    11. preferována cesta přijatá z peeru s nejnižší IP

    Regulární výrazy pro as-path filtry

    Občas potřebujeme vědět, kudy se můžeme dostat do určitého AS, nebo které routy jsou z daného AS. Abyste nemuseli procházet celý výpis show ip bgp, je vhodné použít regulární výrazy. Tyto regulární výrazy se navíc hodí při vytváření filtrů. Můžete použít všechny regulární výrazy dle POSIX, napíši zde alespoň základní:

    • . jeden znak
    • * žádný nebo více výskytů vzorku
    • + jeden nebo více výskytů vzorku
    • ? žádný nebo jeden výskyt vzorku
    • ^ začátek řádky
    • $ konec řádky
    • _ speciální znak pro as-path - vzorku vyhovuje mezera, čárka, oddělovač as-setu, oddělovač konfederací a také odpovídá začátku i konci řádky

    Chcete-li tedy zobrazit např. routy pocházející z AS 7520, použijte:

    show ip bgp regexp _7520$

    Filtry

    Při EBGP peeru je dobré mít u sousedů zakázanou propagaci privátních AS (64512-65535). Toho dosáhnete pomocí řádku:

    neighbor POSKYTOVATEL remove-private-AS

    Dalším dobrým nápadem je zákaz exportu/importu privátních prefixů, default routy a multicastů. Toho dosáhnete např. pomocí následující sady filtrů:

     ip prefix-list transit-in seq 5 deny 0.0.0.0/0
     ip prefix-list transit-in seq 10 deny 10.0.0.0/8 le 32
     ip prefix-list transit-in seq 15 deny 127.0.0.0/8 le 32
     ip prefix-list transit-in seq 20 deny 169.254.0.0/16 le 32
     ip prefix-list transit-in seq 25 deny 172.16.0.0/12 le 32
     ip prefix-list transit-in seq 30 deny 192.168.0.0/16 le 32
     ip prefix-list transit-in seq 35 deny 224.0.0.0/3 le 32
     ip prefix-list transit-in seq 99 permit 0.0.0.0/0 le 24
    

    a nezapomeňte aplikovat na neighbora (případně na peer-group).

    Nedávné problémy s příliš dlouhým as-path

    Omezení délky AS path na 30 ASNs:

     ip as-path access-list maxas-path deny ( [0-9]+){30}$
     ip as-path access-list maxas-path permit .*
    

    Aplikujeme na příchozí prefixy:

     neighbor POSKYTOVATEL filter-list maxas-path in
    

    Příště

    Komunity, IBGP, NIX a IPv6.

           

    Hodnocení: 82 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.