{"id":288837,"date":"2022-10-30T10:18:00","date_gmt":"2022-10-30T07:18:00","guid":{"rendered":"https:\/\/vpn.inform.click\/?p=288837"},"modified":"2023-06-28T07:47:22","modified_gmt":"2023-06-28T04:47:22","slug":"fragmentacja-ip-calkowicie-wyjasniona","status":"publish","type":"post","link":"https:\/\/vpn.inform.click\/pl\/fragmentacja-ip-calkowicie-wyjasniona\/","title":{"rendered":"Fragmentacja IP: ca\u0142kowicie wyja\u015bniona"},"content":{"rendered":"\n<p>Ka\u017cda sie\u0107 oparta na pakietach IP ma rozmiar maksymalnej jednostki transmisji (MTU). MTU, jak sugeruje termin, to <strong>maksymalny rozmiar pakietu<\/strong>, kt\u00f3ry mo\u017cna przes\u0142a\u0107 w sieci.<\/p>\n<p>Pakiety IP wi\u0119ksze ni\u017c rozmiar MTU wymagaj\u0105 podzielenia na mniejsze fragmenty lub pakiety, aby mog\u0142y by\u0107 przesy\u0142ane w sieci.<\/p>\n<p>Nadal zdezorientowany? Nie martw si\u0119.\u00a0<\/p>\n<p>W tym przewodniku wyja\u015bnimy wszystko na temat fragmentacji IP \u2013 co to jest, co robi, jak jest u\u017cywane i jakie s\u0105 jej wady, w spos\u00f3b zrozumia\u0142y dla laika. Odpowiemy dalej na kilka konkretnych zapyta\u0144 u\u017cytkownik\u00f3w zwi\u0105zanych z tematem. Wi\u0119c bez zb\u0119dnych ceregieli zacznijmy!<\/p>\n<h2>Co to jest fragmentacja IP?<\/h2>\n<p>Ka\u017cda sie\u0107 lokalna obs\u0142uguje maksymalny rozmiar pakietu IP. Tak wi\u0119c, gdy host u\u017cywa sieci do przesy\u0142ania pakietu IP, nie <strong>powinien on by\u0107 wi\u0119kszy<\/strong> ni\u017c rozmiar maksymalnej jednostki transmisji (MTU). W przeciwnym razie jest dzielony na ma\u0142e cz\u0119\u015bci \u2013 proces zwany <strong>fragmentacj\u0105 IP.<\/strong><\/p>\n<p>Ten rozmiar jest zwykle okre\u015blany przez jednostki MTU i \u0142\u0105cze danych sieci, kt\u00f3re cz\u0119sto s\u0105 takie same. Wsp\u00f3\u0142czesne miejsce pracy, centrum danych lub sie\u0107 kampusowa oferowana przez Ethernet ma <strong>jednostki MTU o warto\u015bci 1500 bajt\u00f3w.<\/strong><\/p>\n<p>Jednak pakiety IP przes\u0142ane najpierw przez sie\u0107 obs\u0142uguj\u0105c\u0105 pojedyncz\u0105 jednostk\u0119 MCU mog\u0105 wymaga\u0107 routingu przez tunele VPN, sieci WAN lub przez inne sieci o mniejszych jednostkach maksymalnej transmisji. W przypadku, gdy rozmiar pakietu przekracza mniejsz\u0105 jednostk\u0119 MTU, dane w tym pakiecie musia\u0142yby zosta\u0107 pofragmentowane.<\/p>\n<p>Dane by\u0142yby <strong>dzielone na wiele cz\u0119\u015bci<\/strong> i <strong>przenoszone w nowych fragmentach (pakietach)<\/strong>, kt\u00f3re s\u0105 mniejsze lub r\u00f3wne wielko\u015bci ni\u017c dolny MCU. Te pofragmentowane dane zostan\u0105 nast\u0119pnie ponownie zmontowane, gdy dotr\u0105 do miejsca docelowego.<\/p>\n<hr \/>\n<h2>IPv4<\/h2>\n<h3>U\u017cyte pola nag\u0142\u00f3wka IPv4<\/h3>\n<p>Fragmentacja i proces ponownego sk\u0142adania wymagaj\u0105 r\u00f3\u017cnych p\u00f3l nag\u0142\u00f3wka IP, kt\u00f3re s\u0105 ustawione na kawa\u0142ki\/fragmenty.<\/p>\n<\/p>\n<p>(Kredyty obrazkowe: packetpushers.net)<\/p>\n<p>Operacja fragmentacji opiera si\u0119 na <strong>trzech polach nag\u0142\u00f3wka IP (\u0142\u0105cznie 32 bity).<\/strong> Wszystkie te fragmenty b\u0119d\u0105 mia\u0142y warto\u015bci znacznie r\u00f3\u017cni\u0105ce si\u0119 od oryginalnego pakietu IP:<\/p>\n<p>Pole <strong>Identyfikacja (16 bit\u00f3w)<\/strong> zawiera unikalny numer ID b\u0119d\u0105cy kombinacj\u0105 \u017ar\u00f3d\u0142owego i docelowego adresu IP. Pole <strong>Protocol,<\/strong> maj\u0105ce warto\u015b\u0107 oryginalnego pakietu, umo\u017cliwia odbiorcy rozr\u00f3\u017cnianie fragment\u00f3w r\u00f3\u017cnych pakiet\u00f3w pochodz\u0105cych z tego samego \u017ar\u00f3d\u0142a.<\/p>\n<p>Oznacza to po prostu, \u017ce ten sam identyfikator mo\u017ce by\u0107 u\u017cywany nawet wtedy, gdy \u017ar\u00f3d\u0142o, protok\u00f3\u0142 i miejsce docelowe pofragmentowanych pakiet\u00f3w nie s\u0105 takie same.<\/p>\n<p>Dok\u0142adnie tak jak w przypadku oryginalnego pakietu IP, pierwszy zarezerwowany bit\u00a0 pola <strong>Flags<\/strong> (\u0142\u0105cznie 3 bity), a drugi bit <strong>Nie fragmentuj (DF)\u00a0<\/strong> b\u0119d\u0105 oba nieustawione (0).<\/p>\n<p>Jednak ko\u0144cowy fragment b\u0119dzie mia\u0142 trzeci bit tego pola, tj. <strong>Wi\u0119cej fragment\u00f3w (MF)<\/strong> ustawiony na 1. Wszystkie bity w tym polu ostatniego pakietu IP zostan\u0105 ustawione na 0, dok\u0142adnie tak jak oryginalny pakiet IP (chyba \u017ce jest to fragment).<\/p>\n<p>Je\u015bli w oryginalnym pakiecie ustawiona jest flaga Nie fragmentuj, zapobiegnie to fragmentacji i spowoduje, \u017ce pakiety b\u0119d\u0105 musia\u0142y zosta\u0107 odrzucone. W takim przypadku do nadawcy nale\u017cy przes\u0142a\u0107 b\u0142\u0119dy, na przyk\u0142ad <strong>b\u0142\u0105d ICMP typu 3: \u201eMiejsce docelowe nieosi\u0105galne&quot;, kod 4: \u201eWymagana fragmentacja i ustawiony DF&#8221;.<\/strong><\/p>\n<p>Pole <strong>Przesuni\u0119cie fragmentu\u00a0<\/strong> (\u0142\u0105cznie 13 bit\u00f3w) jest wykorzystywane do wskazania pocz\u0105tkowej pozycji danych we fragmencie w odniesieniu do danych pocz\u0105tkowych oryginalnego pakietu IP. Jest to nast\u0119pnie wykorzystywane do ponownego sk\u0142adania danych ze wszystkich fragment\u00f3w (przyby\u0142ych lub nie).<\/p>\n<p>Przesuni\u0119cie w pierwszym fragmencie wynosi 0, poniewa\u017c dane w tym pofragmentowanym pakiecie i oryginalnym zaczynaj\u0105 si\u0119 w tym samym miejscu. W kolejnych fragmentach warto\u015b\u0107 jest przesuni\u0119ciem pofragmentowanych danych od pocz\u0105tku danych w pocz\u0105tkowym fragmencie <strong>(przesuni\u0119cie 0), w 8-bajtowych blokach (znanych r\u00f3wnie\u017c jako \u00f3semki).<\/strong><\/p>\n<p>Je\u015bli pakiet IP zawieraj\u0105cy dane o warto\u015bci 800 bajt\u00f3w jest podzielony na dwie r\u00f3wne cz\u0119\u015bci\/fragmenty, z kt\u00f3rych ka\u017cdy ma 400 bajt\u00f3w, przesuni\u0119cie fragmentu <strong>pierwszego fragmentu wynosi 0,<\/strong> a drugiego <strong>50 (400\/8).<\/strong><\/p>\n<p>Warto\u015b\u0107 przesuni\u0119cia musi by\u0107 liczb\u0105 <strong>8-bajtowych blok\u00f3w danych.<\/strong> Oznacza to, \u017ce poprzedni fragment musi by\u0107 wielokrotno\u015bci\u0105 8 bajt\u00f3w. Ostatni fragment mo\u017ce przenosi\u0107 dane, kt\u00f3re nie s\u0105 wielokrotno\u015bci\u0105 8 bajt\u00f3w, poniewa\u017c nie b\u0119dzie wi\u0119cej fragment\u00f3w.<\/p>\n<hr \/>\n<h2>IPv6<\/h2>\n<p>Mimo \u017ce wi\u0119kszo\u015b\u0107 p\u00f3l nag\u0142\u00f3wka pozostaje taka sama, fragmentacja IP w IPv6 dzia\u0142a nieco inaczej ni\u017c w IPv4. W IPv6 dane mog\u0105 by\u0107 <strong>fragmentowane tylko na ho\u015bcie \u017ar\u00f3d\u0142owym.<\/strong> Oznacza to, \u017ce fragmentacji nie mo\u017cna przeprowadzi\u0107 w innych sieciach poza \u017ar\u00f3d\u0142em.<\/p>\n<p>Nie ma dost\u0119pnej <strong>flagi Nie fragmentuj<\/strong>, wi\u0119c wszystko, co musisz zrobi\u0107, to nie tworzy\u0107 fragment\u00f3w.<\/p>\n<p>Nie mo\u017cna przeprowadzi\u0107 fragmentacji IP, je\u015bli nie jest u\u017cywany PMTUD. W\u0119z\u0142y nie mog\u0105 u\u017cywa\u0107 <strong>MTU wi\u0119kszej ni\u017c 1280 bajt\u00f3w<\/strong>, czyli minimum IPv6, je\u015bli nie implementuj\u0105 Path MTU Discovery (PMUTD).<\/p>\n<p>Chocia\u017c Path MTU Discovery dzia\u0142a w taki sam spos\u00f3b jak IPv4, komunikat o b\u0142\u0119dzie ICMP jest inny:<\/p>\n<p><a href=\"https:\/\/vpn.inform.click\/wp-content\/uploads\/2022\/04\/post-151763-625db9405ca3d.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/vpn.inform.click\/wp-content\/uploads\/2022\/04\/post-151763-625db9405ca3d.png\" alt=\"\"><\/a><\/p>\n<p>(Kredyty obrazkowe: packetpushers.net)<\/p>\n<p>Je\u015bli pakiet IP ma wi\u0119kszy rozmiar ni\u017c MCU, router IPv6 musi go <strong>odrzuci\u0107<\/strong> i wys\u0142a\u0107 <strong>b\u0142\u0105d ICMPv6 typu 2 \u201ePacket Too Big&#8221;<\/strong> \u2013 kod 0 do nadawcy.<\/p>\n<p>Nale\u017cy pami\u0119ta\u0107, \u017ce poleganie na kanale zwrotnym i transmisji ICMP do hosta, z kt\u00f3rego pochodzi, ma wiele wad \u2013 wa\u017cn\u0105 z nich jest to, \u017ce <strong>wiadomo\u015bci ICMP s\u0105 cz\u0119sto blokowane w r\u00f3\u017cnych przypadkach<\/strong> w sieci ze wzgl\u0119du na zalety bezpiecze\u0144stwa.<\/p>\n<p>W ten spos\u00f3b host inicjuj\u0105cy nie otrzyma wiadomo\u015bci <strong>Packet Too Big<\/strong> i ponownie prze\u015ble pakiety IP, kt\u00f3re by\u0142y wielokrotnie odrzucane, kt\u00f3re z pewno\u015bci\u0105 nie dotr\u0105. Ostatecznie po\u0142\u0105czenie zostanie uznane za <strong>niestabilne i zamkni\u0119te.<\/strong> Nawet gdyby powsta\u0142 nowy, problem by si\u0119 powt\u00f3rzy\u0142.<\/p>\n<p>Pola nag\u0142\u00f3wka zwi\u0105zane z fragmentacj\u0105 s\u0105 umieszczane w nag\u0142\u00f3wku rozszerzenia zwanym nag\u0142\u00f3wkiem fragmentu. Jest to okre\u015blone w polu <strong>Nast\u0119pny nag\u0142\u00f3wek<\/strong> (warto\u015b\u0107 44) w standardowym IPv6 lub dowolnym poprzednim nag\u0142\u00f3wku rozszerzenia.<\/p>\n<p>Podobnie jak wszystkie nag\u0142\u00f3wki rozszerze\u0144, ten ma <strong>d\u0142ugo\u015b\u0107 8 bajt\u00f3w\/64 bity,<\/strong> wraz ze standardowym nag\u0142\u00f3wkiem, co skutkuje fragmentacj\u0105 IPv6 z wi\u0119kszym obci\u0105\u017ceniem ni\u017c IPv4.<\/p>\n<h3>U\u017cyte pola nag\u0142\u00f3wka IPv6<\/h3>\n<p>Sprawd\u017a pola w nag\u0142\u00f3wku rozszerzenia fragmentu IPv6:<\/p>\n<p><a href=\"https:\/\/vpn.inform.click\/wp-content\/uploads\/2022\/04\/post-151763-625db94182fc1.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/vpn.inform.click\/wp-content\/uploads\/2022\/04\/post-151763-625db94182fc1.png\" alt=\"\"><\/a><\/p>\n<p>(Kredyty obrazkowe: packetpushers.net)<\/p>\n<p>Pole o nazwie <strong>Nast\u0119pny nag\u0142\u00f3wek<\/strong> (8 bit\u00f3w) okre\u015bla typ nag\u0142\u00f3wka, na przyk\u0142ad nag\u0142\u00f3wek protoko\u0142u wy\u017cszej warstwy lub nag\u0142\u00f3wek rozszerzenia IPv6. Nast\u0119pne 8 bit\u00f3w jest wtedy zarezerwowanych.<\/p>\n<p>13-bitowe pole <strong>Fragment Offset<\/strong> jest u\u017cywane w podobny spos\u00f3b jak IPv4. Nast\u0119pnie nast\u0119pne 2 bity s\u0105 zarezerwowane.<\/p>\n<p>Flaga pola <strong>M<\/strong> zostanie ustawiona na 1, a ko\u0144cowy fragment zostanie ustawiony tak, jak w polu <strong>Wi\u0119cej fragment\u00f3w (MF)\u00a0<\/strong> protoko\u0142u IPv4 .<\/p>\n<p>32-bitowe pole <strong>Identyfikacja<\/strong> jest takie samo jak 16-bitowe pole IPv4 zawieraj\u0105ce unikalny numer identyfikacyjny dla kombinacji adres\u00f3w \u017ar\u00f3d\u0142owych i docelowych. Pole Protok\u00f3\u0142 jest niedost\u0119pne w IPv6.<\/p>\n<hr \/>\n<h2>Wady fragmentacji IP<\/h2>\n<p>Uwa\u017ca si\u0119, \u017ce stos protoko\u0142u IP ma <strong>zawodny mechanizm,<\/strong> w wyniku kt\u00f3rego hosty ko\u0144cowe nie mog\u0105 okre\u015bli\u0107 maksymalnego rozmiaru \u0142adunku podczas komunikowania si\u0119 za po\u015brednictwem hosta IPv4 i IPv6.<\/p>\n<p>Mimo \u017ce brak mechanizmu MTU w sieci jest zrozumia\u0142y, poniewa\u017c pakiety IP poruszaj\u0105 si\u0119 r\u00f3\u017cnymi trasami, <strong>brak informacji od ko\u0144ca do ko\u0144ca<\/strong> mo\u017ce spowodowa\u0107, \u017ce routery po\u015brednicz\u0105ce b\u0119d\u0105 otrzymywa\u0107 pakiety o zbyt du\u017cych rozmiarach i nie b\u0119d\u0105 w stanie ich przes\u0142a\u0107 dalej.<\/p>\n<p>Routery IPv4 mog\u0105 <strong>dzieli\u0107 pakiety IP na fragmenty podczas tranzytu,<\/strong> ale ta sama funkcja nie jest dost\u0119pna w routerach IPv6 \u2013 gdzie nadawca musi wykona\u0107 fragmentacj\u0119.<\/p>\n<p>Fragmentacja powoduje skok w <strong>napowietrzeniu warstwy-3.<\/strong> Na przyk\u0142ad, je\u015bli host ko\u0144cowy uwa\u017ca, \u017ce \u200b\u200bmo\u017ce u\u017cywa\u0107 pakiet\u00f3w IP o d\u0142ugo\u015bci 1500 bajt\u00f3w, ale napotyka na swojej \u015bcie\u017cce przeskok o rozmiarze MTU 1472, pakiet IP zostanie podzielony na dwa pakiety, co spowoduje dodanie <strong>nag\u0142\u00f3wka IPv6 40 bajt\u00f3w i 20-bajtowy nag\u0142\u00f3wek IPv4.<\/strong><\/p>\n<p>Fragmenty IP stanowi\u0105 <strong>dodatkowe obci\u0105\u017cenie dla systemu odbieraj\u0105cego,<\/strong> poniewa\u017c wymagane jest ponowne z\u0142o\u017cenie fragment\u00f3w w celu dostarczenia ich do wy\u017cszych warstw protoko\u0142u. Ta aktywno\u015b\u0107 nasila si\u0119, gdy router przerywa ruch IP.<\/p>\n<p>Je\u015bli router spr\u00f3buje po\u0142\u0105czy\u0107 pofragmentowane pakiety, pakiety nie zostan\u0105 ponownie po\u0142\u0105czone w sprz\u0119cie i drastycznie zmniejsz\u0105 wydajno\u015b\u0107 platformy.<\/p>\n<hr \/>\n<h2>Cz\u0119sto zadawane pytania<\/h2>\n<p>Fragmentacja IP ma kluczowe znaczenie dla transmisji danych, poniewa\u017c ka\u017cda sie\u0107 ma inny limit rozmiaru przetwarzania danych. Ten limit jest r\u00f3wnie\u017c znany jako MTU (maksymalna jednostka transmisji).<\/p>\n<p>Nie, routery mog\u0105 fragmentowa\u0107 pakiety IP, ale nie mog\u0105 ich ponownie sk\u0142ada\u0107. Ponowne z\u0142o\u017cenie tych pakiet\u00f3w dla u\u017cytkownika jest zadaniem urz\u0105dzenia docelowego.<\/p>\n<p>W przypadku utraty jednego lub wielu fragment\u00f3w datagramu, po up\u0142ywie limitu czasu ca\u0142y datagram jest odrzucany.<\/p>\n<hr \/>\n<h2>Wniosek<\/h2>\n<p>Na tym ko\u0144czy si\u0119 nasz szczeg\u00f3\u0142owy przewodnik dotycz\u0105cy fragmentacji adres\u00f3w IP.<\/p>\n<p>Aby uzyska\u0107 szybki przegl\u0105d, je\u015bli dane przesy\u0142ane przez sie\u0107 s\u0105 wi\u0119ksze ni\u017c rozmiar <a href=\"https:\/\/www.ibm.com\/docs\/SSLTBW_2.3.0\/com.ibm.zos.v2r3.hald001\/maxtran.htm\" rel=\"noopener nofollow\" class=\"external external_icon\" target=\"_blank\">maksymalnej jednostki transmisji (MTU)<\/a>, dane zostan\u0105 podzielone na wiele fragment\u00f3w i przes\u0142ane do odbiorcy.<\/p>\n<p>Gdy tylko fragmenty IP dotr\u0105 do miejsca przeznaczenia, zostan\u0105 ponownie zmontowane we w\u0142a\u015bciwej kolejno\u015bci, dzi\u0119ki czemu dane mog\u0105 by\u0107 przydatne dla u\u017cytkownik\u00f3w. Mechanizm fragmentacji jest inny zar\u00f3wno w sieciach IPv4, jak i IPv6, o kt\u00f3rych szczeg\u00f3\u0142y wspomniano powy\u017cej.<\/p>\n<p>Je\u015bli masz jakiekolwiek pytania dotycz\u0105ce <a href=\"#10803\" title=\"adres\u00f3w IP\">adres\u00f3w IP<\/a> i fragmentacji, skontaktuj si\u0119 z nami w komentarzach.<\/p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Chcesz wiedzie\u0107, czym jest fragmentacja IP? Przeczytaj nasz przewodnik i dowiedz si\u0119 wszystkiego o fragmentacji adres\u00f3w IP, o tym, jak to dzia\u0142a i jakie ma wady.<\/p>\n","protected":false},"author":1,"featured_media":321742,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[8490,8521,8561,8591,8541],"tags":[],"class_list":["post-288837","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-instrukcje-vpn","category-ochrona-danych","category-ogolny","category-roznorodny","category-ustawienia"],"_links":{"self":[{"href":"https:\/\/vpn.inform.click\/pl\/wp-json\/wp\/v2\/posts\/288837","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpn.inform.click\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vpn.inform.click\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vpn.inform.click\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vpn.inform.click\/pl\/wp-json\/wp\/v2\/comments?post=288837"}],"version-history":[{"count":0,"href":"https:\/\/vpn.inform.click\/pl\/wp-json\/wp\/v2\/posts\/288837\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpn.inform.click\/pl\/wp-json\/wp\/v2\/media\/321742"}],"wp:attachment":[{"href":"https:\/\/vpn.inform.click\/pl\/wp-json\/wp\/v2\/media?parent=288837"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vpn.inform.click\/pl\/wp-json\/wp\/v2\/categories?post=288837"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vpn.inform.click\/pl\/wp-json\/wp\/v2\/tags?post=288837"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}