{"id":291254,"date":"2022-10-30T10:18:00","date_gmt":"2022-10-30T07:18:00","guid":{"rendered":"https:\/\/vpn.inform.click\/?p=291254"},"modified":"2023-06-28T07:47:24","modified_gmt":"2023-06-28T04:47:24","slug":"ip-fragmentering-fullstandigt-forklarad","status":"publish","type":"post","link":"https:\/\/vpn.inform.click\/sv\/ip-fragmentering-fullstandigt-forklarad\/","title":{"rendered":"IP-fragmentering: Fullst\u00e4ndigt f\u00f6rklarad"},"content":{"rendered":"\n<p>Varje n\u00e4tverk baserat p\u00e5 IP-paket har en MTU-storlek (Maximum Transmission Unit). MTU, som termen antyder, \u00e4r den <strong>maximala storleken p\u00e5 paketet<\/strong> som kan \u00f6verf\u00f6ras p\u00e5 n\u00e4tverket.<\/p>\n<p>IP-paket som \u00e4r st\u00f6rre \u00e4n MTU-storleken kr\u00e4ver att de delas upp i mindre fragment eller paket s\u00e5 att de kan f\u00e4rdas \u00f6ver n\u00e4tverket.<\/p>\n<p>Fortfarande f\u00f6rvirrad? Oroa dig inte.\u00a0<\/p>\n<p>I den h\u00e4r guiden kommer vi att f\u00f6rklara allt om IP-fragmentering \u2013 vad det \u00e4r, vad det g\u00f6r, hur det anv\u00e4nds och dess nackdelar, i lekmannatermer f\u00f6r f\u00f6rst\u00e5else. Vi kommer vidare att svara p\u00e5 n\u00e5gra specifika fr\u00e5gor fr\u00e5n anv\u00e4ndare relaterade till \u00e4mnet. S\u00e5, utan vidare, l\u00e5t oss komma ig\u00e5ng!<\/p>\n<h2>Vad \u00e4r IP-fragmentering?<\/h2>\n<p>Varje lokalt n\u00e4tverk st\u00f6der en maximal storlek p\u00e5 IP-paket. S\u00e5 n\u00e4r en v\u00e4rd anv\u00e4nder n\u00e4tverket f\u00f6r att \u00f6verf\u00f6ra ett IP-paket, <strong>b\u00f6r det inte vara st\u00f6rre<\/strong> \u00e4n storleken f\u00f6r maximal \u00f6verf\u00f6ringsenhet (MTU). Annars \u00e4r det uppdelat i sm\u00e5 bitar \u2013 en process som kallas <strong>IP-fragmentering.<\/strong><\/p>\n<p>Denna storlek best\u00e4ms vanligtvis av MTU:erna och n\u00e4tverkets datal\u00e4nk som ofta \u00e4r densamma. En modern arbetsplats, datacenter eller campusn\u00e4tverk som erbjuds via Ethernet har <strong>MTU:er v\u00e4rda 1500 byte.<\/strong><\/p>\n<p>D\u00e4remot kan IP-paket som f\u00f6rst \u00f6verf\u00f6rs \u00f6ver ett n\u00e4tverk som st\u00f6der en enda MCU kr\u00e4va routning \u00f6ver VPN-tunnlar, WAN eller \u00f6ver andra n\u00e4tverk med mindre maximala \u00f6verf\u00f6ringsenheter. Om storleken p\u00e5 paketet \u00f6verstiger den mindre MTU:n, skulle data i detta paket beh\u00f6va fragmenteras.<\/p>\n<p>Data skulle <strong>brytas upp i flera bitar<\/strong> och <strong>b\u00e4ras i nya fragment (paket)<\/strong> som \u00e4r mindre eller lika stora \u00e4n den l\u00e4gre MCU. Denna fragmenterade data kommer sedan att \u00e5ters\u00e4ttas n\u00e4r den n\u00e5r sin destination.<\/p>\n<hr \/>\n<h2>IPv4<\/h2>\n<h3>IPv4-huvudf\u00e4lten som anv\u00e4nds<\/h3>\n<p>Fragmenteringen och \u00e5termonteringsprocessen har olika IP-huvudf\u00e4lt inblandade som s\u00e4tts in i bitar\/fragment.<\/p>\n<\/p>\n<p>(Bildkrediter: packetpushers.net)<\/p>\n<p>Driften av fragmentering bygger p\u00e5 <strong>tre IP-huvudf\u00e4lt (totalt 32 bitar).<\/strong> Alla dessa fragment kommer att ha signifikant olika v\u00e4rden j\u00e4mf\u00f6rt med det ursprungliga IP-paketet:<\/p>\n<p>Identifieringsf\u00e4ltet <strong>(16 bitar)<\/strong> inneh\u00e5ller ett unikt ID-nummer som \u00e4r en blandning av k\u00e4ll- och destinations-IP-adresser. Protokollf\u00e4ltet<strong>,<\/strong> som har det ursprungliga paketets v\u00e4rde, g\u00f6r det m\u00f6jligt f\u00f6r destinationen att skilja mellan de olika paketens fragment som kommer fr\u00e5n samma k\u00e4lla.<\/p>\n<p>Detta betyder helt enkelt att samma ID kan anv\u00e4ndas \u00e4ven n\u00e4r k\u00e4llan, protokollet och destinationen f\u00f6r de fragmenterade paketen inte \u00e4r samma.<\/p>\n<p>Precis som det ursprungliga IP-paketet kommer den f\u00f6rsta reserverade biten i <strong>Flags<\/strong> -f\u00e4ltet (totalt 3 bitar) och den andra, <strong>Don't Fragment (DF)\u00a0<\/strong> -biten b\u00e5da att vara inst\u00e4llda (0).<\/p>\n<p>Det slutliga fragmentet kommer dock att ha f\u00e4ltets tredje bit, dvs. <strong>Fler fragment (MF)<\/strong> inst\u00e4lld p\u00e5 1. Alla bitar i detta f\u00e4lt av det senaste IP-paketet kommer att s\u00e4ttas till 0, precis som det ursprungliga IP-paketet (s\u00e5vida det inte \u00e4r ett fragment).<\/p>\n<p>Om flaggan Don't Fragment \u00e4r inst\u00e4lld i originalpaketet, skulle detta f\u00f6rhindra fragmentering och resultera i att paket m\u00e5ste kasseras. Fel ska skickas till avs\u00e4ndaren i det h\u00e4r fallet, som <strong>typ 3 ICMP-fel: 'Destination Unreachable', kod 4: 'Fragmentation required, and DF set.'<\/strong><\/p>\n<p>F\u00e4ltet <strong>Fragment Offset\u00a0<\/strong> (totalt 13 bitar) anv\u00e4nds f\u00f6r att indikera den initiala datapositionen i fragmentet, i f\u00f6rh\u00e5llande till startdata f\u00f6r det ursprungliga IP-paketet. Detta anv\u00e4nds sedan f\u00f6r att \u00e5tersammans\u00e4tta data fr\u00e5n alla fragment (anl\u00e4nda eller inte).<\/p>\n<p>Offseten i det f\u00f6rsta fragmentet \u00e4r 0 eftersom data i detta fragmenterade paket och det ursprungliga paketet b\u00f6rjar p\u00e5 samma plats. I f\u00f6ljande fragment \u00e4r v\u00e4rdet f\u00f6rskjutet av fragmenterad data fr\u00e5n b\u00f6rjan av data i det initiala fragmentet <strong>(0 offset), i 8-byte block (\u00e4ven k\u00e4nda som oktaord).<\/strong><\/p>\n<p>Om ett IP-paket som inneh\u00e5ller data v\u00e4rda 800 byte delas upp i tv\u00e5 lika stora delar\/fragment, som var och en b\u00e4r 400 byte, d\u00e5 \u00e4r fragmentoffset f\u00f6r det <strong>f\u00f6rsta fragmentet 0,<\/strong> medan det andra \u00e4r <strong>50 (400\/8).<\/strong><\/p>\n<p>Offsetv\u00e4rdet m\u00e5ste vara antalet <strong>8-byte datablock.<\/strong> Detta inneb\u00e4r att det f\u00f6reg\u00e5ende fragmentet m\u00e5ste vara en multipel av 8 byte. Det sista fragmentet till\u00e5ts b\u00e4ra data som inte \u00e4r en multipel av 8 byte eftersom det inte kommer att finnas n\u00e5gra fler fragment.<\/p>\n<hr \/>\n<h2>IPv6<\/h2>\n<p>\u00c4ven om de flesta rubrikf\u00e4lten f\u00f6rblir desamma fungerar IP-fragmentering i IPv6 lite annorlunda \u00e4n IPv4. I IPv6 kan data endast <strong>fragmenteras p\u00e5 k\u00e4llv\u00e4rden.<\/strong> Detta inneb\u00e4r att fragmentering inte kan utf\u00f6ras p\u00e5 andra n\u00e4tverk, f\u00f6rutom k\u00e4llan.<\/p>\n<p>Det finns ingen <strong>Don't Fragment-flagga<\/strong> tillg\u00e4nglig, s\u00e5 allt du beh\u00f6ver g\u00f6ra \u00e4r att inte skapa fragment.<\/p>\n<p>IP-fragmentering kan inte utf\u00f6ras om PMTUD inte anv\u00e4nds. Noder kan inte anv\u00e4nda en <strong>MTU som \u00e4r h\u00f6gre \u00e4n 1280 byte,<\/strong> vilket \u00e4r minimum av IPv6 om de inte implementerar Path MTU Discovery (PMUTD).<\/p>\n<p>Medan Path MTU Discovery fungerar p\u00e5 samma s\u00e4tt som IPv4, \u00e4r meddelandet om ICMP-fel annorlunda:<\/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>(Bildkrediter: packetpushers.net)<\/p>\n<p>Om IP-paketet \u00e4r st\u00f6rre \u00e4n MCU:n m\u00e5ste IPv6-routern <strong>kassera det<\/strong> och skicka ett <strong>typ 2 ICMPv6-fel &quot;Packet Too Big&quot;<\/strong> \u2013 kod 0 till avs\u00e4ndaren.<\/p>\n<p>Observera att att f\u00f6rlita sig p\u00e5 en bakkanal och ICMP-\u00f6verf\u00f6ring till ursprungsv\u00e4rden har flera brister \u2013 en viktig \u00e4r att <strong>ICMP-meddelanden ofta blockeras vid olika tillf\u00e4llen<\/strong> i ett n\u00e4tverk p\u00e5 grund av s\u00e4kerhetsf\u00f6rdelar.<\/p>\n<p>P\u00e5 s\u00e5 s\u00e4tt kommer den ursprunglige v\u00e4rden inte att ta emot <strong>meddelandena om Packet Too Big<\/strong> och kommer att \u00e5ters\u00e4nda IP-paketen som kasserades flera g\u00e5nger, som definitivt inte kommer att n\u00e5. S\u00e5 sm\u00e5ningom skulle anslutningen anses vara <strong>instabil och st\u00e4ngd.<\/strong> \u00c4ven om en ny skulle etableras skulle problemet upprepas.<\/p>\n<p>Rubrikf\u00e4lten relaterade till fragmentering placeras i en till\u00e4ggshuvud som kallas Fragment Header. Detta specificeras med ett <strong>n\u00e4sta rubrikf\u00e4lt<\/strong> (v\u00e4rde 44) i en standard IPv6 eller n\u00e5gon tidigare till\u00e4ggsrubrik.<\/p>\n<p>Precis som alla till\u00e4ggshuvuden \u00e4r den h\u00e4r <strong>8 byte\/64 bitar l\u00e5ng,<\/strong> tillsammans med en standardhuvud, vilket resulterar i en IPv6-fragmentering med en h\u00f6gre overhead \u00e4n IPv4.<\/p>\n<h3>IPv6 Header-f\u00e4lten som anv\u00e4nds<\/h3>\n<p>Kolla in f\u00e4lten i till\u00e4ggshuvudet f\u00f6r IPv6-fragmentet:<\/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>(Bildkrediter: packetpushers.net)<\/p>\n<p>F\u00e4ltet som heter <strong>Next Header<\/strong> (8 bitar) anger rubriktypen, som en protokollrubrik f\u00f6r \u00f6vre lager eller IPv6-till\u00e4ggshuvud. De n\u00e4sta 8 bitarna reserveras sedan.<\/p>\n<p>13-bitarsf\u00e4ltet <strong>Fragment Offset<\/strong> anv\u00e4nds p\u00e5 liknande s\u00e4tt som IPv4. Efter detta reserveras n\u00e4sta 2 bitar.<\/p>\n<p>F\u00e4ltets <strong>M<\/strong> &#8211; flagga s\u00e4tts till 1, och det sista fragmentet kommer att st\u00e4llas in som IPv4:s <strong>More Fragments (MF)\u00a0<\/strong> -f\u00e4lt.<\/p>\n<p>32-bitars <strong>identifieringsf\u00e4ltet<\/strong> \u00e4r detsamma som IPv4-f\u00e4ltet p\u00e5 16 bitar som inneh\u00e5ller ett unikt ID-nummer f\u00f6r kombinationen av k\u00e4lladresser och destinationsadresser. Protokollf\u00e4ltet \u00e4r inte tillg\u00e4ngligt i IPv6.<\/p>\n<hr \/>\n<h2>Nackdelarna med IP-fragmentering<\/h2>\n<p>Stacken av IP-protokoll anses ha en <strong>op\u00e5litlig mekanism<\/strong> p\u00e5 grund av vilken slutv\u00e4rdarna inte kan r\u00e4kna ut den maximala storleken p\u00e5 nyttolasten n\u00e4r de kommunicerar via en IPv4- och IPv6-v\u00e4rd.<\/p>\n<p>\u00c4ven om avsaknaden av en MTU-mekanism \u00f6ver n\u00e4tverket \u00e4r f\u00f6rst\u00e5elig eftersom IP-paketen tar olika v\u00e4gar, kan <strong>bristen p\u00e5 end-to-end-information<\/strong> leda till att mellanliggande routrar tar emot \u00f6verdimensionerade paket och inte kan vidarebefordra dem.<\/p>\n<p>IPv4-routrarna kan <strong>dela upp IP-paket i fragment under transitering,<\/strong> men samma funktion \u00e4r inte tillg\u00e4nglig i IPv6-routrar \u2013 d\u00e4r avs\u00e4ndaren m\u00e5ste utf\u00f6ra fragmenteringen.<\/p>\n<p>Fragmentering resulterar i en spik i <strong>overhead av lager-3.<\/strong> S\u00e5, till exempel, om slutv\u00e4rden tror att den kan anv\u00e4nda IP-paket p\u00e5 1500 byte, men st\u00e5r inf\u00f6r ett hopp i sin v\u00e4g av MTU-storlek 1472, s\u00e5 skulle IP-paketet delas upp i tv\u00e5 paket, vilket resulterar i en extra <strong>IPv6-rubrik med 40 byte och IPv4-huvud p\u00e5 20 byte.<\/strong><\/p>\n<p>IP-fragment l\u00e4gger en <strong>extra b\u00f6rda p\u00e5 det mottagande systemet<\/strong> eftersom det kr\u00e4vs f\u00f6r att \u00e5termontera fragmenten f\u00f6r att leverera dem till h\u00f6gre protokolllager. Denna aktivitet f\u00f6rv\u00e4rras n\u00e4r routern avslutar IP-trafiken.<\/p>\n<p>Om en router f\u00f6rs\u00f6ker s\u00e4tta ihop de fragmenterade paketen, skulle paketen misslyckas med att \u00e5termontera i h\u00e5rdvaran och minska plattformens prestanda drastiskt.<\/p>\n<hr \/>\n<h2>Vanliga fr\u00e5gor<\/h2>\n<p>IP-fragmentering \u00e4r avg\u00f6rande f\u00f6r \u00f6verf\u00f6ring av data eftersom varje n\u00e4tverk har olika storleksgr\u00e4nser f\u00f6r bearbetning av data. Denna gr\u00e4ns \u00e4r ocks\u00e5 k\u00e4nd som MTU (maximal transmission unit).<\/p>\n<p>Nej, routrar kan fragmentera IP-paket, men inte \u00e5termontera dem. Det \u00e4r m\u00e5lenhetens uppgift att \u00e5termontera dessa paket f\u00f6r anv\u00e4ndaren.<\/p>\n<p>Om enstaka eller flera fragment av ett datagram g\u00e5r f\u00f6rlorade, kasseras hela datagrammet efter timeoutperioden.<\/p>\n<hr \/>\n<h2>Slutsats<\/h2>\n<p>Detta avslutar v\u00e5r detaljerade guide om IP-fragmentering.<\/p>\n<p>F\u00f6r att ge dig en snabb \u00f6verblick, om data som skickas \u00f6ver ett n\u00e4tverk \u00e4r st\u00f6rre \u00e4n <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\">MTU-<\/a> storleken (Maximum Transmission Unit), d\u00e5 skulle data delas upp i flera fragment och skickas \u00f6ver till mottagaren.<\/p>\n<p>S\u00e5 snart IP-fragmenten n\u00e5r sin destination, skulle de \u00e5termonteras i r\u00e4tt ordning s\u00e5 att data kan vara anv\u00e4ndbar f\u00f6r anv\u00e4ndarna. Mekanismen f\u00f6r fragmentering \u00e4r olika mellan b\u00e5de IPv4- och IPv6-n\u00e4tverk, vars detaljer n\u00e4mns ovan.<\/p>\n<p>Om du har n\u00e5gra fr\u00e5gor om <a href=\"#10803\" title=\"IP-adresser\">IP-adresser<\/a> och fragmentering, v\u00e4nligen kontakta oss med dem i kommentarerna.<\/p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vill du veta vad IP-fragmentering \u00e4r? L\u00e4s v\u00e5r guide och l\u00e4r dig allt om IP-fragmentering, hur det fungerar och dess nackdelar.<\/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":[8563,8523,8593,8543,8492],"tags":[],"class_list":["post-291254","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allman","category-dataskydd","category-diverse","category-installningar","category-vpn-instruktioner"],"_links":{"self":[{"href":"https:\/\/vpn.inform.click\/sv\/wp-json\/wp\/v2\/posts\/291254","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpn.inform.click\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vpn.inform.click\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vpn.inform.click\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vpn.inform.click\/sv\/wp-json\/wp\/v2\/comments?post=291254"}],"version-history":[{"count":0,"href":"https:\/\/vpn.inform.click\/sv\/wp-json\/wp\/v2\/posts\/291254\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpn.inform.click\/sv\/wp-json\/wp\/v2\/media\/321742"}],"wp:attachment":[{"href":"https:\/\/vpn.inform.click\/sv\/wp-json\/wp\/v2\/media?parent=291254"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vpn.inform.click\/sv\/wp-json\/wp\/v2\/categories?post=291254"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vpn.inform.click\/sv\/wp-json\/wp\/v2\/tags?post=291254"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}