එක් සේවාලාභී ජාලයකට ළඟා වීමට දෙවන VPN සේවාලාභියා ස්ථාපනය කිරීම මෙය ආරම්භ වන සුපුරුදු ක්‍රමයයි, සහ සේවාලාභීන් දෙදෙනාම සාර්ථක බව වාර්තා කරන අතරේ පළමු උමඟ අඳුරු වේ. සෑම සේවාලාභියෙක්ම පෙරනිමි මාර්ගයක් ස්ථාපනය කළේය, දෙවැන්න වඩාත් නිශ්චිත විය, දැන් කර්නලය පළමු උමඟේම බාහිර සම්බන්ධතාව හැර සියල්ලට එය අනුගමනය කරයි. කිසිවක් කඩා වැටුණේ නැති අතර කිසිදු පැතිකඩක් වැරදි නොවේ. එක් මාර්ගයක් තවත් එකක් ප්‍රතිස්ථාපනය කළේය, විසඳුම වන්නේ කුමන උමඟට පෙරනිමිය හිමි විය යුතුද යන්න තීරණය කිරීමයි.

රෝග ලක්ෂණය: දෙවන සේවාලාභියා නිහඬව ජය ගනී

OpenVPN: redirect-gateway def1 විකල්පය 0.0.0.0/0 නැවත ලියන්නේ නැත. එය 0.0.0.0/1 සහ 128.0.0.0/1 එකතු කරයි: දෙකම එක්ව සෑම IPv4 ලිපිනයක්ම ආවරණය කරයි, සහ සෑම උපසර්ගයක්ම දිගින් සාමාන්‍ය පෙරනිමිය පරාජය කරයි. මුල් පෙරනිමිය වගුවේ රැඳී සාමාන්‍ය ගමනාගමනයට භාවිත නොවී යයි, VPN සේවාදායකයට යන සත්කාරක මාර්ගය උමඟට එහි බාහිර පැකට් අල්ලා ගැනීම වළක්වයි. සේවාලාභීන් දෙදෙනාම මෙය කරයි, දෙවැන්නා තම යුගලය පසුව ස්ථාපනය කරයි.

එබැවින් පළමු උමඟ විසන්ධි නොවී මළ ලෙස පෙනේ. එහි අතුරුමුහුණත ඉහළයි, පාලන නාලිකාව ජීවමානය, කිසිදු යෙදුම් ගමනාගමනයක් එයට නොපැමිණේ. ප්‍රතිවිරුද්ධ පැමිණිල්ලට ද එම අස්ථානගත push එකයි: සම්බන්ධ වී කිසිවක් නොයවන දුරකථනය සාමාන්‍යයෙන් කිසිදා redirect-gateway නොප්‍රකාශ කළ සේවාදායකයක් සමඟ කථා කරයි, එබැවින් උපාංගය තම පෙරනිමිය රඳවා තබා ගැලීමට පමණක් ළඟා වේ.

දෙවන සේවාලාභියා සම්බන්ධ වීමට පෙර සහ පසු මාර්ග ස්නැප්ෂොටයක් ගන්න. වගුවේ දිස්වන අර්ධ මාර්ග දෙක මුළු වෙනසයි, ඒවා පැමිණිලි දෙකම පැහැදිලි කරයි. රෝග ලක්ෂණය දිස්වීමට වගුවේ වෙනත් කිසිවක් චලනය විය යුතු නැත. එබැවින් දෙවන සේවාලාභියා ඉවත් කිරීම පළමුවැන්නා වහාම ප්‍රතිස්ථාපනය කරයි.

සැබවින්ම ජය ගන්නේ කුමන උමඟද කියවන්න

සේවාලාභීන් ආරම්භ කළ අනුපිළිවෙලින් හෝ තැටියේ අයිකනයෙන් ජයග්‍රාහකයා අනුමාන නොකරන්න. පෞද්ගලික ජාල දෙකෙන් පිටත ගමනාන්තයකට කර්නලය කුමන මාර්ගය භාවිත කරයිදැයි අසන්න, නැවත එන අතුරුමුහුණත කියවන්න.

ip route show
ip route get 198.51.100.24
route print -4
Find-NetRoute -RemoteIPAddress 198.51.100.24

පළමු දෙක Linux පිළිතුරයි, අවසන් දෙක Windows සමතුල්‍යයයි. උමඟ දෙකම ඉහළ තිබියදී ඒවා ධාවනය කරන්න, පසුව එකක් විසන්ධි කර නැවත ධාවනය කරන්න. ප්‍රතිදාන දෙක අතර වෙනස විසඳුමක් තෝරා ගැනීමට පෙර අවශ්‍ය කරුණයි, එය ඕනෑම සේවාලාභියෙකුගේ ලොගය කියවීමට වඩා අඩු කාලයක් ගනී.

අතුරුමුහුණතේ නම සහ ගැළපුණු උපසර්ගය සමඟ ප්‍රතිඵලය සටහන් කරන්න. දෙවන VPN පළමුවැන්නා කැඩුවා යැයි කියන ටිකට්පත රෝග ලක්ෂණයේ විස්තරයකි, කිසිවෙකුට ක්‍රියා කළ හැකි මාර්ග ප්‍රකාශයක් නොවේ. සොයා බැලීම එය ඊළඟ ඉංජිනේරුවාට එක් විධානයකින් පුනරුත්පාදනය කළ හැකි කරුණක් බවට පත් කරයි.

Windows: එක් පැතිකඩකට පෙරනිමිය හිමි වීම වළක්වන්න

Windows ගබඩා කළ පැතිකඩ රඳවා ගනී, සහ ගොඩනැගූ සේවාලාභියා එකක් තවත් එකක් මත රඳා පැවතීමට ඉඩ දෙයි, එවිට දෙවැන්න ඇමතූ විට පළමුවැන්නා ස්වයංක්‍රීයව ඉහළ එයි. අවසන් වරට සම්බන්ධ වූ පැතිකඩ පෙරනිමිය රඳවා ගැනීමට නැඹුරු වේ, එබැවින් ප්‍රායෝගික හිමිකරු පළමුවැන්නා නොව අවසන් ඇමතුමයි. සෑම පැතිකඩකට එහිම push මාර්ග දෙන්න, පෙරනිමිය නොතිබිය යුතු එකට split tunneling සක්‍රීය කරන්න.

Set-VpnConnection -Name "Contoso" -SplitTunneling $true
rasdial Contoso

Split tunneling මෙය වෙනස් කරයි: වගුවට යන්නේ සේවාදායකය push කරන උපසර්ග පමණි, එය පෙරනිමිය පළමු උමඟ සමඟ තබයි. සේවාදායක දෙකම පෙරනිමි මාර්ගයක් push කරන්නේ නම් සැලසුම තවමත් අසාර්ථක වේ, එවිට අවසන් සම්බන්ධතාව ජය ගන්නා අතර සේවාලාභී පසෙහි කිසිදු සැකසුමක් එය වෙනස් නොකරයි. සේවාදායක පසෙහි push නිවැරදි කරන්න හෝ එක් හිමිකරුවෙකු පිළිගන්න.

යෙදුම් මගින් ආරම්භ වන පැතිකඩ වෙනත් විශේෂාංගයක් වන අතර දැනගැනීම වටී: Windows පැතිකඩයක් නම් කළ ක්‍රියාත්මක කළ හැකි ගොනුවක් ආරම්භ වන විට ආරම්භ විය හැක, ගමනාගමන පෙරහන් එය ගෙන යන දේ තීරණය කරයි. මෙය firewall රීතියක් නොව පැතිකඩ සැකසුමකි, එය පෙරනිමි මාර්ග ගැටුමට වඩා වෙනස් ගැටලුවක් විසඳයි.

Linux: දෙවන උමඟ ප්‍රධාන වගුවෙන් පිටත තබන්න

එක් යන්ත්‍රයක openvpn --config අවස්ථා දෙකක් ධාවනය කිරීමෙන් සේවාලාභීන් දෙදෙනාම එකම වගුවට යයි, විකල්ප තුනක් වැඩිවන හුදකලාව සමඟ ඒවා වෙන් කරයි. ලාබාලම වන්නේ දෙවන සේවාලාභියාට වගුව කිසිසේත් සංස්කරණය කිරීමට නොදීමයි: පැහැදිලි මාර්ග සමඟ route-nopull, හෝ ඔබ අදහස් කළ දේ පමණක් ස්ථාපනය කරන route-up ස්ක්‍රිප්ටයක්. එවිට දෙවන උමඟ ඔබ නම් කරන උපසර්ග හරියටම ගෙන යයි, වෙනත් කිසිවක් නොවේ. එවිට කුමන උපසර්ග කොහේ යයිද යන්න පසුව සොයා ගැනීම වෙනුවට ඔබම තීරණය කරයි.

ප්‍රතිපත්ති මාර්ගකරණය මැද විකල්පයයි. එක් මූලාශ්‍ර ලිපිනයක් හෝ firewall ලකුණක් සඳහා රීතියක් වෙනම වගුවක් තෝරයි, එම වගුව දෙවන උමඟේ මාර්ග ගෙන යයි. මෙහි උගුල වන්නේ ප්‍රතිලෝම මාර්ග පෙරහනයි, මන්ද වගුව තෝරන අතුරුමුහුණතට වඩා වෙනස් එකකට පැමිණෙන පිළිතුරක් ඉවත දමන බැවින්, උමඟ කැඩී ඇතැයි නිගමනය කිරීමට පෙර rp_filter සැකසුම පරීක්ෂා කරන්න.

ip rule add from 10.44.7.0/24 table 100
ip route add default dev tun1 table 100
sysctl net.ipv4.conf.all.rp_filter

ජාල නාම අවකාශ බරම සහ පිරිසිදුම විකල්පයයි. දෙවන සේවාලාභියා ip netns තුළ ආරම්භ කරන්න, ඔහුට veth යුගලයක් දෙන්න, භාවිත කිරීමට එම නාම අවකාශයට ඇතුළු වන්න. කිසිදු බාධාවක් නැති වන්නේ සෑම නාම අවකාශයක්ම එකක් බෙදා ගැනීම වෙනුවට තමන්ගේම වගු රඳවා ගන්නා බැවිනි, උමඟ දෙකම සති ගණනක් ඉහළ තබා ගත යුතු විට එම අමතර සැකසුම වටී.

යෙදුම අනුව, සහ දාම එකක් වෙනම ගැටලුවක් ලෙස

සමහර විට එක් වැඩසටහනක් පමණක් දෙවන උමඟ භාවිත කළ යුතුය. Linux හි පරිශීලක, cgroup හෝ වරාය අනුව ප්‍රතිපත්ති මාර්ගකරණය එම ප්‍රතිඵලයට ලඟා වේ, එක් ගමනාන්තයක් පෙරනිමිය ස්පර්ශ නොකර අතුරුමුහුණතකට අමුණා ගත හැකිය. තම සොකට් එකක් අතුරුමුහුණතකට අමුණන යෙදුම මාර්ග වගුවෙන් කිසිසේත් අසන්නේ නැත, එබැවින් දියත් කරන කර්තෘවරයා තම සැකසුම් තුළින් ලිපිනයක් තෝරා ගන්නා තෙක් භෞතික අනුවර්තකය භාවිත කරමින් සිටිය හැකිය.

දාම කිරීම උමඟ දෙකක් පැත්තෙන් පැත්තට ධාවනය කිරීමට වඩා වෙනස් ක්‍රියාවකි. A ය B මතින් දාම කිරීම යනු ඇතුළත සේවාදායකයේ ලිපිනය බාහිර උමඟ තුළින් ළඟා විය හැකි විය යුතුය. බාහිර සේවාලාභියා ඇතුළත සේවාලාභියාගේ සංකේතනය කළ පැකට් ලීක් ලෙස නොසැලකිය යුතුය. සත්‍ය යන්ත්‍රයක් තුළ එක් සේවාලාභියෙක් රළු නමුත් විශ්වාසදායක අනුවාදයයි; දෙදෙනාම එක් සත්කාරකයක් මත තැබීමට ඉහත මාර්ග කටයුතු සහ ඇතුළත උමඟට කිසිදා නොපිවිසෙන බාහිර මාර්ගයක් අවශ්‍ය වේ.

පෙරනිමියේ හිමිකරු, එක් එක් උමඟ ගෙන යන උපසර්ග ලැයිස්තුව සහ DNS මාර්ගය ලියන්න. එම කරුණු තුන ඊළඟ සිද්ධිය පරීක්ෂණය වෙනුවට සොයා බැලීමක් බවට පත් කරයි.

අදාළ ලිපි