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 17:00 | IT novinky

    Podvodné reklamy na sociálních internetových platformách, jako je Facebook, Instagram nebo X, vytvořily loni v Česku jejich provozovatelům příjmy 139 milionů eur, tedy zhruba 3,4 miliardy korun. Proti roku 2022 je to nárůst o 51 procent. Vyplývá to z analýzy Juniper Research pro společnost Revolut. Podle výzkumu je v Česku zhruba jedna ze sedmi zobrazených reklam podvodná. Je to o 14,5 procenta více, než je evropský průměr, kde je podvodná každá desátá reklama.

    Ladislav Hagara | Komentářů: 0
    dnes 15:44 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.6 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    dnes 03:22 | Nová verze

    Czkawka a Krokiet, grafické aplikace pro hledání duplicitních a zbytečných souborů, byly vydány ve verzi 11.0. Podrobný přehled novinek v příspěvku na Medium. Od verze 7.0 je vedle frontendu Czkawka postaveného nad frameworkem GTK 4 vyvíjen nový frontend Krokiet postavený nad frameworkem Slint. Frontend Czkawka je už pouze v udržovacím módu. Novinky jsou implementovány ve frontendu Krokiet.

    Ladislav Hagara | Komentářů: 12
    dnes 02:00 | Zajímavý článek

    Jiří Eischmann na svém blogu publikoval článek Úvod do MeshCore: "Doteď mě radioamatérské vysílání úplně míjelo. Když jsem se ale dozvěděl, že existují komunity, které svépomocí budují bezdrátové sítě, které jsou nezávislé na Internetu a do značné míry taky elektrické síti a přes které můžete komunikovat s lidmi i na druhé straně republiky, zaujalo mě to. Když o tom přede mnou pořád básnili kolegové v práci, rozhodl jsem se, že to zkusím taky.

    … více »
    Ladislav Hagara | Komentářů: 1
    včera 22:55 | Nová verze

    Byla vydána verze 0.5.20 open source správce počítačových her na Linuxu Lutris (Wikipedie). Přehled novinek v oznámení na GitHubu. Instalovat lze také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | IT novinky

    Peter Steinberger, autor open source AI asistenta OpenClaw, nastupuje do OpenAI. OpenClaw bude převeden pod nadaci a zůstane otevřený a nezávislý.

    Ladislav Hagara | Komentářů: 0
    včera 03:11 | Zajímavý článek

    Společnost Backblaze zveřejnila statistiky spolehlivosti pevných disků používaných ve svých datových centrech za rok 2025. Ke konci roku 2025 vlastnila 349 462 pevných disků. Průměrná AFR (Annualized Failure Rate), tj. pravděpodobnost, že disk během roku selže, byla 1,36 %. V roce 2024 to bylo 1,57 %. V roce 2023 to bylo 1,70 %. V roce 2022 to bylo 1,37 %.

    Ladislav Hagara | Komentářů: 13
    15.2. 21:55 | Zajímavý software

    Nástroj sql-tap je proxy mezi aplikací a databází, které zachytává všechny SQL dotazy a zobrazuje je v terminálovém rozhraní. Zde lze téměř v reálném čase zkoumat dotazy, sledovat transakce a spouštět SQL příkaz EXPLAIN. Podporované databázové systémy jsou pouze PostgreSQL a MySQL. Zdrojový kód je dostupný na GitHubu, pod licencí MIT.

    NUKE GAZA! 🎆 | Komentářů: 0
    15.2. 13:55 | Nová verze

    Byla vydána nová verze 9.2 textového editoru Vim (Vi IMproved). Přináší vylepšené doplňování, podporu schránky ve Waylandu, podporu XDG Base Directory (konfigurace v $HOME/.config/vim), vylepšené Vim9 skriptování nebo lepší zvýrazňování změn. Vim zůstává charityware. Nadále vybízí k podpoře dětí v Ugandě. Z důvodu úmrtí autora Vimu Brama Moolenaara a ukončení činnosti jím založené charitativní organizace ICCF Holland projekt Vim navázal spolupráci s charitativní organizaci Kuwasha.

    Ladislav Hagara | Komentářů: 4
    14.2. 12:33 | Zajímavý projekt

    Byl představen editor MonoSketch, webová aplikace pro tvorbu diagramů, technických nákresů, flowchartů a různých dalších vizualizací, to vše jenom z ASCII znaků. Všechny operace běží pouze v prohlížeči uživatele a neprobíhá tedy žádné nahrávání dat na server. Zdrojový kód aplikace (drtivá většina Kotlin, žádné C#) je dostupný na GitHubu pod licencí Apache 2.0.

    NUKE GAZA! 🎆 | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (19%)
     (6%)
     (0%)
     (11%)
     (27%)
     (3%)
     (4%)
     (2%)
     (12%)
     (27%)
    Celkem 888 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Statické routování

    Mějme malou síť, na ní si polopaticky vysvětlíme principy statického routování.
    
    26.87.34.0/30        eth0/nat|------------|eth1            10.0.1.0/29
    |    inet   |----ethernet----|  router-1  |----ethernet----|  LAN-1  |
    \~~~~~~~~~~~/      ...34.2/30|------------|...1.1/29       \~~~~~~~~~/
                                   ath0|...4.1/30
                                       |
                                       |
                                    wifi-PtP - 10.0.4.0/30
                                       |
                                       |
                                   ath0|...4.2/30
    10.0.3.0/28         ...3.1/28|------------|...2.1/27       10.0.2.0/27
    | wifi-ap |-------koax-------|  router-2  |----ethernet----|  LAN-2  |
    \~~~~~~~~~/              eth0|------------|eth1            \~~~~~~~~~/
    
    Takže nejprve musíme spočítat kolik máme subnetů. Je jich tam 5. Kdo neví jak jsem k tomu došel, podívejte se dlouze na obrázek a pak to zkuste ještě jednou. Z počtu 5 jsou 4 subnety interní (to je ta naše síť) a jeden je externí, to je připojení od providera. Naše síť je maskovaná za NATem, takže s tím externím subnetem nebude moc práce.

    Při vysvětlování principu routování začnu možná překvapivě od konce, to jest od koncových klientských počítačů. Představme si PC ( pro názornost "pepův PC") v LAN-2, zde je jeho konfigurace (pro teď zcela zapomeneme na DNS):
    IP: 10.0.2.12
    maska: /27
    výchozí brána: 10.0.2.1
    
    Tak, výchozí brána je první věc kolem routování.

    PRAVIDLO 1: Brána je VŽDYCKY v lokálním subnetu.

    Výchozí brána je tedy cesta, kudy ven z lokálního subnetu. Představte si že jste se zavázanýma očima v místnosti a hledáte dveře ven. Výchozí brána říká, že dveře ven jsou např. po pravici. To znamená, že výchozí brána určuje, kudy ven ze současné místnosti. Pokud budete v té místnosti hledat dveře a někdo vám řekne kde jsou hlavní domovní dveře, je to samozřejmě k ničemu.

    Máme paket, který vznikl na pepově PC a jako cíl má IP 87.56.4.21 (nějaká vymyšlená IP v internetu). Nebohý paket neví kam má jít, protože kolem něho je síť 10.0.2.0/27. Použije tedy výchozí bránu a přeskočí na router-2, který je právě tou výchozí branou. Router tedy dostane paket, jehož cíl je opět 87.56.4.21. Router se podívá do své routovací tabulky. Jelikož IP 87.56.4.21 není žádný z jeho lokálních subnetů, router ten paket pošle opět na výchozí bránu, takže paket se dostane na router-1. Tam se situace opakuje, router vpodstatě neví kam s ním, proto ten paket pošle na výchozí bránu, což je další router, tentokrát už v síťi providera. V internetu routování funguje, takže paket dorazí kam má, vygeneruje se odpověď a paket putuje zpátky. Kabelem od providera paket přiteče do routeru-1. NAT změní jeho cílovou IP na 10.0.2.12. A co teď s ním.

    PRAVIDLO 2: Routování je vlastně postupné hopsání po routerech až k cíli.

    Pokud by jsme žádné další routovací pravidla nepřidávali, routery by ten paket poslal zpět na výchozí bránu (protože IP 10.0.2.12 nepasuje do žádného z routovacích pravidel mimo výchozí bránu). Provider by ho poslal zase k nám a takhle by tam chvíli hrál pink-ponk, než vyprší TTL. Pokud routování zkoušíme pingem, tak Linux bude psát "Time To Live exceeded" a wokýnka píšou "Hodnota TTL vypršela při přechodu".

    Na router-1 musíme přidat routovací pravidlo, aby ten router věděl, kudy vede cesta k subnetu 10.0.2.0/27.

    PRAVIDLO 3: Obecný zápis routovacího pravidla: subnet/maska -> brána, nebo také "chcete kam" -> "jděte tudy". Kombinace subnet/maska je vždy adresa sítě (nikoli počítače) a brána je naopak vždy adresa konkrétního routeru.

    Při představě toho domečku s místnostmi (aneb film Kostka) to vypadá takhle. Stojíte hned za hlavními dveřmi. Vidíte dvoje dveře - modré a červené, ale vy se chcete dostat do místnosti se zelenými dveřmi. Routovací pravidlo zní "zelená -> červená". Takže projdete červenými dveřmi a před vámi budou zase dvoje dveře - hnědé a fialové. Routovací pravidlo v této místnosti zní "zelená -> hnědá". Takže projdete hnědými dveřmi a najednou je před vámi zelená místnost, takže jsme došli kam potřebujeme.

    Toto byl příklad postupu přes 2 routery. Všimněte si, že cíl cesty je vždy stejný (např. jedeme do prahy) ale pokaždé se liší brána (nejprve vlevo, potom vpravo, pak rovně,...)

    Teď to vezmeme z pohledu IP paketu. Na router-1 musíme přidat následující 2 routovací pravidla:
    10.0.3.0/28 -> 10.0.4.2
    10.0.2.0/27 -> 10.0.4.2
    
    Ty pravidla říkají, kudy vede cesta k subnetům 10.0.2.0/27 a 10.0.3.0/28.

    Takže paket s cílem 10.0.2.12 přitekl do routeru a první co udělá je to, že začne postupně zvrchu procházet routovací tabulku. To jsou vlastně ty 2 pravidla co jsme přidali. Další pravidla v routovací tabulce vytvoří systém automaticky. Na konci routovací tabulky je ještě výchozí brána. Každý paket prochází tabulku zvrchu dokavad nenarazí na pravidlo kterým projde. Výchozí brána má na routeru-1 zápis "0.0.0.0/0 -> 26.87.34.1". Cíl "0.0.0.0/0" znamená doslova cokoliv, takovému pravidlu vyhoví jakákoliv IP adresa. Routovací tabulka je řazená podle masky subnetu. Na začátku jsou nejmenší subnety (velké číslo masky, např. /30 nebo /27) a dole nejvetší subnety (malé číslo masky, např /8 nebo /0). Začneme tedy procházet tabulku zvrchu. Pasuje IP 10.0.2.12 do subnetu 10.0.3.0/28? Nepasuje a proto se přistoupí k dalšímu řádku. Pasuje IP 10.0.2.12 do subnetu 10.0.2.0/27? Ano pasuje a proto router tento paket odešle na počítač s IP 10.0.4.2. Paket tedy doputuje na další router-2. A zase to samé. Cílová IP paketu je pořád 10.0.2.12 a zase se začne procházet routovací tabulka. Zde je však jeden rozdíl. Cílová síť 10.0.2.0/27 je připojená k routeru-2. Pro tento router je to tzv lokální subnet.

    LOKÁLNÍ SUBNET: subnety (sítě) připojené přímo k routeru na kterém je paket, o který teď jde, o kterém je řeč atd.

    VZDÁLENÝ SUBNET: takový subnet je připojený k nějakému jinému routeru. Buď přímo za sousedním routerem, nebo i za dvěma, třema routery, to je jedno. Router sám o sobě neví nic o existenci vzdálených subentů, musíme mu o nich říct - právě prostřednictvím routovacích pravidel do routovací tabulky.

    Operační systém sám naplní routovací tabulku záznamy o lokálních subnetech. Zápis těchto pravidel je trochu odlišný: "subnet -> rozhraní". Vpodstatě to znamená, že routovací pravidlo nemá určenou bránu, ale je definováno kterým síťovým rozhraním pakety vyleze ven.

    Takže paket s cílovou IP 10.0.2.12 dorazil na router-2 a zase prochází routovací tabulku až narazí na řádek "10.0.2.0/27 -> eth1". Paket tedy vyleze síťovkou eth1 ven. Tady se do toho ještě přimotá arp tabulka, ale to je jiná věc a funguje zcela automaticky bez jakéhokoliv zásahu administrátora. Switche po cestě už zařídí doručení paketu na cílový počítač s IP 10.0.2.12.

    Ukázka z routovací tabulky:
    $route (starší příkaz, ale přehlednější)
    10.193.120.72   10.193.124.130  255.255.255.248 UG    900    0        0 eth0 <-- přidané routovací pravidlo
    10.193.120.128  *               255.255.255.240 U     0      0        0 eth0 <-- záznam o lokálním subnetu na eth0
    
    $ip route show (ip r s - novější příkaz)
    10.193.64.64/27 via 10.193.64.162 dev eth4 <-- přidané routovací pravidlo
    10.193.64.32/27 dev eth3  proto kernel  scope link  src 10.193.64.33 <-- záznam o lokálním subnetu na eth3
    
    Takže resumé: Každý počítač i router musí mít nastavenou výchozí bránu. Brána je vždy router v lokálním subnetu kudy vede nejbližší cesta k internetu. Prostě skákáním přes výchozí brány se dostaneme do internetu. Samotné nastavení výchozích bran nám zajistí aby se paket z jakéhokoliv počítače dostal směrem ven, k hlavním vchodovým dveří. Je to podobné jako zelené tabulky "EXIT --->" v domech - značí nejbližší cestu ven.

    Naopak opačnou cestu od hlavních dveří do konkrétní kanceláře (subnetu) musíme přesně definovat. Vždy je to hop za hopem. Cíl cesty je vždy stejný a mění se brána, neboli adresa dalšího routeru.

    Routování není těžké na pochopení, velmi dobré je představit si že jsme paket, určit si nějaký cíl a na routerech koukat na routovací tabulky, zda je tam potřebnmý záznam, pomocí kterého dojdeme kam potřebujeme.

    --------------------

    Praxe:

    Na linuxu se statické routování zapisuje dvěma způsoby. Starší, již nedoporučovaný, ale přesto stále používaný je příkaz route. Používejte radši příkaz ip.
    router-1:
    route add default gw 26.87.34.1
    route add -net 10.0.3.0 netmask 255.255.255.240 gw 10.0.4.2
    route add -net 10.0.2.0 netmask 255.255.255.224 gw 10.0.4.2
    
    router-2:
    route add default gw 10.0.4.1
    
    Novější příkaz ip:
    
    router-1:
    ip route add default via 26.87.34.1
    ip route add 10.0.3.0/28 via 10.0.4.2
    ip route add 10.0.2.0/27 via 10.0.4.2
    
    router-2:
    ip route add default via 10.0.4.1
    
    --------------------

    Kombinace statického a dynamického routování:

    Pokud používáte na síti dynamické routování (typicky OSPF z balíku Quagga), tak v žádném případě nepřidávejte statické routy výše uvedenými příkazy. Ono by to sice fungovalo, ale udělali by jste si v tom pěkný zmatek. Statické routy lze zapsat do konfiguračního souboru zebra.conf. Spuštění démonu zebra zajistí použití zapsaných pravidel. Toto se používá pro naroutování subnetů za routery, na kterých neběží Quagga - typicky domácí wifi routery (bez NATu samozřejmě) u uživatelů sítě. Syntaxe je jednoduchá: "ip route cíl/maska brána" - příklady nerespektují výše uvedené rozdělení IP adres:
    !routa k frantovi domu
    ip route 10.0.1.0/27 10.2.9.4
    !výchozí brána
    ip route 0.0.0.0/0 212.87.52.1
    
    Pokud na jednom routeru rozjedete quaggu a všechno routování provedete tímto statickým způsobem, tak to sice bude fungovat, ale s dynamickým routováním to nemá nic společného.

    Dokument vytvořil: Zdeněk Štěpánek, 13.4.2008 22:35 | Poslední úprava: Smajchl, 2.6.2008 17:29 | Další přispěvatelé: Zdeněk Štěpánek, krazy | Historie změn | Zobrazeno: 25087×

    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.