VPN තටාක දෙකක් සඳහා මූලාශ්ර මාර්ගගත කිරීම: ඔබේ නියමය මඟ හරින්නේ කුමක්ද
from ආකාරයේ නියමය SNAT නැවත ලිවීමට පෙර කුලියා ලිපිනය සමඟ ගැලපේ, සහ ගේට්වේයෙන් කරන පරීක්ෂණය එකකටවත් ගැලපෙන්නේ නැත. සෑම තටාකයකටම සොයාබැලීම ධාවනය කර ඒ වෙනුවට ප්රමුඛතා කියවන්න.
කුලියන් දෙපිරිසක්, එක් ගේට්වේයක්, සහ සැලසුම සරල බවක් පෙනේ: එක් නියමයක් පළමු තටාකය ඉක්මන් උඩු සබැඳියෙන් යවයි, තවත් එකක් දෙවන තටාකය හවුල්කරු උමඟකින් යවයි. පසුව නියම ක්රියාත්මක වේ, එසේ වුවද දෙවන තටාකය තවමත් පෙරනිමි මාර්ගයෙන් පිටවේ. නියමය කැඩී නැත. සොයාබැලීමේ මොහොතේ ලේඛකයා බලාපොරොත්තු වූ දෙය පැකට්ටුවේ මූලාශ්රය නොවේ, මන්ද පරිවර්තනය සහ සොයාබැලීම එකම පැකට්ටුවේ ගමනේ වෙනස් ස්ථානවල සිදු වන අතර, අනුපිළිවෙල බොහෝ දෙනා අඳින මානසික රූප සටහනට ප්රතිවිරුද්ධය.
සොයාබැලීම මූලාශ්රය නැවත ලිවීමට පෙර සිදු වේ
VPN සේවාදායකයකුගෙන් යැවෙන පැකට්ටුව සඳහා කර්නලය නිශ්චිත අනුපිළිවෙලක් ක්රියාත්මක කරයි. එය උමඟ අතුරුමුහුණතට පැමිණේ, conntrack සහ DNAT ඇති prerouting හරහා යයි, පසුව මාර්ගගත කිරීමේ තීරණය ගනු ලැබේ, පසුව යැවීම, පසුව SNAT අවසානයේ යෙදෙන postrouting. from ආකාරයේ නියමයක් එම මාර්ගගත තීරණය අතරතුර බලනු ලැබේ, එනම් එය කුලියාගේ මුල් ලිපිනය දකී, පරිවර්තිත ලිපිනය නොවේ.
එබැවින් masquerade නියමයක් එකතු කිරීම පිටවන ප්රවාහයට කුමන ප්රතිපත්තිය ගැලපේ ද යන්න වෙනස් නොකරයි. වෙනස් වන්නේ දුර කෙළවර දකින දෙය සහ එබැවින් පවතින ආපසු මාර්ගය කුමක්ද යන්නයි. මේවා වෙනස් ප්රතිවිපාක දෙකක් වන අතර, වෙනස්කම් සමාලෝචන නිතරම ඒවා මුසු කරයි. ඒවා වෙන් කරන්න, නිර්මාණය සාමාන්යයෙන් විනාඩියකින් පැහැදිලි වේ.
පිළිතුරු දිශාවේදී පරිවර්තිත ලිපිනය නියම තුළ දිස් වේ. ගේට්වේ වෙත ආපසු එන පැකට්ටුව පරිවර්තිත ලිපිනයට යොමු කර ඇත, සහ ගමනාන්තය හෝ එය පැමිණි අතුරුමුහුණත මත පදනම් වූ ප්රතිපත්ති නියම තිබේ නම්, ඔබ ගැලපෙන අගය එයයි. එකම සම්බන්ධතාවය, සෑම දිශාවකම සත්යයේ වෙනස් මූලාශ්රය.
| Stage | Source the kernel sees | What it means for your rule |
|---|---|---|
| Prerouting | Client address, 172.31.7.42 | Where marks and DNAT are applied |
| Routing decision | Still 172.31.7.42 | This is where from rules match |
| Postrouting | Becomes 198.51.100.9 | What the far end and its return route see |
එබැවින් වෙනස් මූලාශ්ර ඇති තටාක දෙකකට සැබවින්ම වෙනස් වගු අවශ්ය වේ, සහ නිර්මාණය නිවැරදියි. ඉහත වගුව බැහැර කරන්නේ දුර අඩවියට ලැබුණු දෙය බලා නියමය අනුමාන කිරීමේ කෙටි මාර්ගයයි.
ගේට්වේයෙන් කරන පරීක්ෂණය තටාකයේ පරීක්ෂණය නොවේ
ගේට්වේය විසින්ම ජනනය කරන රථවාහන කිසිවිටෙක prerouting හරහා නොයයි, මන්ද එය කිසිදු අතුරුමුහුණතකට පැමිණ නැත. එය පිටවන මාර්ගයේ මාර්ගගත වේ, මූලාශ්රය ලෙස ගේට්වේයේම ලිපිනය, සහ කුලියා පරාසය මත පදනම් වූ from නියමය ගැලපෙන්නේ නැත. මෙම ක්ෂේත්රයේ සෑම ටිකට්පතක්ම කියන පෙට්ටියෙන් වැඩ කරයි නමුත් කුලියාගෙන් නොවේ යන කරුණ එම කරුණේම පුනරුක්තියකි.
කුලියා අනුමාන කිරීම වෙනුවට අනුකරණය කරන්න. මාර්ගගත සොයාබැලීම සෘජුවම අසන්න පුළුවන්, මූලාශ්රයක් සහ ඇතුළු වන අතුරුමුහුණතක් දී:
ip route get 198.51.100.9 from 172.31.7.42 iif tun0
ip route get 198.51.100.9 from 172.31.8.42 iif tun0
ip route show table 201
සෑම තටාකයකටම එක් වරක් ධාවනය කරන්න. විධාන දෙකම එකම අතුරුමුහුණත ලබා දෙන්නේ නම්, නියම තටාක වෙන් නොකරයි, සහ හේතුව එක්කෝ නැති නියමයක් හෝ දෙකටම ගැලපෙන ඉහළ ප්රමුඛතාවක් ඇති නියමයක් විය හැක. ඒවා වෙනස් අතුරුමුහුණත් ලබා දෙන්නේ නම් නමුත් කුලියා තවමත් අසාර්ථක වන්නේ නම්, දෝෂය සොයාබැලීමෙන් පසුවය, එබැවින් නියම බැලීම නවත්වන්න පුළුවන්.
ප්රමුඛතාව, ගොනුවේ ස්ථානය නොවේ
නියම ප්රමුඛතාවේ ආරෝහණ අනුපිළිවෙලින් ඇගයේ, සහ වැදගත් වන්නේ අංකයයි, ඔබ ටයිප් කළ අනුපිළිවෙල නොවේ. local වගුව ප්රමුඛතාව 0 ට, main වගුව 32766 ට සහ පෙරනිමි නියමය 32767 ට ඇත, එබැවින් පෙරනිමි ප්රමුඛතාව සමඟ එකතු කළ නියමය ලැයිස්තුවේ අවසානයට ආසන්නව වැටී සියල්ලටම පාහේ පරාජය වේ.
ip rule show
ip rule add from 172.31.8.0/24 lookup 201 priority 1000
ip -4 route show table 201
පැහැදිලි ප්රමුඛතාවක් අභිප්රායිත අනුපිළිවෙල ගොනුවේ සහ සමාලෝචනයේ දෘශ්ය කරයි. එය පසුව එකතු කිරීමක් පවත්නා නියමයක් ඉදිරියට නිශ්ශබ්දව පැනීම වළක්වයි, එය අසම්බන්ධ වෙනසකින් පසු ක්රියාත්මක වූ ප්රතිපත්තියක් නතර වීමට බොහෝමයක් හේතුවයි.
අසම්පූර්ණ වගුවක් වෙත යොමු වන ගැලපෙන නියමය අනෙක් උගුලයි. වගුව 201 හි පෙරනිමි මාර්ගයක් ඇති නමුත් ගමනාන්තයට මාර්ගයක් නැත්නම්, පැකට්ටුව ඉවත දමනු ලැබේ හෝ වැරදි තැනකට යවනු ලැබේ, සහ නියමය හුදකලාව පූර්ණ නිවැරදි ලෙස පෙනේ. නියමය නොව, වගුව කියවන්න. නියමය දර්ශකයකි, සහ හිස් වගුව කිසිවක් නොවන දිශාවට දර්ශකයකි.
ආපසු මාර්ගය තවමත් තිබිය යුතුය
මූලාශ්ර ප්රතිපත්තිය පිටවීමක් තෝරයි. එය ආපසු මාර්ගයක් නිර්මාණය නොකරයි. දෙවන තටාකය හවුල්කරු උමඟකින් පිටවන්නේ නම්, හවුල්කරු 172.31.8.0/24 වෙත ළඟා වන ආකාරය දැනගත යුතුය, ගේට්වේ වෙත ආපසු මාර්ගයකින් හෝ දැනටමත් දන්නා පරිවර්තිත ලිපින ලබා ගනිමින්.
ඒවා අතර තේරීම දෘශ්ය ප්රතිවිපාක සහිත නිර්මාණ තීරණයකි. කුලියා පරාසය ආපසු මාර්ගගත කිරීම හවුල්කරු ළඟ එක් එක් කුලියාගේ අනන්යතාව රඳවා ගනී සහ ඔබේ උපසර්ගය පිළිගැනීම අවශ්ය කරයි. පරිවර්තනය තටාකය එක් ලිපිනයක් පිටුපස සඟවා හවුල්කරු එම ලිපිනය පමණක් පිළිගැනීම අවශ්ය කරයි, කවුරුන් සම්බන්ධ වූයේ ද යන්න ගැන ඔබේ සහ ඔහුගේ ලඝු ගොනු තවදුරටත් එකඟ නොවීමේ මිලට.
ඔබ තෝරන කුමක් වුවත්, එය තටාක අර්ථ දැක්වීම අසල ලියන්න. යමෙකුගේ මතකයේ පමණක් පවතින ආපසු මාර්ගයක් යනු හවුල්කරු ෆයර්වෝලයක් වෙනස් කරන තෙක් පවතින, පසුව නැවත ගොඩනැගීමට දිනක් ගත වන දෙයයි.
ප්රතිපත්තියේ ගේට්වේයේම උමඟ අල්ලා නොගන්න
කුලියන් සඳහා ඔබ ලියන නියම ගේට්වේය විසින් ජනනය කරන රථවාහන සමඟද අදාළ වේ, ඔබ එය බැහැර නොකරන්නේ නම්. සලකුණක් හෝ පිටවන අතුරුමුහුණත මත පදනම් වූ පුළුල් නියමයකට ගේට්වේයේ හවුල්කරු සමඟ ඇති තමන්ගේම සම්බන්ධතාව අල්ලා ගත හැක, එවිට ප්රතිපත්තිය දරන උමඟ ප්රතිපත්තියෙන් මාර්ගගත වේ. එය සේවා සපයන්නාගේ දෝෂයක් ලෙස පෙනෙන ලූපයක් හෝ බිඳවැටීමක් ඇති කරයි.
සෑම නියමයක්ම නිර්මාණය ඉඩ දෙන තරම් පටු කරන්න: මූලාශ්ර උපසර්ගය, ඇතුළු වන අතුරුමුහුණත සහ ආධාරක වන තැන කුලියා පැකට්ටු පමණක් දරන සලකුණක්. පසුව සෑම නියම වෙනසකින් පසු ගේට්වේයේම සම්බන්ධතාව පරීක්ෂා කරන්න, මන්ද දෝෂය ස්වයං-යොමු වන අතර කුලියා පරීක්ෂණයේදී නොපෙනේ.
ip-rule අත්පොත පිටුව තේරීම්කරුගේ සහ ප්රමුඛතාවේ අර්ථය ලේඛනගත කරයි. එය සෑම තටාකයක සොයාබැලීම් පරීක්ෂණය සමඟ එකතු කරන්න, නිර්මාණය පරීක්ෂා කළ හැකි බවට පත් වේ, එය වසරක් රැඳෙන ප්රතිපත්ති මාර්ගගත කිරීම සහ සැමට ස්පර්ශ කිරීමට බිය වන එය අතර වෙනසයි.