සියලුම ICMP අවහිර කිරීම ක්රියාකාරී VPN මාර්ගයක් කඩන්නේ ඇයි
ප්රමාණය පිළිබඳ ප්රතිපෝෂණ පණිවිඩ ping පිළිතුරු නොවේ. ඒවා කිසිදා නොපැමිණෙන විට, කුඩා පැකට් ගමන් කරයි, විශාල ඒවා අතුරුදහන් වේ, සහ ටනලය සෙලවෙන ලෙස පෙනේ.
සත්යාපනය පසුකර, ping එකක් ගෙනගොස්, පසුව පළමු විශාල මාරුවේදී නතර වන ටනලය කැඩුණු VPN එකක ලක්ෂණයක් නොව, නැතිවූ ICMP පණිවිඩයක සම්භාව්ය ලක්ෂණයකි. යවන්නාට පැකට් එක ඉතා විශාල බව කිසිදා දැනගන්නේ නැත, එම ප්රමාණයම නැවත උත්සාහ කරයි, යෙදුම රැඳී සිටී. මෙය නිවැරදි කිරීම firewall ප්රතිපත්ති තීරණයකි, සේවාදායකය නැවත ස්ථාපනය කිරීමක් නොවේ. අනුපිළිවෙල වැදගත් ය: ප්රමාණ සීමාව කොහේදැයි මනින්න, පසුව වාර්තාව ගිලගත් නියමය පටු කරන්න.
මෙම මාර්ගයේ ICMP ඇත්තටම ගෙනයන්නේ කුමක්ද
IPv4 මාර්ග MTU සොයාගැනීම don't-fragment බිටුව සහිත පැකට් එකක් ඉදිරියට යැවීමට නොහැකි වූ බව රවුටරයක් වාර්තා කිරීම මත රඳා පවතී. එම වාර්තාව ICMP Fragmentation Needed පණිවිඩයකි, එය නොමැතිව යවන්නාට තම කොටසේ ප්රමාණය අඩු කිරීමට හේතුවක් නැත. IPv6 වඩාත් දැඩි ය: රවුටර ගමන් මාර්ගයේ කැබලි නොකරයි, එබැවින් ICMPv6 Packet Too Big පණිවිඩය යවන්නා කුඩා කරන එකම සංඥාවයි.
පණිවිඩ දෙකම පාලන තලයේ ප්රතිපෝෂණ වන අතර කිසිවක් රෝග විනිශ්චය ප්රතිධ්වනියක් නොවේ. ping අවහිර කරන ප්රතිපත්තියක් සහ සියලු ICMP අවහිර කරන ප්රතිපත්තියක් නීති ලැයිස්තුවක සමාන ලෙස පෙනුනද ජාලයේ බෙහෙවින් වෙනස් ලෙස හැසිරේ. දෙවැන්න නිවැරදිව මනින ලද ටනලයක් දාමයේ කුඩාම සබැඳියට වඩා විශාල ඕනෑම දෙයකට එක්-මාර්ග මාර්ගයක් බවට පත් කළ හැකිය.
සමහර ප්රවාහන තම සොයාගැනීම පරීක්ෂා පැකට් සමඟ ක්රියාත්මක කරයි, RFC 4821 විස්තර කරන පරිදි, ඒවා මෙම ප්රතිපෝෂණය මත අඩුවෙන් රඳා පවතී. මෙය ඔබ ධාවනය කරන ප්රවාහනය පරීක්ෂා කිරීමට තර්කයක් මිස සෑම ටනලයක්ම ප්රතිශක්තිකරණය වී ඇතැයි උපකල්පනය කිරීමට නොවේ.
| පණිවිඩය | මාර්ගයේ අරමුණ | අවහිර කළහොත් |
|---|---|---|
| ICMPv4 වර්ගය 3 කේතය 4 | ඊළඟ සබැඳියට පැකට් එක විශාල වැඩිය | යවන්නා නැවත නැවත උත්සාහ කර නතර වේ |
| ICMPv6 වර්ගය 2 | Packet Too Big, IPv6 සමානය | එම නැවතුම, කැබලි කිරීමේ විකල්පයක් නොමැතිව |
| ICMP වර්ගය 11 | කාලය ඉකුත් විය, traceroute භාවිතා කරයි | රෝග විනිශ්චය hop අහිමි වේ, ගමනාගමනය තවමත් ගලා යයි |
| ICMP ප්රතිධ්වනි ඉල්ලීම සහ පිළිතුර | ළඟාවීමේ පරීක්ෂණය | ping අසාර්ථක වේ, මාර්ගය හොඳ විය හැකිය |
අසාර්ථකත්වය ප්රමාණය මත රඳා පවතී
අසාර්ථකත්වය පැකට් ප්රමාණය සමඟ සම්බන්ධදැයි අසන්න. පිවිසුම් පිටුව, DNS විමසුම සහ කෙටි API ඇමතුම සාර්ථක වේ, නමුත් ගොනු උඩුගත කිරීම, විශාල පිළිතුරක් හෝ රූප බාගැනීම නතර වේ. මෙම රටාව කෙළවර දෙක අතර කොහේදෝ ප්රමාණ සීමාවක් දෙසට යොමු කරයි, සත්යාපනය හෝ මාර්ගගත කිරීම දෙසට නොවේ. සාර්ථක කුඩා ping එකක් එම සීමාව කොහේද යන්න ගැන පාහේ කිසිවක් නොකියයි.
ටනලය තුළ සැලකිය යුතු ස්ථර දෙකක් ඇත: පේලෝඩ් පැකට්ටුව සහ බාහිර එන්කැප්සුලේටඩ් පැකට්ටුව. ටනලය උපකල්පනය කරන ප්රමාණයට වඩා බාහිර මාර්ගය කුඩා වන විට අභ්යන්තර යවන්නා නිවැරදිව හැසිරිය හැකිය, එබැවින් ටනලයේම MTU සැකසුම සහ ඊට පහළ භෞතික සබැඳිය දෙකම වැදගත් වේ.
නීති සංස්කරණය කිරීමට පෙර මනින්න
don't-fragment බිටුව සහ ඔබ තෝරාගන්නා පේලෝඩ් ප්රමාණය සමඟ පරීක්ෂා කරන්න, අසාර්ථක සේවාදායකයාගේ සිට ආරක්ෂිත ලිපිනයක් දෙසට:
ping -M do -s 1472 10.20.5.7
ping -M do -s 1300 10.20.5.7
1472 බයිට් පේලෝඩ් සහ 28 බයිට් ශීර්ෂක එකතුව 1500 බයිට් පැකට්ටුවක් සාදයි. විශාල පරීක්ෂාව කැබලි කිරීමේ දෝෂයකින් අසාර්ථක වී කුඩා එක ගමන් කළහොත්, ඔබ සීමාව සොයාගෙන ඇත; ටනලයේ අතිරේක බර සඳහා සකස් කර ක්රියාකාරී ප්රමාණය ස්ථාවර වන තෙක් නැවත කරන්න.
පසුව පරතරය වාර්තාවම බව තහවුරු කරන්න. පරීක්ෂාව නිශ්ශබ්දව අසාර්ථක වුවහොත්, දෝෂයක් සහ පිළිතුරක් නොමැතිව, පණිවිඩය ලැබීම වෙනුවට ඉවත දමනු ලැබේ, සහ සැකකරු නියමයයි.
නියමය පටු කරන්න, පසුව කාර්යය නැවත පරීක්ෂා කරන්න
නිවැරදි කිරීම නිශ්චිත පාලන පණිවිඩවලට අවසර දිය යුතුය, මුළු ප්රොටෝකෝලයට නොවේ. iptables සත්කාරකයක ස්වරූපය වර්ග-නිශ්චිත අවසරයකි; ඔබේ වේදිකාවේ firewall කළමනාකරණය කරන දෙයට වාක්ය ව්යුහය අනුව සකසන්න:
iptables -I INPUT -p icmp --icmp-type fragmentation-needed -j ACCEPT
ip6tables -I INPUT -p icmpv6 --icmpv6-type packet-too-big -j ACCEPT
එය දේශීය ප්රතිපත්තිය නම් ප්රතිධ්වනි පිළිතුරු අවහිර කර තබන්න, මන්ද මාර්ගයට ඒවා අවශ්ය නැත. පසුව මුලින් අසාර්ථක වූ මාරුව නව සම්බන්ධතාවයකින් නැවත පරීක්ෂා කර, නියමයේ ගණකයන් පණිවිඩ පැමිණෙන බව පෙන්වන බව තහවුරු කරන්න.
පණිවිඩවලට අවසර දුන් පසුවත් විශාල මාරුව නතර වන්නේ නම්, ඉතිරි සීමාව වෙනත් තැනක ය: ඉතා ඉහළින් සකසන ලද ටනල MTU, පැකට් නැවත ලියන ප්රොක්සියක්, හෝ වාර්තා කිරීම වෙනුවට ඉවත දමන මැදි පෙට්ටියක්. ICMP නියමය අවශ්ය විය, ප්රමාණවත් නොවීය.