ඔබට උඩු සබැඳුම් දෙකක් ඇත, සහ ip -6 route show දෙකෙහිම එකම ඊළඟ පිම්ම මුද්‍රණය කරයි: default via fe80::1 dev uplink0 සහ default via fe80::1 dev uplink1. මෙය පිටපත් ලිපින ගැටුමක් නොවේ, තනි ඊළඟ පිම්ම fe80::1 ප්‍රතිපත්ති වගුවකට පිටපත් කිරීමෙන් ඔබ අදහස් කළේ කුමන සබැඳුමදැයි කර්නලයට නොකියයි. සැබෑ ප්‍රශ්නය ලක්ෂණය යෝජනා කරනවාට වඩා පටුය: දෙවන වගුවට එක් සබැඳුමක් අවශ්‍යද නැතිනම් දෙකමද, සහ නැවත ඇරඹීමෙන් පසු එම මාර්ග ජීවමානව තබන්නේ කුමක්ද. පිළිවෙලට පරීක්ෂා කරන කොන්දේසි තුනක් බොහෝ දේ විසඳයි.

එකම fe80::1 යනු වෙනස් අසල්වැසියන් දෙදෙනෙකි

සබැඳුම්-ස්ථානීය ලිපින එක් සබැඳුමකට පමණක් සීමා වේ, එබැවින් fe80::1 දෙවරක් මුද්‍රණය කළ එකම ලිපිනයක් නොවේ; එකම අන්ත අක්ෂරය බෙදාගන්නා අසල්වැසියන් දෙදෙනෙකි. කලාප දර්ශකය යනු සත්කාරකය අදහස් කළේ කුමක්දැයි කියන ක්‍රමයයි, එබැවින් fe80::1%uplink0 සහ fe80::1%uplink1 කර්නලයට වෙනස් ගමනාන්ත වන අතර, එම අන්ත අක්ෂරය කිසිදා දුරස්ථ රවුටරයට නොයයි. RFC 4007 මෙයට පාදක කලාප ආකෘතිය විස්තර කරයි, එබැවින් ප්‍රතිපත්ති වගුවක් සෑම සබැඳුම්-ස්ථානීය ඊළඟ පිම්මක් සමඟ උපාංගයක් ද රැගෙන යා යුතුය.

එක් සත්කාරකයක සංඛ්‍යාත්මක කලාප ID එකක් අච්චුවකට පිටපත් කරන VPN වින්‍යාස උත්පාදකය ස්ථානීය සන්දර්භය ලිපිනයේ කොටසක් ලෙස සලකයි, එය ලියන ගොනුව අතුරුමුහුණත් නම් හෝ දර්ශක වෙනස් වන සෑම යන්ත්‍රයකම වැරදිය. ප්‍රතිපත්ති වගුවක් සබැඳුම් දෙකක් එකකට ඒකාබද්ධ නොකරයි: මාර්ගගත VPN ජාල අතර පැකට් ගෙන යයි, නමුත් දුරස්ථ ඊතර්නෙට් අසල්වැසියාගේ සබැඳුම්-ස්ථානීය අනන්‍යතාව උමඟ හරහා ගෙන නොයයි, එබැවින් සබැඳුම්-ස්ථානීය ගමනාගමනය තම සබැඳුමේම රැඳේ.

උපාංගය ඉවත් කරන්න, මාර්ගය ලිවිය නොහැකි වේ. ip -6 route add default via fe80::1 table 200 දොරටුව විසඳිය නොහැක, iproute2 එය Error: Nexthop has invalid gateway. දෝෂයකින් ප්‍රතික්ෂේප කරයි. dev uplink0 එකතු කරන්න, විධානය සාර්ථක වේ, මන්ද ඊළඟ පිම්ම එම අසල්වැසියන් දෙදෙනාගෙන් එකකට ඇමිණීම උපාංගයයි. උපාංගයට කිව නොහැකි දෙය නම් uplink0 මෙම වගුවට නිවැරදි සබැඳුමද යන්නයි, තවත් සත්කාරකයකින් පිටපත් කළ මාර්ගය එම සත්කාරකයේ අතුරුමුහුණත් නම් ද රැගෙන එයි, සැබෑ වැරදි බොහෝ විට මෙතැනින් පැමිණේ.

කොන්දේසිය එක: වගුවේ එක් සබැඳුමක් ද දෙකක් ද

දෙවන උඩු සබැඳුම කුමක් සඳහා ද යන්නෙන් අරඹන්න. සබැඳුම් දෙකම එකම ගමනාගමනය ගෙන ගොස් එකක් අමතර වේ නම්, විකල්ප වගුවේ දොරටු දෙකම වෙනස් මිනුම් සමඟ තිබිය යුතුය: එකම ගමනාන්ත, එක් මනාප මාර්ගයක්, එක් පැහැදිලි දෙවන තේරීමක්. උඩු සබැඳුම් පවතින්නේ වෙනස් ගමනාගමනය වෙනස් සැපයුම්කරුවන් හරහා පිටවිය යුතු නිසා නම්, නැතිනම් මෙය බෙදුණු උමඟක් වන නිසා නම්—සමහර ගමනාගමනය VPN මඟ හැර යන අතර ඉතිරිය ඇතුළත රැඳේ—එම සබැඳුම් දෙක කිසිසේත් එක් වගුවකට අයත් නොවේ. ඒවා වගු දෙකකට අයත් වේ, ඒවා නියමයක් තෝරයි, නියමය උමඟ නොව වගුව තෝරයි: මඟ හරින ගමනාගමනය මාර්ගගත කිරීමට පෙර සලකුණු කරනු ලැබේ, එම සලකුණම එය දෙවන වගුවට යවයි.

එම දෙවන අවස්ථාවේදී නියමය තීරණය කරන්නේ වගුවක් කවදා බලනවාද යන්නයි, මාර්ගය තීරණය කරන්නේ පැකට්ටුව ගිය පසු කොහේ යනවාද යන්නයි:

ip -6 rule add fwmark 0x2 table 201
ip -6 route add default via fe80::1 dev uplink1 metric 100 table 201
ip -6 route add 2001:db8:100::/48 dev uplink1 metric 100 table 201
ip -6 route show table 201

කිසිදු වස්තුවක් අනෙකක් ආදේශ නොකරයි, පෙරනිමිය පමණක් ඇති වගුවකට පවා තම දොරටුව විසඳිය නොහැකි විය හැක. එකතු කිරීම ප්‍රතික්ෂේප වුවහොත්, නැතිනම් මාර්ගය තිබුණත් භාවිතයට නොගත හැකි නම්, එම අතුරුමුහුණතේ සම්බන්ධිත උපසර්ගය එම වගුවටම දමන්න, නැතිනම් පිම්ම onlink ලෙස සලකුණු කරන්න (එම උපසර්ගය වෙනත් තැනක මාර්ගගත වන විට). ඉහත කොටසෙහි 2001:db8:100::/48 අත්තනෝමතික ගමනාන්තයක් නොව uplink1 මත එම සම්බන්ධිත උපසර්ගය දක්වයි. fwmark නියමය විසින් පරිභෝජනය කරන්නේ වෙනත් දෙයක් සැකසිය යුතු සලකුණක් පමණි: යැවීමේ මාර්ගයේ nftables හෝ iptables නියමයකින්, නැතිනම් SO_MARK සොකට් එකේ, එබැවින් සලකුණ් මූලාශ්‍රයක් නැතිව පිටපත් කළ කොටස කිසිවක් සමඟ නොගැළපේ.

කොන්දේසිය දෙක: මිනුම් මළ සැපයුම්කරුවෙකු හඳුනා නොගනී

මිනුම යනු පවතින මාර්ග අතර මනාපයක් මිස සෞඛ්‍ය පරීක්ෂාවක් නොවේ. සන්නායකය වැටෙන විට කර්නලය එම උපාංගයේ මාර්ග ඉවත් කර දෙවන පෙරනිමිය භාර ගනී. කේබලය ක්‍රියාත්මකව තිබියදී එහි පිටුපස සැපයුම්කරු මිය ගියහොත් වගුවේ කිසිවක් වෙනස් නොවේ: මනාප මාර්ගය ස්ථාපිතය, අසල්වැසියා ස්තර 2 ට ළඟා විය හැක, පැකට්ටු කළු කුහරයකට පිටව යයි. මෙම වෙනස ඔබේ සැකසුමට වැදගත් නම්, අසාර්ථක මාරුව මාර්ගය පරීක්ෂා කර මාර්ගය ඉවත් කරන දෙයකින් පැමිණිය යුතුය: එය මාර්ගගත කිරීමේ ඩීමනයක් හෝ සටහන මකා නැවත ස්ථාපනය කරන කුඩා පිටපත් ලේඛනයක් වේවා.

වගුව ගොඩනැගීමෙන් පසු තේරීම තහවුරු කරන්න, කර්නලය දකින ආකාරයටම තහවුරු කරන්න. ip -6 route get 2001:db8:100::1 භාවිත වන මාර්ගය මුද්‍රණය කරයි, එයට උපාංගය සහ තේරූ මූලාශ්‍ර ලිපිනය ඇතුළත් වේ, එය ප්‍රතිපත්ති නියමයන්ට ගරු කරයි. වැරදි උඩු සබැඳුමකට අයත් මූලාශ්‍ර ලිපිනය සාමාන්‍යයෙන් යනු නියමයක් ඔබ බලාපොරොත්තු වූවාට වඩා කලින් ගැළපුණු ලකුණකි.

කොන්දේසිය තුන: ස්ථාවරත්වයේ හිමිකාරිත්වය කාටද යන්න තීරණය කරන්න

මාර්ගය ip -6 route add මගින් එකතු කළ මාර්ගය නැවත ඇරඹීම දක්වා හෝ යමක් එය හිස් කරන තෙක් පවතී. රවුටර ප්‍රකාශවලින් ඉගෙන ගත් පෙරනිමිය ආයු කාලයක් රැගෙන එන අතර රවුටරයට එය ඉල්ලා අස්කර ගත හැක, නමුත් අතින් එකතු කළ පෙරනිමිය කිසිදා තනිවම කල් ඉකුත් නොවේ. දෙකම එක් වගුවක මිශ්‍ර කිරීම නම් පැරණි ස්ථිර මාර්ගයක් අලුතින් ප්‍රකාශිත එකක් ඉක්මවා යාමට හේතු වන ක්‍රමයයි, එය විස්තර කළ උඩු සබැඳුම බොහෝ කලකට පෙර නොතිබුණද.

සෑම වගුවකටම එක් හිමිකරුවෙකු තෝරන්න. ජාල කළමනාකරුවෙකු හෝ මාර්ගගත කිරීමේ ඩීමනයක් දැනටමත් අතුරුමුහුණත කළමනාකරණය කරන්නේ නම්, ප්‍රතිපත්ති මාර්ගය එහි විස්තර කර කර්නලය අතහැර දමන්න. ඔබ එය පිටපත් ලේඛනයකින් කරන්නේ නම්, ලේඛනය idempotent කර, ඉවත් කිරීමේ කොටස ද එම අවස්ථාවේම ලියන්න, මන්ද පළමු නරක වෙනස්කමේදී එය අවශ්‍ය වනු ඇත:

ip -6 route flush table 201
ip -6 rule del fwmark 0x2 table 201

වෙනත් සත්කාරක සඳහා යවන රවුටරයක, වගුවට දොස් කීමට පෙර net.ipv6.conf.all.forwarding පරීක්ෂා කරන්න. යැවීම අක්‍රිය නම්, වෙනත් ජාලයකට ලිපිනගත පැකට්ටු 201 වගුව කොතරම් නිවැරදි වුවත් ඉවත දමනු ලැබේ.

ඊළඟ පුද්ගලයාට විගණනය කළ හැකි වන පරිදි සැලසුම සටහන් කරන්න

ඇති කරන එකම fe80::1 ගබඩා කරන ලැයිස්තුව වැදගත් ක්ෂේත්‍ර ඉවත දමයි. ගමනාන්තය, ඊළඟ පිම්ම, උපාංගය, වගුව සහ මිනුම එකට සටහන් කරන්න, සෑම මාර්ගයක්ම පැමිණි ආකාරය ද: ප්‍රකාශිත, කළමනාකරු විසින් උත්පාදිත, නැතිනම් ස්ථිතික. පසුව යමෙකු දෙවන උඩු සබැඳුම සැබවින්ම ගමනාගමනය රැගෙන යනවාදැයි ඇසූ විට, එම සටහන අනුමානයකින් තොරව පිළිතුරු දෙයි.

වගුව අවසන් යැයි පැවසීමට පෙර, අසල්වැසියා ip -6 neigh show dev uplink0 මගින් තහවුරු කරන්න, ip -6 rule show නැවත කියවන්න — පිළිවෙලේ අනතුරු සඳහා, පෙරනිමි මාර්ගය ගන්නා ping වෙනුවට නියමයට ගැළපෙන ගමනාගමනයකින් පරීක්ෂා කරන්න. ඉන්පසු එක් උඩු සබැඳුමක් හිතාමතාම වසා, කර්නලය කුමන මාර්ගයට පසුබසින්නේදැයි බලන්න; පිළිතුර ඔබ සටහන් කළ දෙයට ගැළපිය යුතුය.

අදාළ ලිපි