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

    Byla vydána (𝕏) zářijová aktualizace aneb nová verze 1.105 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.105 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    včera 15:33 | Komunita

    Ve Firefoxu bude lepší správa profilů (oddělené nastavení domovské stránky, nastavení lišt, instalace rozšíření, uložení hesla, přidání záložky atd.). Nový grafický správce profilů bude postupně zaváděn od 14.října.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Canonical vydal (email) Ubuntu 25.10 Questing Quokka. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do července 2026.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | 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 verzi 1.5.0.

    Ladislav Hagara | Komentářů: 0
    včera 01:22 | Nová verze

    Byla vydána nová verze 1.12.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.

    Ladislav Hagara | Komentářů: 0
    8.10. 15:11 | Bezpečnostní upozornění

    V Redisu byla nalezena a v upstreamu již opravena kritická zranitelnost CVE-2025-49844 s CVSS 10.0 (RCE, vzdálené spouštění kódu).

    Ladislav Hagara | Komentářů: 5
    8.10. 14:00 | IT novinky

    Ministr a vicepremiér pro digitalizaci Marian Jurečka dnes oznámil, že přijme rezignaci ředitele Digitální a informační agentury Martina Mesršmída, a to k 23. říjnu 2025. Mesršmíd nabídl svou funkci během minulého víkendu, kdy se DIA potýkala s problémy eDokladů, které některým občanům znepříjemnily využití možnosti prokázat se digitální občankou u volebních komisí při volbách do Poslanecké sněmovny.

    Ladislav Hagara | Komentářů: 18
    8.10. 12:33 | Zajímavý software

    Společnost Meta představila OpenZL. Jedná se o open source framework pro kompresi dat s ohledem na jejich formát. Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    8.10. 03:33 | IT novinky

    Google postupně zpřístupňuje českým uživatelům Režim AI (AI Mode), tj. nový režim vyhledávání založený na umělé inteligenci. Režim AI nabízí pokročilé uvažování, multimodalitu a možnost prozkoumat jakékoliv téma do hloubky pomocí dodatečných dotazů a užitečných odkazů na weby.

    Ladislav Hagara | Komentářů: 0
    7.10. 18:11 | Nová verze

    Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 2
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (46%)
     (15%)
     (17%)
     (21%)
     (15%)
     (17%)
     (15%)
     (15%)
    Celkem 204 hlasů
     Komentářů: 13, poslední 8.10. 07:41
    Rozcestník

    Dotaz: Multihoming s policy routingom a DNATom

    22.9.2011 00:17 timeos | skóre: 32
    Multihoming s policy routingom a DNATom
    Přečteno: 458×
    Zdravim vospolok, riesim nasledujuci problem pre nasledovnu situaciu:
                                                                     ________
                                              +------------+        /
                                              |            |       |
                                +-------------+ Provider 1 +-------
            __                  |             |            |     /
        ___/  \_         +------+-------+     +------------+    |
      _/        \__      |     if1      |                      /
     /             \     |              |                      |
    | Local network -----+ Linux router |                      |     Internet
     \_           __/    |              |                      |
       \__     __/       |     if2      |                      \
          \___/          +------+-------+     +------------+    |
                                |             |            |     \
                                +-------------+ Provider 2 +-------
                                              |            |       |
                                              +------------+        \________

    Linux router je klasicky nastaveny na multihoming (s pouzitim viacerych smerovacich tabuliek pre jednotlivych providerov, pravidiel "ip rule", a iptables Maskarady pre oba rozhrania (if1 a if2) v pripade spojeni inicializovanych z vnutra lokalnej siete)... toto chodi bezproblemovo.

    V lokalnej sieti (privatny IP rozsah) sa nachadza sluzba (nad protokolom TCP), ktora ma byt dostupna zvonka cez Providera 2 na IP adrese rozhrania if2 Linux routra a na definovanom porte.

    To znamena, ze bolo potrebne do iptables pravidiel pridat DNAT pravidlo (aj s prislusnym FWD pravidlom pre filter tabulku), pre prichadzajuce TCP spojenia na IP adresu rozhrania if2 a konkretny tcp port.

    Na linux routri je predvolena brana v main tabulke nastavena cez providera 1.

    V com je problem? Packet prichadzajuci na DNATovanu sluzbu zvonka dorazi na router, spravne je DNATovany a forwardnuty na lokalny server s verejnou sluzbou. Avsak odpoved z tejto sluzby (odpovedny TCP segment) je naspat cez smerovac forwardnuty sice so spravnou prelozenou adresou (IP adresa rozhrania if2) ale preposlany von rozhranim if1 miesto if2!!

    Je mi jasne, ze v uvedenom scenari zafungovala predvolena brana na providera 1 z primarnej smerovacej tabulky... otazka je vsak, ci je to bug alebo feature? Da sa nejak zapnut kontrola odpovedajucich paketov so spojeni prichadzajucich zvonka v pripade multihomed linux servera? Myslel som, ze taketo spojenia su nejak trackovane a system vie urcit spravny odchadzajuci interfejs smerom do internetu.

    Ano.. workaround existuje... staci na routri markovat pakety posielane z lokalneho servera a tym ich posielat spravne cez providera 2... ale toto nie je uz dynamicke, ale staticke rozhodovanie o odpovedajucej cesty naspat pre dany IP packet na zaklade mnou napisaneho pravidla...


    Řešení dotazu:


    Odpovědi

    22.9.2011 11:14 NN
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom
    Od jader 2.6 a vise nefunguje 'ip route nat', ktery umoznuje na zaklade zdrojove ip adresy smerovat provoz pres konkretniho providera ven a to tak ze se na server pro kazdeho providera povesi jina adresa a podle ni se vybira rozhrani.

    Nicmene podle navodu na LARTC a pouziti tzv. "split access" se trafic rozdeli do dvou siti pro kazde vnejsi rozhrani. To vypada jako reseni tveho problemu, ale doporucuji precit cele az do konce..

    Zdroje:

    http://linux-ip.net/html/adv-multi-internet.html

    http://lartc.org/lartc.html#AEN268

    NN
    22.9.2011 11:28 timeos | skóre: 32
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom

    Prave takto to mam nastavene teraz... ok, aby som bol presny, pre terajsiu situaciu pouzivam split access (popisovany v uvedenej kapitole z druheho vasho linku)... dokonca aj ten obrazok pre tuto otazku som bral odtial. Vysledok? Ten ktory popisujem v otazke.. smerom spat sa pakety smeruju cez main tabulku... nie je tam ziadna kontrola toho, ci packet povodne naozaj prisiel providerom 1 alebo nie.

    Predstavoval som si funkcnost na principe, ze napr. do hlavnej smerovacej tabulky sa prida docasny host record s informaciou o tom, ktora brana (provider) sa ma pre dany IP packet cestou spat pouzit resp. podobne riesenie na zaklade internych tabuliek.

    22.9.2011 11:49 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom

    Ahoj

    Jeden (asi hloupy) napad - na lokalnim rozhrani mit dve adresy (samozrejme z ruznych podsiti), na servery taky a pakety od Providera_1 posilat na LAN_Addr_1 a od Providera_2 na LAN_Addr_2? Myslenka je ta, ze server posle odpoved do stejne subsite a router podle toho pozna, pres ktereho providera ji ma poslat ven.

    Mozna taky pouzit virtualni rozhrani (eth1.1, eth1.2)...

    Dejv

    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    22.9.2011 13:37 timeos | skóre: 32
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom

    Ahoj, dik za reakciu.

    rozmyslal som aj nad tymto variantom. Problem vsak je, ze ak tych verejnych sluzieb v lokalnej sieti je viac (per server), tak sa pre kazdy server nasobia adresy a vznika podla mna este vacsia neprehladnost. Jednoduhsia varianta je markovat pakety od lokalneho servera s verejnou sluzbou a tym ich posielat von spravnym providerom. Avsak toto riesenie sa neda pouzit pre pripad, kedy by mala byt rovnaka sluzba dostupna cez oboch providerov zaroven a teda rozhodovanie Linux routra by muselo byt dynamicke (avsak tento scenar zatial nehrozi).

    22.9.2011 13:20 NN
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom
    No on ten popis toho 'split access' je dost divny, kdyz v prvni vete tvrdi, ze to funguje pro pakety ktere jdou dovnitr a vraci se pres stejneho providera a v posledni vete tvrdi, ze to funguje pouze pro lokalni sit a router samotny..

    Jses si jisty ze to mas presne podle toho navodu ? Samostatne routovaci tabulky, prirazeni rozhrani a siti a prirazeni vnejsich adres ?

    NN
    22.9.2011 13:33 timeos | skóre: 32
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom

    Split access funguje pri kontaktovani samotneho Linux routra konfigurovaneho na SplitAccess, takze ak je cielovym hostom pre IP packet zvonka samotny Linux router (a jeho nejaka verejna adresa), tak smerovanie cestou spat bude spravne (zafunguje ip rule from <IP> lookup <table> s naslednym lookupom do smerovacej tabulky priradenej danej kontaktovanej IP adrese).

    Ano, mam to presne tak, a tento moj vyssie popisovany postup SplitAccessu funguje (overene). Avsak pri mojom probleme sa jedna o jeho modifikaciu, kedy packet neskonci na samotnom Linux routri (konfigurovany na SplitAccess), ale je presmerovany kdesi do priamo pripojenej lokalnej siete. A v tom je ten rozdiel... to znamena ze nezafunguje ip rule from <IP> lookup <table> na vracajuci sa IP packet od vnutornej sluzby, ale linux router sa k nemu sprava ako k normalnemu paketu, ktory v jeho tabulkach podlieha jedine spetnemu DNATtu (resp. od-DNAT-ovaniu). A ja riesim ci to tak ma byt a ci sa to neda nejak dynamicky osetrovat.

    22.9.2011 14:52 Pindal
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom
    Mám úplně stejnou zkušenost. Problém, že překlad lokální adresy odchozího paketu na příslušnou veřejnou, se dělá až _po_ určení odchozího rozhraní. V současných kernelech bez patche to není možné ovlivnit. Jako řešení jsem použil již zmiňované dvě různé IP adresy na lokálním serveru. Další možnost jsou VLAN.
    22.9.2011 22:52 timeos | skóre: 32
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom
    neviete o nejakom oficialnom threade (lwn.net, diskusie, maillisty a pod..), kde by sa tento problem riesil? chcel by som si o tom nieco viac precitat. neviem ani pod akymi klucovymi slovami to hladat...nic rozumne som nenasiel. diki
    23.9.2011 08:15 Pindal
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom
    Také jsem nic nanašel, proto jsem se díval přímo do zdrojáků jádra.
    22.9.2011 23:49 NN
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom
    Jeste by to slo jinak. Kdyz se zbavis toho NATu a procpes tu sluzbu na verejnou ip adresu az do vnitrini site(respektive DMZ) a potom to staticky naroutujes na routeru. Imho sluzba pristupna zvenku nema ve vnitrni siti co delat. Prave proto, ze se to takto standartne nedela, moc informaci o tom nenajdes.

    NN
    23.9.2011 00:02 timeos | skóre: 32
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom

    zial varim z toho co je (nedostatok verejnych adries). sluzba je zaroven dostupna inou formou pre inych klientov. toto je alternativa, ktora je pouzitelna a da sa povedat ze aj nutna. a ak sa nemylim DNAT je urceny prave pre taketo pripady pouzitia.

    Ale ano, nie je to podla kucharok typu "Best Practices".

    23.9.2011 00:24 NN
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom
    Volny port na routeru nemas ?

    NN
    23.9.2011 00:30 timeos | skóre: 32
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom
    eh? volny port na co? mam a vyuzil som ho tak ako som to spisal... na routri sluzba nebezi, lebo nemoze. bezi na vnutornom serveri kam je forwardovana...
    24.9.2011 17:21 bakchus
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom
    Podobny problem som riesil aj ja. Multihoming som mal nastaveny pomocou shorewall a tcrules (rad ho pouzivam, je prehladny a skoro dokonaly). Vsetko slo ako ma, ale jeden svinsky server vovnutri siete zacal vzdy komunikovat skor, ako shorewall nabehol a postaral sa o kompletnu konfiguraciu iptables. A pakety von sli s IP adresou WAN1 rozhrania cez WAN1 interfejs. Vyriesil som to tak, ze vzdy po starte shorewalu vymazem tabulku conntrack. Potom to uz ide vsetko ako ma.
    Řešení 1× (timeos (tazatel))
    24.9.2011 17:53 tomk
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom
    Ahoj,

    doufam, ze to spravne chapu, ale myslel jsem si, ze na podobne veci je mozne pouzit connection marking (-j CONNMARK) ve spolupraci s packet markem (-j MARK).

    Nekde v preroutingu si nova spojeni z venku omarkovat, pro vracejici established obnovit connection marky a podle nich pak paket nechat s pomoci "ip rule fwmark" odroutovat spravnou smerovaci tabulkou.

    Tomas
    25.9.2011 18:45 timeos | skóre: 32
    Rozbalit Rozbalit vše Re: Multihoming s policy routingom a DNATom

    Vyborne, toto je presne to, co zabralo a zaroven je to dynamicke :). O cieli CONNMARK som len pocul, nevedel na co je a kvoli comu realne vzniklo (prave kvoli tomuto typu problemu... "Very useful especially for asymmatric routing in combination with MASQUERADE" ...vid lwn.net)

    V principe na linux routri staci pridat nasledovne pravidla:

    -t mangle -A PREROUTING -j CONNMARK --restore-mark
    -t mangle -A PREROUTING -i $if1 -j MARK --set-mark 1
    -t mangle -A PREROUTING -i $if1 -j CONNMARK --save-mark
    -t mangle -A PREROUTING -i $if1 -j MARK --set-mark 0
    -t mangle -A PREROUTING -i $if2 -j MARK --set-mark 2
    -t mangle -A PREROUTING -i $if2 -j CONNMARK --save-mark
    -t mangle -A PREROUTING -i $if2 -j MARK --set-mark 0

    ...a packet cestou spat dostane znova znacku (-j CONNMARK --restore-mark), ktoru dostal jeho paket predchodca (-j MARK --set-mark X) z toho isteho spojenia ked vchadzal routrom dnu.

    Pravidla, ktore tu pisem som musel doplnit pravidlami so "--set-mark 0", nakolko konektivita bez nich nefungovala - Lebo vchadzajuci paket bol hned oznackovany, tym automaticky vyhovel pravidlu "ip rule from all fwmark 0xZNACKA lookup <table>" a hned zbehol to odchodzej smerovacej tabulky pre zvoleneho ISP. Preto som tym pridanym pravidlom znacku paketu zas odstranil (ale ta uz bola zapamatana v connmark (-j CONNMARK --save-mark) takze to nevadilo) a nasledne bol paket smerovany spravne.

    tomk, velke dik. Ostatnym diki za rady a napady.

    Založit nové vláknoNahoru

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

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