WireGuard: சப்நெட் மாற்றத்திற்குப் பிறகு பீருக்கு வழி இல்லை — இரண்டு வழிகள்
சப்நெட் மாற்றம் WireGuard-ஐ இரண்டு இடங்களில் உடைக்கிறது: AllowedIPs மற்றும் திரும்பும் பாதை. இடத்திலேயே மறுஎண்ணிடல் மற்றும் இடைமுகத்தை மீண்டும் கட்டமைத்தலை ஒப்பிடுங்கள்.
wg show இல் ஹேண்ட்ஷேக் புதியது, இறுதிப் புள்ளி சரி, விசைகள் ஒருபோதும் மாறவில்லை — ஆனால் ping இன்னும் பீருக்கு வழி இல்லை என்று சொல்கிறது. ஒரு மணி நேரத்திற்கு முன் நீங்கள் சுரங்கப்பாதையின் சப்நெட்டை மாற்றினீர்கள். அந்த அறிகுறி விசைச் சிக்கல் அல்ல, முன்னொட்டு பொருந்தாமையின் அடையாளம்: WireGuard ஹேண்ட்ஷேக்கை முடித்துவிட்டு பின்னர் தரவை வீசியது, ஏனெனில் மூல முகவரி இனி பெறும் பீர் ஏற்கும் மதிப்புடன் பொருந்தவில்லை. சப்நெட் மாற்றத்தைச் செயல்படுத்த இரண்டு நியாயமான வழிகள் உள்ளன, அவை வெவ்வேறு இடங்களில் தோல்வியடைகின்றன.
மாற்றத்தைச் செயல்படுத்த இரண்டு வழிகள், ஒவ்வொன்றின் விலை
விருப்பம் A என்பது இடத்திலேயே மறுஎண்ணிடல்: இடைமுக முகவரி, பீர் வரம்புகள், வழிகள் மற்றும் உள்ளமைவின் ஒவ்வொரு நகலையும் திருத்தி மீண்டும் ஏற்றவும். விருப்பம் B என்பது புதிய முன்னொட்டில் பழையதற்கு அருகில் இரண்டாவது இடைமுகத்தை உருவாக்கி, பீர்களை நகர்த்தி, போக்குவரத்து உண்மையில் நகர்ந்த பிறகு பழைய இடைமுகத்தை அகற்றுவது.
| A: renumber in place | B: parallel interface | |
|---|---|---|
| Downtime | The reload window, per host | None if peers are added to both |
| Rollback | Re-apply the previous files | Point peers back at the old interface |
| Risk | Half-applied change: new address, old ranges | Two live interfaces with overlapping intent |
| Effort | Small, if the deployment has one owner | Higher, and needs a cleanup step |
| Fits | Two or three peers you control | Many peers, remote sites, or no maintenance window |
பாதி பயன்படுத்தப்பட்ட நிலையே விருப்பம் A-ஐ ஆபத்தானதாக ஆக்குகிறது, ஏனெனில் அது உடைந்ததாகத் தெரியவில்லை. இடைமுகம் மேலெழுகிறது, ஹேண்ட்ஷேக் வெற்றியடைகிறது, தரவுப் பாதை மட்டும் தோல்வியடைகிறது. விருப்பம் B அதிக வேலை கோருகிறது ஆனால் ஒவ்வொரு குறிப்பையும் நீங்கள் தேடும்போது வேலை செய்யும் பாதையை உயிருடன் வைத்திருக்கிறது.
உங்கள் பக்கத்தில் எது ஒன்றாக நகர வேண்டும்
உள்ளூர் புரவலனில் நான்கு விஷயங்கள் ஒரே சப்நெட்டை விவரிக்கின்றன, ஒன்றை மாற்றுவது அனைத்தையும் மாற்றுவது: இடைமுகத்தின் முகவரி, ஒவ்வொரு பீரின் AllowedIPs, அந்த இலக்குகளுக்கு அமைப்பு பயன்படுத்தும் வழி, மேலாளர் உங்கள் சார்பாக நிறுவுவது. wg-quick உடன் கடைசி இரண்டும் இடைமுகம் மேலெழும் ஒவ்வொரு முறையும் உள்ளமைவிலிருந்து உருவாக்கப்படுகின்றன, எனவே பழைய நகல் பழைய முன்னொட்டை அமைதியாக மீண்டும் நிறுவுகிறது.
ஒன்றை நம்புவதற்குப் பதிலாக உள்ளமைக்கப்பட்டதை நேரடியாக இயங்குவதுடன் ஒப்பிடுங்கள்:
wg show
wg showconf wg0
ip addr show wg0
ip route get 10.90.0.5வழித் தேடலே மக்கள் தவிர்க்கும் படி. ஒரு இலக்கிற்கு கர்னல் உண்மையில் என்ன செய்யும் என்பதை அது பதிலளிக்கிறது, மேலாளர் அல்லது கொள்கல இயக்கச் சூழல் விட்டுச் சென்ற மிகக் குறிப்பிட்ட வழி உட்பட. அது சுரங்கப்பாதையை விட வேறு இடைமுகத்தைக் காட்டினால், உள்ளமைவு சிக்கல் அல்ல.
இயங்கும் இடைமுகத்திற்கு, சுரங்கப்பாதையை உடைக்காமல் திருத்திய கோப்பைப் பயன்படுத்துங்கள்:
wg syncconf wg0 <(wg-quick strip wg0)அது பீர்களையும் வரம்புகளையும் இடத்திலேயே புதுப்பிக்கிறது. இடைமுக முகவரி அல்லது வழிகளைப் புதுப்பிக்கவில்லை, ஏனெனில் அவை WireGuard அமைப்புகள் அல்ல — எனவே மறுஎண்ணிடலுக்கு இடைமுகத்தை மீண்டும் உருவாக்குவது அல்லது ip மூலம் முகவரியை மாற்றுவது, பின்னர் வழியமைப்பை மீண்டும் சரிபார்ப்பது தேவை.
தொலை முனையில் எது ஒன்றாக நகர வேண்டும்
பொதுவாக சப்நெட் மாற்றம் இங்கே இறக்கிறது. AllowedIPs வழியமைப்பு குறிப்பு மட்டுமல்ல; பீர் முன்வைக்க அனுமதிக்கப்படும் மூல முகவரிகளின் பட்டியலும் ஆகும். நீங்கள் வாடிக்கையாளர்களை மறுஎண்ணிட்டு சேவையகத்தின் AllowedIPs-ஐ பழைய முன்னொட்டில் விட்டால், சேவையகம் ஹேண்ட்ஷேக்கை ஏற்று, மறைகுறியாக்கப்பட்ட பாக்கெட்டுகளைப் பெற்று அவற்றை வீசுகிறது, ஏனெனில் உள் மூலம் அந்தப் பீருடன் இணைக்கும் எந்த வரம்புடனும் பொருந்தவில்லை. எந்தப் பிழையும் பதிவாகவில்லை, வாடிக்கையாளர் நேர முடிவைக் காண்கிறது.
எனவே பெறும் பக்கத்தை வேண்டுமென்றே புதுப்பிக்கவும்: சேவையகத்தின் பீர் உள்ளீடு புதிய வாடிக்கையாளர் முன்னொட்டைப் பட்டியலிட வேண்டும், சேவையகத்தின் சொந்தத் திரும்பும் வழி அந்த முன்னொட்டிற்கு சுரங்கப்பாதையைக் காட்ட வேண்டும், சேவையகத்திற்குப் பின்னால் உள்ள எந்தக் கீழ்நிலை வலையமைப்பும் புதிய பாதையைக் கற்க வேண்டும். பழைய வரம்பைப் பெயரிட்ட தீச்சுவர் கொள்கைக்கும் அதே சிகிச்சை தேவை, மூல அடிப்படையிலான தேர்வு செய்யும் எதற்கும்.
இரண்டு தோல்விகளைப் பிரிக்கும் நோயறிதல் மலிவானது. புதிய ஹேண்ட்ஷேக் ஆனால் தரவு இல்லை என்றால் சுரங்கப்பாதை மேலே உள்ளது, உள் முகவரியிடல் ஒத்துப்போகவில்லை. ஹேண்ட்ஷேக் இல்லவே இல்லை என்றால் நீங்கள் அணுகல் அல்லது விசைகளைப் பார்க்கிறீர்கள். முன்னொட்டு சிக்கலுக்கு விசைகளைச் சுழற்ற வேண்டாம்; அது வேலை செய்த ஒரே விஷயத்தை மீட்டமைக்கிறது.
உங்கள் திருத்தத்தை விட நீண்டு வாழும் பழைய நகல்கள்
கோப்பைத் திருத்துவது இயங்கும் அமைப்பை மாற்றுவதற்குச் சமமானதல்ல, நகல்கள் மக்கள் எதிர்பார்ப்பதை விட அதிகம்: இடைமுகத்தை வைத்திருக்கும் அலகு அல்லது மேலாளர், வேறு கோப்பகத்தில் அதே பெயரில் இரண்டாவது சுயவிவரம், படத்தில் உள்ளமைவு சுடப்பட்ட கொள்கலன், தனது சொந்தத் திருத்திய பதிப்பை வைத்திருக்கும் திசைவி UI, தொடங்கும்போது சேமித்த சுரங்கப்பாதையை மீண்டும் இறக்குமதி செய்யும் வாடிக்கையாளர் பயன்பாடு. உங்கள் மாற்றம் முழுமையானதாகத் தெரிந்த பிறகும் இவற்றில் ஒவ்வொன்றும் பழைய முன்னொட்டை மீட்டெடுக்க முடியும்.
பெயர்களும் பயணிக்கின்றன. எண்ணியல் வழி வேலை செய்து புரவலன் பெயர் தோல்வியடைந்தால், உள் DNS பதிவு அல்லது சேவை உள்ளமைவு இன்னும் பழைய சுரங்கப்பாதை முகவரிக்குக் காட்டுகிறது. ஒவ்வொரு பீர் வரம்பையும் விரிவாக்குவதற்குப் பதிலாக குறிப்பைச் சரிசெய்யுங்கள், ஏனெனில் அது உண்மையான சிக்கலை மறைத்து அதே நேரத்தில் மூல ACL-ஐ பெரிதாக்கும்.
வேலை செய்யும்போது ஒரு மீட்பு வழியைத் திறந்து வைத்திருங்கள்: புரவலனுக்குள் நுழைய இரண்டாவது வழி, தொடர் பணியகம், அல்லது உள்ளமைவு கோப்புகளின் திட்டமிடப்பட்ட பின்னிறக்கம். நீங்கள் மாற்றும் இயந்திரத்திலிருந்து உங்களைப் பூட்டிவிடும் சுரங்கப்பாதை மாற்றமே இந்த வேலையை மாலையாக மாற்றும் மிகவும் பொதுவான வழி.
இரண்டில் தேர்ந்தெடுப்பது, மற்றும் வெட்டைச் சரிபார்ப்பது
ஒவ்வொரு பீரும் உங்களுடையதாக இருந்தால், எண்ணிக்கை குறைவாக இருந்தால், சிறிய இடையூறு ஏற்கத்தக்கதாக இருந்தால் A தேர்ந்தெடுக்கவும். பீர்கள் நீங்கள் கட்டுப்படுத்தாத தொலைக் கைகளாக இருந்தால், தளம்-தளம் இணைப்பு மேலே இருக்க வேண்டும் என்றால், அல்லது ஒவ்வொரு நகலும் ஒரே கடப்பில் புதுப்பிக்கப்படும் என்று உறுதியளிக்க முடியாவிட்டால் B தேர்ந்தெடுக்கவும். அந்த நிலையில் புதிய முன்னொட்டை இரண்டு இடைமுகங்களிலும் சேர்க்கவும், பீர்களை ஒவ்வொன்றாக நகர்த்தவும், புதியதில் போக்குவரத்தைக் கவனிக்கவும், அதன் பிறகே பழைய இடைமுகத்தையும் அதன் வழிகளையும் அகற்றவும்.
எந்த விருப்பத்திலும், நான்கு சோதனைகள் கடந்தால் மாற்றம் முடிந்தது: ஹேண்ட்ஷேக் புதியது, புதிய முன்னொட்டின் இலக்கிற்கான வழித் தேடல் சுரங்கப்பாதையைப் பெயரிடுகிறது, சில நூறு பைட்டுகள் சுமை இரு திசைகளிலும் கடக்கிறது, புரவலன் அல்லது மேலாளரை மீண்டும் தொடங்கிய பிறகும் அதுவே. இதற்கு wg(8) கையேடு ஒவ்வொரு திசையிலும் AllowedIPs என்பதன் பொருளுக்கான குறிப்பு, அறிகுறியை மறையச் செய்ய வரம்பை விரிவாக்கும் முன் அதை மீண்டும் படிப்பது மதிப்புள்ளது.
- ஹேண்ட்ஷேக் புதியது, தரவு இல்லை: விசைகளைத் தொடுவதற்கு முன் பெறுநரிடம் AllowedIPs பாருங்கள்.
- வழித் தேடல் தவறான இடைமுகத்தைக் காட்டுகிறது: வழியின் உரிமையாளர் மேலாளர் அல்லது கொள்கலன், உங்கள் கோப்பு அல்ல.
- எண்ணியல் முகவரி சரி, புரவலன் பெயர் உடைந்தது: பழைய குறிப்பு, வழியமைப்பு சுழற்சி அல்ல.
- மீண்டும் தொடங்கிய பிறகும் புதிய முன்னொட்டு பயன்படுத்தப்பட்டால் மட்டுமே மாற்றம் முழுமையாகும்.