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 12:55 | Nová verze

    Microsoft vydal novou velkou aktualizaci 2404.23 v září 2019 pod licencí SIL Open Font License (OFL) zveřejněné rodiny písma Cascadia Code pro zobrazování textu v emulátorech terminálu a vývojových prostředích.

    Ladislav Hagara | Komentářů: 0
    dnes 05:33 | Nová verze

    OpenTofu, tj. svobodný a otevřený fork Terraformu vzniknuvší jako reakce na přelicencování Terraformu z MPL na BSL (Business Source License) společností HashiCorp, bylo vydáno ve verzi 1.7.0. Přehled novinek v aktualizované dokumentaci. Vypíchnout lze State encryption.

    Ladislav Hagara | Komentářů: 0
    včera 23:55 | Humor

    Spouštět webový prohlížeč jenom kvůli nákupu kávy? Nestačí ssh? Stačí: ssh terminal.shop (𝕏).

    Ladislav Hagara | Komentářů: 5
    včera 18:11 | Nová verze

    Yocto Project byl vydán ve verzi 5.0. Její kódové jméno je Scarthgap. Yocto Project usnadňuje vývoj vestavěných (embedded) linuxových systémů na míru konkrétním zařízením. Cílem projektu je nabídnou vývojářům vše potřebné. Jedná se o projekt Linux Foundation.

    Ladislav Hagara | Komentářů: 0
    včera 17:56 | Nová verze

    Operační systém 9front, fork operačního systému Plan 9, byl vydán v nové verzi "do not install" (pdf). Více o 9front v FQA.

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | Nová verze

    Svobodná webová platforma pro sdílení a přehrávání videí PeerTube (Wikipedie) byla vydána v nové verzi 6.1. Přehled novinek i s náhledy v oficiálním oznámení a na GitHubu. Řešeny jsou také 2 bezpečnostní chyby.

    Ladislav Hagara | Komentářů: 3
    včera 12:33 | Zajímavý software

    Lennart Poettering na Mastodonu představil utilitu run0. Jedná se o alternativu k příkazu sudo založenou na systemd. Bude součástí systemd verze 256.

    Ladislav Hagara | Komentářů: 20
    29.4. 23:22 | Nová verze

    Hudební přehrávač Amarok byl vydán v nové major verzi 3.0 postavené na Qt5/KDE Frameworks 5. Předchozí verze 2.9.0 vyšla před 6 lety a byla postavená na Qt4. Portace Amaroku na Qt6/KDE Frameworks 6 by měla začít v následujících měsících.

    Ladislav Hagara | Komentářů: 13
    29.4. 21:44 | Komunita

    Ubuntu 24.10 bude Oracular Oriole (věštecká žluva).

    Ladislav Hagara | Komentářů: 14
    29.4. 20:22 | Nová verze

    Byla vydána nová verze 2.45.0 distribuovaného systému správy verzí Git. Přispělo 96 vývojářů, z toho 38 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání. Vypíchnout lze počáteční podporu repozitářů, ve kterých lze používat SHA-1 i SHA-256.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (16%)
    Celkem 893 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Linuxové DMZ - IV

    26. 2. 2003 | Martin Pavlíček | Bezpečnost | 17646×

    Protokoly rodiny TCP/IP: Historie, vrstvy, překlad sítových adres.

    Teorie o protokolech

    V tomto díle jsme si měli původně již říci něco konkrétního o nastavení routování pod Linuxem, ale abyste vše správně pochopili, je nutné si nejdříve povědět něco o protokolech, které jsou při tom používány (slouží ale i třeba při filtrování paketů). Kdo problematiku protokolů (zejména TCP/IP) zná, tak může tento díl směle vynechat.

    TCP/IP (Transmission Control Protocol/Internet Protocol)

    Problematika TCP/IP je poměrně obsáhlá a složitá. Já se pokusím z ní vytáhnout jen něco málo, co je pro nás nejdůležitější. Základní dokumentací, ve které jsou protokoly z rodiny TCP/IP popsány, jsou tzv. RFC (Request for Comments) dokumenty, kterých je velká spousta. Můžete je najít např. na www.faqs.org/rfcs.

    Vznik rodiny protokolů TCP/IP

    Hlavními tvůrci sady protokolů TCP/IP byli Vinton Cerf a Robert Kahn. Na tvorbě, která byla zahájena již v roce 1973, se podílela i řada dalších osobností. První testy se začaly provádět v roce 1975. V roce 1977 proběhla demonstrace práce sítě ARPANET pod řízením těchto protokolů.

    Popis TCP/IP vychází z tzv. referenčního modelu OSI, který se skládá ze sedmi vrstev, a který si stručně popíšeme (od nejvyšší po nejnižší):

    Aplikační Je nejvyšší vrstvou, na rozdíl od jiných nezajišťuje služby pro žádnou jinou, pomocí ní mohou uživatelé či aplikace odesílat data po síti.
    Prezentační Zajišťuje obecný datový formát mezi různými platformami. Je zodpovědná za převod a překlad dat, kompresi a dekompresi, šifrování a dešifrování dat.
    Relační Tato vrstva řídí a ustavuje datové přenosy mezi uzly na síti v podobě tzv. relací, což je dialog mezi prezentačními vrstvami na dvou či více systémech.
    Transportní Zajišťuje přenos dat mezi komunikujícími procesy nebo programy spuštěnými na vzdálených počítačích. Protokoly této vrstvy jsou TCP a UDP. Pokud chceme dosáhnout spolehlivějšího přenosu dat, je vhodnější použít protokol TCP. Adresování dat je řešeno pomocí portů a jejich čísel.
    Síťová Je pro nás velmi zajímavá, neboť zajišťuje komunikaci mezi dvěma hostitelskými počítači, logické adresování, doručování paketů, ale hlavně směrování.
    Linková Tato vrstva řídí přístup k vlastnímu přenosovému médiu, převádí pakety na rámce a tak je připravuje k přenosu, přidává k rámcům hardwarové adresy výchozího i cílového počítače, počítá kontrolní součet. Na této úrovni pracují bridge a switche.
    Fyzická Jak už název napovídá, do této vrstvy patří vše, čeho se můžeme dotknout :-) např. kabely, konektory atd.

    Protokol IP (Internet Protocol)

    Patří mezi nejzatíženější protokoly z rodiny TCP/IP. Všechny ostatní protokoly a aplikace běží nad ním a využívají ho pro logické adresování na úrovni síťové vrstvy. Tento protokol patří mezi tzv. nespojové, což znamená, že nezaručuje doručení datagramu na cílový počítač (o to se musí postarat protokoly vyšších vrstev, např. TCP). Jeho součástí je i protokol ICMP (Internet Control Message Protocol), který je popsán v dokumentu RFC 792, a slouží jako servisní a diagnostický protokol. Má několik typů z nichž nejznámější je "žádost o echo" (echo request), kterou používá např. utilita ping.

    Adresování protokolu IP

    V současnosti používaná verze protokolu IP má číslo 4 (IPv4). Používá tzv. 32 bitové adresování. Jak jste již možná slyšeli, tak dochází k tomu, že se začíná nedostávat IP adres, a proto vznikla nová verze protokolu IP označovaná jako IPv6, která rozšiřuje počet bitů z 32 na 128 (problém jejího "plošného" zavedení je ten, že by to vyžadovalo změnu adresování v celém internetu).

    Pokud tedy zůstaneme u starší verze, tak IP adresy se dělí do tzv. tříd. Těchto tříd je pět a jsou označeny písmeny A, B, C, D, E s tím, že třídy D a E jsou neveřejné.

    V následují tabulce vidíte rozdíly mezi IP adresami tříd A, B, C:

    Atributy Třída A Třída B Třída C
    Velikost sítí Určeno pro několik sítí s velkým množstvím počítačů. Sítě s vyšším počtem počítačů, např. středně velké firmy. Určeno pro menší sítě.
    Rozsah hodnot 1 - 126 128 - 191 192 - 223
    Počet bajtů vyjadřujících adresu sítě 1 2 3
    Počet bajtů vyjadřujících adresu počítače 3 2 1
    Maximální počet sítí 126 16 384 2 097 152
    Max. počet PC v síti 16 777 214 65 534 254
    Výchozí maska podsítě 255.0.0.0 255.255.0.0 255.255.255.0

    Vyhrazené IP adresy

    255.255.255.255 Slouží k vysílání zpráv do všech uzlů sítě.
    0.0.0.0 Představuje neznámou síť nebo neznámý počítač nebo se používá v případech kdy počítač nezná svou adresu a dostane ji teprve přidělenou (např. od DHCP serveru).
    127.0.0.1 Speciální adresa třídy A, která se používá pro tzv. loopback a mají ji všechny počítače využívající protokol IP.

    Dále pak podle RFC 1918 jsou vyhrazeny IP adresy pro privátní (vnitřní) sítě. Tyto adresy můžete volně používat ve své lokální síti, nemusíte o ně nikde žádat, ale taky se nesmí dostat ven do internetu. Jsou to:

    Třída A 10.0.0.0 10.255.255.255
    Třída B 172.16.0.0 172.31.255.255
    Třída C 192.168.0.0 192.168.255.255

    Pokud budete používat tyto adresy (což lze jen doporučit) a budete chtít svou síť připojit na internet, budete potřebovat minimálně jednu veřejnou IP adresu, v tom případě pak zřejmě použijete tzv. službu NAT (viz dále).

    Masky podsítě

    Maska podsítě určuje, které bity v IP adrese tvoří adresu sítě či podsítě. Podle tohoto se stanovuje jakým způsobem se má dále datagram předávat. Jestliže odesílající počítač podle masky pozná, že cílový stroj leží ve stejném segmentu sítě (ve stejné podsíti), může datagram odeslat přímo. Pokud ale z masky odvodí, že cílový počítač leží v jiném segmentu, musí datagram odeslat na router, který se již dále postará o jeho doručení (či další předání).

    NAT neboli překlad síťových adres

    NAT (Network Address Translation) je služba většinou provozovaná na routeru a slouží k převodu vnitřních privátních adres na veřejné adresy, které je možno používat na internetu. Služba NAT může být používána jako statická nebo dynamická.

    Statický NAT

    Převádí adresy v poměru 1:1, musí se ručně nastavit na routeru. Prakticky to není moc použitelné, protože potřebujeme stejný počet vnějších i vnitřních adres.

    Dynamický NAT

    V tomto případě je již několik vnitřních adres mapováno na jednu vnější. Protože je pro převod všech interních adres použita pouze jedna vnější, musí administrátor určit jakým způsobem bude zajištěna identifikace každého počítače. To se dělá tak, že ke vnější adrese je přidáno také číslo portu transportní vrstvy odesílajícího počítače. Jakmile router namapuje vnitřní adresu na vnější, použije tuto vnější adresu v hlavičce IP datagramu a pošle jej dál (do internetu). Pokud cílový počítač odpoví, je po příchodu datagramu opět IP adresa přemapována a datagram je odeslán tomu počítači ve vnitřní síti, který si jej vyžádal.

    Protokol TCP

    Pracuje na úrovni transportní vrstvy (spolu s protokolem UDP). Slouží ke spolehlivému doručování paketů v sítích, k čemuž má potřebné funkce, které zajišťují dodržení pořadí paketů, platnost dat v paketu, opětovné zaslání paketu, který se po cestě ztratí či poškodí, atd. Další důležitou vlastnost je používání tzv. čísel portů, které umožňují přenos dat mezi určitými aplikacemi a ne pouze z jednoho počítače na druhý. Všechny tyhle vlastnosti jsou "zaplaceny" menší rychlostí tohoto protokolu, protože režie na správu informací o spojení, opětovné zasílání ztracených paketů atd. zabere dost času. Pokud nám jde více o rychlost než o spolehlivost, můžeme použít protokol UDP (User Datagram Protocol).

    Routovací protokoly

    Následující protokoly (existuje jich samozřejmě více; já jsem vybral dva nejčastěji používané) se používají při dynamickém routování (při statickém jich netřeba, protože všechny trasy se musí do routovací tabulky zadat ručně). Oba tyto protokoly patří do kategorie IGP, což jsou protokoly fungující uvnitř autonomních sítí (opakem jsou pak protokoly EGP, které slouží ke vzájemné komunikaci autonomních sítí).

    RIP (Routing Information Protocol) existuje ve dvou verzích. Je definovaný v dokumentu RFC 1058 (v. 1) a RFC 2453 (v. 2). Jednoduchý, ale hojně používaný protokol, vhodný zejména do menších sítí (kde se tolik neprojevují jeho nevýhody). K aktualizaci routovací tabulky používá všesměrové vysílání, které provádí každých 30 sekund, a to bez ohledu na to, jestli k nějakým změnám došlo nebo ne. Pakety posílá po nejkratší trase, kterou určuje podle počtu "přeskoků", tzn. podle počtu routerů, přes které musí paket projít od zdrojového k cílovému počítači (nehledí na jiné kritéria jako je např. rychlost linek). Těchto přeskoků zvládá max. 15, cíl vzdálený 16 a více přeskoků považuje za nedosažitelný (paket zahodí a zpět pošle ICMP zprávu o nedosažitelnosti cíle).

    OSPF (Open Shortest Path First), specifikován v dokumentu RFC 1247 a jeho náhradě RFC 1583, je novější než RIP, při routování hledá nejrychlejší trasu a ne pouze nejkratší jako to dělá RIP, navíc dokáže rozdělit provoz do více tras (říká se tomu "vyrovnávání zátěže"). Díky jeho vlastnostem je možno jej používat i ve velkých sítích.

    Tak to by bylo pro dnešek vše. Je jasné, že o protokolech z rodiny TCP/IP by toho šlo napsat obrovské kvantum, takže doufám, že se mi podařilo "vytáhnout" alespoň to nejdůležitější (pokud máte nějaké připomínky či otázky, tak se svěřte v diskuzi a já se pokusím na ně odpovědět). Příště si ukážeme jak pod Linuxem nastavit routovací tabulku a řekneme si něco o jedné minidistribuci, která se příhodně jmenuje Linux Router Project (LRP).

    Související články

    Linuxové DMZ - I (Úvod do problematiky)
    Linuxové DMZ - II (Zařízení v DMZ)
    Linuxové DMZ - III (Modelové topologie)
    Linuxové DMZ - V (Routery a minidistribuce LRP)
    Linuxové DMZ - VI (Firewally)
    Linuxové DMZ - VII (Paketové filtry)

    Odkazy a zdroje

    tcpdump - Anyzátor paketů pro příkazovou řádku
    ethereal - Grafický analyzátor paketů
    /etc/protocols
           

    Hodnocení: 37 %

            š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ář

    Jiří Svoboda avatar 26.2.2003 10:05 Jiří Svoboda | skóre: 37 | blog: cat /dev/mind | Prostějov
    Rozbalit Rozbalit vše Bacha na uchylnou terminologii CISCO
    Jednou jsem mailem a posleze po telefonu diktoval jistemu cloveku, jak ma nastavit CISCO PIX firewall (on se tim zivi) a porad jsme se nemohli domluvit. Nakonec jsem rozhorcene zacal studovat manual a duvod nasel.
    CISCO totiz preklad adres sice nazyva NAT, ale pro jeden konkretni pripad NATu to neplati. Pokud se preklada vice vnitrnich adres na jedinou internetovou, tak to podle nich neni NAT, ale PAT (Port Address Translation). Tak bacha na to!
    26.2.2003 14:07 kmarty
    Rozbalit Rozbalit vše Bacha na uchylnou terminologii CISCO
    Aha, takze ne pres "ip nat ... overload", ktere mi na ciscu chodi uz nejakou tu chvili ? :-)
    26.2.2003 14:12 Czerteak
    Rozbalit Rozbalit vše Bacha na uchylnou terminologii CISCO
    Ja myslim, ze na tohle jsou nejvetsi odbornici Pat a Mat... :-)))
    26.2.2003 15:21 kolisko | skóre: 21 | blog: prace
    Rozbalit Rozbalit vše Bacha na uchylnou terminologii CISCO
    To je logicky, protoze to vlastne PAT opravdu je. Sice je to trochu zavadejici, ale opravdu se jedna o PAT (v kombinaci prekladu vsech src adres na jednu, popr. nejaky pool, takze v kombinaci s ne 1:1 NATem). Vnitrne totiz mapuje jednotlive adresy na nejake porty, ktere si drzi v pameti. Kdyz prijde navratova komunikace na dany port, podle toho ji posle prislusne IP adrese. V linuxu se tomu rika masquerading a tim je to naprosto jasny. kolisko
    Jiří Svoboda avatar 27.2.2003 13:22 Jiří Svoboda | skóre: 37 | blog: cat /dev/mind | Prostějov
    Rozbalit Rozbalit vše Bacha na uchylnou terminologii CISCO
    Ja nerikam, ze to technicky neni preklad portu (PAT). Jenom je blby (zavadejici), ze jediny CISCO si na to vymyslelo tuto zkratku.
    1.3.2003 12:45 Pavel
    Rozbalit Rozbalit vše Bacha na uchylnou terminologii CISCO
    Nejen Cisco, treba takový Checkpoint na svých firewallech používá své pojmy jako HIDE NAT a STATIC :) Stejně nejlepší je terminologie dnešních IPTABLES, tj. SNAT a DNAT ;-)
    26.2.2003 15:35 fyzik
    Rozbalit Rozbalit vše ach ty masky
    Zdravim clanek pekny, ale v jednom jste me docela zklamali - od roku 1993 (sic!!!) byly nahrazeny tridy IP adres (A,B,C,D,E) obecnejsim CIDR, umoznijici efektivnejsi vyuziti IP prosotoru. Novejsi zapis je /, tedy napriklad 10.1.1.1/8 nebo 195.133.0.2/24. Pro dalsi studium doporucui napriklad http://public.pacbell.net/dedicated/cidr.html mejte se fajn -F
    26.2.2003 15:38 fyzik
    Rozbalit Rozbalit vše ach ty masky
    ergh --> novejsi zapis je [IP]/[pocet jednicek v masce]
    14.3.2003 14:16 PaJaSoft
    Rozbalit Rozbalit vše TCP/IP vs. ISO/OSI
    V posledni dobe to opravuji snad po desate, takze kratce... TCP/IP ma s ISO/OSI spolecneho velmi pramalo, jednak se Vam TCP/IP na ISO/OSI nepodari vubec namapovat (kam zaradite ARP, RARP, ICMP apod.?:-]) - a opacne taky ne!, jednak jsou to filosoficky odlisne proudy - asi jako closed a open source software... - oba resi sice to same, ale kazdy po svem.
    14.3.2003 14:18 PaJaSoft
    Rozbalit Rozbalit vše TCP/IP vs. ISO/OSI
    Jeste drobnost, TCP/IP z ISO/OSI nevychazi a ani nemuze, protoze je jaxi drobet starsi nez neco jako navrh ISO/OSI vzniklo...

    Založit nové vláknoNahoru

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