சேவையகத்தை மாற்றும்போது kill switch போக்குவரத்தை ஏன் விடுகிறது
சேவையக மாற்றத்தின் போது kill switch போக்குவரத்தை ஏன் தடுக்கிறது, அந்த நேரத்தில் கிளையண்ட் என்ன செய்கிறது, சாதாரண இடைவெளியையும் சிக்கிய தடுப்பையும் எப்படி வேறுபடுத்துவது.
அருகில் இருப்பதாகத் தோன்றும் சேவையகத்தைத் தேர்ந்தெடுத்து இணை என்பதை அழுத்தும்போது, புதிய சுரங்கப்பாதை எழுவதற்கு முன்பே உலாவி ஏற்றுவதை நிறுத்துகிறது. சின்னம் இணைகிற நிலைக்கு மாறி, ஒவ்வொரு தாவலும் நேரம் முடியும் வரை அங்கேயே இருக்கும். இந்த இடைவெளி பொதுவாக kill switch வடிவமைப்பின்படி வேலை செய்வதே: கிளையண்டிடம் அனுப்ப சுரங்கப்பாதை இல்லாத வரை போக்குவரத்து தடுக்கப்படுகிறது. இடைவெளி ஏற்கத்தக்கதா என்பது அந்த வினாடிகளில் கிளையண்ட் என்ன செய்கிறது, மேலும் அது நீக்கப்பட்டதாகச் சொல்லும்போது உண்மையில் நீக்கப்படுகிறதா என்பதைப் பொறுத்தது.
இரண்டு சேவையகங்களுக்கு இடையே கிளையண்ட் என்ன செய்கிறது
முனை மாற்றம் ஒரு சுவிட்சு அல்ல, பல படிகள். கிளையண்ட் தற்போதைய சுரங்கப்பாதையை உடைக்கிறது, தன் தடுப்பு விதிகளைப் புதுப்பிக்கிறது, புதிய முனையைத் தீர்த்து சுரங்கப்பாதையின் வெளியே அதை அடைகிறது, பின்னர் புதிய வழித்தடங்களை நிறுவி தடுப்பை உயர்த்துகிறது. நீங்கள் உணரும் இடைவெளி முதல் படிக்கும் கடைசி படிக்கும் இடையே உள்ளது.
இங்கே வரிசை வேகத்தை விட முக்கியம். புதிய முனைக்கான விதிவிலக்குக்கு முன்பே தடுப்பு விதிகள் நடைமுறைக்கு வந்தால், கிளையண்ட் கைகுலுக்கலை முடிக்க முடியாமல் நேரம் முடியும் வரை இணைகிற நிலையில் இருக்கும். விதிவிலக்கு பழைய சேவையகத்தின் முகவரியின் நகலாக இருந்தால், புதிய கைகுலுக்கல் வேறு எந்த வெளிச்செல்லும் பொதியைப் போலவே தெரிந்து தூக்கி எறியப்படும். இரண்டு நிலைகளும் உலாவியிலிருந்து ஒரே மாதிரியாகத் தெரிகின்றன, அதனால்தான் ஆறு வினாடிகளுக்குப் பிறகு மீளும் மாற்றமும் ஒருபோதும் மீளாத மாற்றமும் ஒரே காரணத்தைக் கொண்டிருக்கலாம்.
புதிய முனைக்கு தடுப்பில் ஒரு துவாரம் தேவை
சுரங்கப்பாதையை உருவாக்க, கிளையண்ட் இயற்பியல் இடைமுகம் வழியாக புதிய சேவையகத்தின் முகவரி மற்றும் துறைமுகத்திற்குப் பொதிகளை அனுப்ப வேண்டும், எடுத்துக்காட்டாக வழக்கமான WireGuard சுயவிவரத்திற்கு UDP 51820 அல்லது OpenVPN-க்கு 1194 மற்றும் 443, உங்கள் சுயவிவரம் எதைக் குறிப்பிட்டாலும். அந்தப் போக்குவரத்து இப்போது உருவாகும் சுரங்கப்பாதையின் உள்ளே இல்லை, எனவே பொருந்தும் அனுமதி விதி இல்லாவிட்டால் முழு சாதனத்திற்குமான தடுப்பு அதை விழுங்கும்.
புரவலன் பெயர் அடிப்படையிலான சுயவிவரங்கள் இரண்டாவது நிபந்தனையைச் சேர்க்கின்றன: தேடலே. தடுப்பு உயர்வதற்கு முன்பே கிளையண்ட் முனையைத் தீர்த்தால், தேக்ககப்படுத்திய முகவரியைப் பயன்படுத்தலாம், ஆனால் சுயவிவரம் முகவரிகளைச் சுழற்றும்போது அல்லது தேக்கப் பதிவு பழையதாகும்போது, அனுமதி விதி அடங்காத முகவரியை நோக்கி கைகுலுக்கல் செல்கிறது. IPv6 இதைத் தெரிய வைக்கிறது, ஏனெனில் இரட்டை அடுக்கு முனை A மற்றும் AAAA ஆகிய இரு பதிவுகளையும் வெளியிடலாம், v4 முகவரியை மட்டும் அடக்கும் அனுமதி விதி தடுக்கப்பட்ட v6 முகவரிக்கு எதிராக மீண்டும் முயல கிளையண்டை விட்டுவிடுகிறது.
விருப்பங்களின் பெயர்களும் இயல்புநிலை மதிப்புகளும் கிளையண்ட் மற்றும் பதிப்பிற்கு ஏற்ப மாறுபடும், எனவே திரைப்பிடிப்புகளிலிருந்து ஊகிக்காமல் உங்களுடையதற்கான ஆவணப்படுத்தப்பட்ட பட்டியலைப் படியுங்கள். OpenVPN Connect இன் அமைப்புகள் குறிப்பு openvpn.net/connect-docs/app-settings-windows இல் ஒரு கிளையண்ட் தன் தடுப்பு மற்றும் பிரிக்கப்பட்ட சுரங்கப்பாதை விருப்பங்களை எப்படி விவரிக்கிறது என்பதற்கு ஒரு எடுத்துக்காட்டு.
Fail-closed என்பது நிலை இயந்திரம், சுவிட்சு அல்ல
பெரும்பாலான கிளையண்டுகள் தடுப்பை தீச்சுவர் கொள்கையாக மூன்று நிலைகளில் வெளிப்படுத்துகின்றன: சுரங்கப்பாதை மேலே, போக்குவரத்து சுரங்கப்பாதை வழியாகவும் தடுப்பு இல்லாமலும்; சுரங்கப்பாதை கீழே, தடுப்பு செயலில்; மற்றும் மாற்றம், தடுப்பு செயலில் மற்றும் முனைக்கான தற்காலிக விதிவிலக்குகள். பிழைகள் வாழ்வது மூன்றாவது நிலையில்தான், ஏனெனில் அது சில வினாடிகளில் இருமுறை மாற வேண்டும், அதிலிருந்து வெளியேற முடியாதது நிரந்தர தடுப்பைப் போலவே தெரிகிறது.
இயங்குமுறை தளத்திற்குத் தகுந்தாற்போல் மாறுபடும், தோல்வியும் அப்படியே. Windows Filtering Platform வடிகட்டிகளுக்கு எடை உண்டு, எனவே உங்கள் அனுமதியை மிஞ்சும் தடுப்பு வடிகட்டி அனுமதி இருந்தாலும் பொதிகளைத் தூக்கி எறிந்துகொண்டே இருக்கும், மேலும் கொல்லப்பட்ட கிளையண்ட் செயல்முறை விட்டுச் சென்ற வடிகட்டிகள் பயன்பாடு போன பிறகும் இயந்திரத்தை இணைப்பில்லாமல் வைத்திருக்கலாம். macOS கிளையண்டுகள் பொதுவாக pf விதிகளை ஒரு நங்கூரத்தில் எழுதுகின்றன, அங்கு விதிகளின் வரிசையும் விரைவான முடிவுகளும் எந்த விதி பொருந்தும் என்பதைத் தீர்மானிக்கின்றன. Linux கிளையண்டுகள் பொதுவாக drop கொள்கையுடன் nftables அல்லது iptables சங்கிலியை நிர்வகித்து, முனை, சுரங்கப்பாதை இடைமுகம் மற்றும் loopback ஆகியவற்றுக்கு வெளிப்படையான அனுமதிகளை வழங்குகின்றன. VPN இல்லாமல் இணைப்புகளைத் தடுக்கும் விருப்பத்துடன் கூடிய Android இன் always-on VPN குழுவில் மிகக் கடுமையானது, ஏனெனில் இயக்க முறைமை தடுப்பை ஒவ்வொரு பயன்பாட்டுக்கும் அல்லாமல் முழு சாதனத்திற்கும் பயன்படுத்துகிறது.
WireGuard தனக்கென ஒரு குறிப்பு தேவை, ஏனெனில் AllowedIPs ஒரு வழித்தடத் தேர்வி, தடுப்பான் அல்ல. எந்த இலக்குகள் சுரங்கப்பாதைக்குள் செல்கின்றன என்பதை அது தீர்மானிக்கிறது; இன்னும் சுரங்கப்பாதை இல்லாத பொதி Wi-Fi வழியாக வெளியேறுவதைத் தடுக்க அது எதுவும் செய்யவில்லை. WireGuard மட்டும் மற்றும் தீச்சுவர் விதி இல்லாத அமைப்பில் kill switch உண்மையில் வழித்தடம் இல்லாததே, தூக்கி எறியப்பட்ட கைகுலுக்கலுக்குப் பிறகு இயற்பியல் இடைமுகம் வழியாக உண்மையான பொதி வெளியேறலாம்.
சின்னத்தைப் பார்ப்பதற்குப் பதிலாக இடைவெளியை அளவிடுங்கள்
நிலை விளக்கை அல்ல, பொதிகளைக் கவனியுங்கள். Linux இல் ஒரு முனையத்தில் பொது முகவரிக்கு மெதுவான ping தொடங்கி, மற்றொன்றில் இயற்பியல் இடைமுகத்தில் சுரங்கப்பாதையின் போக்குவரத்துத் துறைமுகத்தைப் பிடியுங்கள்:
ping -i 0.2 -c 100 1.1.1.1 | tail -5
sudo tcpdump -ni eth0 'udp port 51820'
இரண்டும் இயங்கும்போது கிளையண்டில் சேவையகத்தை மாற்றுங்கள். மூன்று விஷயங்கள் முக்கியம்: ping எவ்வளவு நேரம் நிற்கிறது, பிடிப்பு கைகுலுக்கல் புதிய முனையை அடைவதைக் காட்டுகிறதா, மற்றும் கிளையண்டின் நிலை இணைந்தது ஆவதற்கு முன் அல்லது பின் போக்குவரத்து திரும்புகிறதா. ping இடைவெளி முதலில் முடிந்தால், தடுப்பு முன்கூட்டியே நீக்கப்பட்டுள்ளது அல்லது காட்டி ஒப்புக்கொள்வதற்கு முன்பே சுரங்கப்பாதை மேலே உள்ளது. இடைவெளி பின்னர் முடிந்தால், காட்டி அளவுக்கு மீறி நம்பிக்கையானது.
Windows இல் netsh wfp show state ஒரு படக்காட்சியை எழுதுகிறது, அதில் கிளையண்ட் தன்னைத் துண்டிக்கப்பட்டதாகச் சொல்லும்போதும் இன்னும் உள்ள தடுப்பு வடிகட்டிகளைத் தேடலாம். macOS இல் sudo pfctl -sr ஏற்றப்பட்ட விதிகளையும் அவற்றின் வரிசையையும் பட்டியலிடுகிறது. எந்தப் படக்காட்சியையும் கிளையண்டின் சொந்தப் பதிவுடன் இணையுங்கள்; உங்கள் ping இன் நேரக்கோடு தடுப்பு தாமதமாக முடிந்ததா அல்லது ஒருபோதும் முடியவில்லையா என்பதைச் சொல்லும்.
சாதாரண இருள் மற்றும் சிக்கிய தடுப்பு
சிறிது இடையூறே இந்த அம்சத்தின் நோக்கம், எனவே எந்த அமைப்பையும் மாற்றுவதற்கு முன் வகைப்படுத்துங்கள்:
| What you see | Usually means | Next check |
|---|---|---|
| Two or three seconds of timeouts, then normal browsing | Expected fail-closed gap | Nothing to fix |
| State says connected, traffic stays dead | Block filter or route left behind | Firewall snapshot, client log |
| One app dead while others work | TCP session bound to the old exit address | Restart the app |
| LAN devices unreachable after the switch | LAN exception not reapplied | Allow-LAN or split-tunnel setting |
| New server hangs, the old one reconnects | Permit covers only the old address | Resolved address of the new host, including AAAA |
இரண்டாவது அல்லது ஐந்தாவது வரிசையில் வந்தால், சோதிக்க kill switch ஐ அணைக்க வேண்டாம், ஏனெனில் அது வழித்தடப் பிழையை கசிவாக மாற்றும். கிளையண்டின் சேவையை மீண்டும் தொடங்குங்கள், அல்லது செயல்முறை கொல்லப்பட்ட பிறகும் வடிகட்டிகள் நிலைத்திருக்கும் இடத்தில் இயந்திரத்தை மீள்தொடக்குங்கள், பிறகு தடுப்பு நீங்குகிறதா என்று பாருங்கள். நீங்கினால், குறைபாடு தடுப்பில் அல்ல, மாற்றத்தின்போது சுத்தம் செய்வதில் உள்ளது.
அடுத்த மாற்றத்திற்கு முன் நான்கு விஷயங்களை உறுதிப்படுத்துங்கள்: முனையின் அனுமதி உங்கள் சுயவிவரம் தீர்க்கும் ஒவ்வொரு முகவரி குடும்பத்தையும் அடக்குகிறது, கிளையண்ட் பதிவு மாற்றம் முடிந்ததைக் காட்டுகிறது, உங்கள் ping சோதனை சின்னத்தை அல்ல இடைவெளியை அளவிடுகிறது, மற்றும் கிளையண்டை மூடுவது சாதாரண இணைப்பை மீட்டெடுக்கிறது. மாற்றத்தின்போது தாங்கி பின்னர் விடும் kill switch தன் வேலையைச் செய்கிறது. முன்கூட்டியே அல்லது ஒருபோதும் விடாத ஒன்று பிழைதிருத்தத் தகுந்தது.