ජාල නාම අවකාශයේ WireGuard: සොකට් පසුපසට ඉතිරි වූයේ ඇයි
අතුරුමුහුණත ගෙන යාමෙන් සංකේතනය කළ UDP සොකට් ගෙන යන්නේ නැත; එය උපාංගය සාදූ නාම අවකාශයේම රැඳේ. එය ඉලක්කයේම සාදන්න.
ඔබට අවශ්ය වූ නාම අවකාශයේ අතුරුමුහුණත ලැයිස්තුගත කර ඇත, යෙදුම එයට බැඳී ඇත, එහෙත් උමං රහස්ය ගමනාගමනය කිසිදා නොපෙනේ. එක් නාම අවකාශයක සාදා තවත් එකකට ගෙන ගිය Linux කර්නලයේ WireGuard උපාංගයක පහසුව මෙයයි: අතුරුමුහුණත ගියේය, නමුත් එහි සංකේතනය කළ UDP සොකට් ගියේ නැත. ඇතුළත ගමනාගමනයට අර්ථයක් ලැබෙන්නට පෙර දෙකම නිවැරදි තැනක තිබිය යුතුය. එකක් නොව දෙකක් සන්දර්භයන් දෙස බලිය යුතු බව දැනගත් පසු පරීක්ෂාව ඉක්මනි.
රෝග ලක්ෂණය: නිවැරදි නාම අවකාශය, නමුත් පැකට් නැත
නාම අවකාශය තුළ උමං සුවපත් ලෙස පෙනේ. උපාංගය ඇත, ලිපින පවරා ඇත, සහ සහකරු වින්යාසය ඇත. පිටත, ඔබ නිරීක්ෂණය කළ අතුරුමුහුණතේ අපේක්ෂිත UDP හුවමාරුව කිසිදා නොපෙනේ, සහ අනෙක් පැත්ත අත්සන් කිරීමක් නොවූ බව වාර්තා කරයි.
හේතුව නම් යෙදුමේ ඇතුළත පැකට් ගෙන ගිය උපාංගයට ළඟා වන අතර, උපාංගය ඒවා වෙනත් ජාල සන්දර්භයකට අයත් සොකට් හරහා යැවීමට උත්සාහ කිරීමයි. එය භාවිතා කරන යටින් පවතින මාර්ගය සහ ඒ සඳහා අදාළ වන සැම ෆයර්වොල් නියමයක්ම උපාංගය සාදූ නාම අවකාශයේ ඒවාය.
මෙය ගෙන යාමේ දෝෂයක් නොවේ, සහකරුගේ වැරදි වින්යාසයක් ද නොවේ. කර්නල ක්රියාත්මක කිරීම එසේ කරයි, සහ WireGuard සඳහා නාම අවකාශ ලේඛනය සාදීමේ නියමය සෘජුවම විස්තර කරයි.
සොකට් එකට උපත ලද ස්ථානයක් ඇත්තේ ඇයි
WireGuard උපාංගයකට එහි සංකේතනය කළ ප්රවාහනය සඳහා එක් UDP සොකට් එකක් ඇති අතර, එම සොකට් එක උපාංගය සාදන නාම අවකාශයේම විවෘත වේ. සබැඳි විධානයකින් අතුරුමුහුණත ගෙන යාමෙන් පෙනෙන උපාංගය ගෙන යයි, නමුත් ප්රවාහනය ආරම්භ වූ තැනම තබයි. එවිට වස්තු දෙකට වෙනස් අයිතිකරුවන් ඇත.
ප්රතිවිපාකය මඟ හැරීම පහසුය, මන්ද කොටස් දෙක වෙනස් තැන්වල පරීක්ෂා කෙරේ. ඇතුළත මාර්ගය යෙදුම ධාවනය වන නාම අවකාශයේ තීරණය වන අතර, පිටත මාර්ගය සොකට් එක ඇති තැන තීරණය වේ. ඉන් එකක් පමණක් පරීක්ෂා කිරීමෙන් විශ්වාසදායක නමුත් වැරදි නිගමනයක් ලැබේ. දෙකම පරීක්ෂා කිරීමෙන් සාමාන්යයෙන් එක් වටයකින් විමර්ශනය අවසන් වේ.
සොකට් අවශ්ය තැනම එය සාදන්න
විසඳුම නම් උපාංගය පිටත සාදා ගෙන යාම වෙනුවට ඉලක්ක නාම අවකාශය තුළම සැදීමයි. අනුමත නාම අවකාශයක් දැනටමත් ඇති අතර නාමය භාවිතයේ නැති බව උපකල්පනය කරමින්:
ip netns exec vpn-apps ip link add wg-demo type wireguard
ip netns exec vpn-apps wg show
දැන් අතුරුමුහුණත සහ එහි සොකට් දෙකම එම සන්දර්භයට අයත් බැවින්, යටින් පවතින මාර්ගය සහ අදාළ පෙරහන් නියම එහි වින්යාසගත කර ඇති ඒවාය. නිර්මාණයට පැහැදිලි පැත්ත වෙනත් තැනක අවශ්ය නම්, පළමුව පදනම් අතුරුමුහුණත නාම අවකාශයට දමා පසුව උමං සාදන්න. අනුපිළිවෙල නිර්මාණයේ කොටසකි, ක්රියාත්මක කිරීමේ විස්තරයක් නොවේ.
මේවා ජාල පරිපාලන විධාන ලෙස සලකන්න, වට්ටෝරුවක් ලෙස නොවේ. ඒවා උපාංගයක් සාදා තත්ත්වය පෙන්වයි; යතුරු, සහකරුවන්, ලිපින සහ මාර්ග තවමත් අනුමත වින්යාසයකින් පැමිණිය යුතු අතර, පවතින නිෂ්පාදන අතුරුමුහුණතක් කිසිදා උදාහරණයක ප්රතිස්ථාපනය නොකළ යුතුය.
මාර්ගයේ දෙපැත්තම කියවන්න
උපාංගය නිවැරදි තැනට පැමිණි පසු, තීරණ දෙක වෙන වෙනම තහවුරු කරන්න. යෙදුමේ සන්දර්භයෙන් ඇතුළත සෙවීමෙන් ආරම්භ කර, පසුව සොකට් හිමිකාරීත්වය ඇති සන්දර්භයෙන් පිටත මාර්ගය පරීක්ෂා කරන්න:
ip netns exec vpn-apps ip route get 10.30.0.9
ip netns exec vpn-apps wg show
tcpdump -ni any udp port 51820
ඇතුළත සෙවීම උමං හරහා විසඳේ නම් සහ පිටත ග්රහණය සංකේතනය කළ හුවමාරුව පෙන්වයි නම්, කොටස් දෙකම එකඟ වේ. ග්රහණය හිස් නම්, සොකට් තවමත් වෙනත් තැනක ඇත, නැතහොත් එහි නාම අවකාශයේ යටින් පවතින මාර්ගය අවසන් ලක්ෂ්යයට ලඟා නොවේ.
තවත් පරීක්ෂාවක් වාර්තාවට අයත් වේ: නැවත ආරම්භ කිරීමෙන් පසු උපාංගය සාදන ආකාරය. වෙනත් සැදීමේ සන්දර්භයක් සමඟ අතුරුමුහුණත නැවත සාදන කළමනාකරු සොකට් එකේ උපන් ස්ථානය වෙනස් කරයි. එක් වරක් සාර්ථක වූ අතින් ගෙන යාමක් කළමනාකරණය කරන මාර්ගය පිළිබඳ සාක්ෂියක් නොවේ.