உங்கள் VPN சேவையகம் உண்மையில் எந்த மூல முகவரியைப் பார்க்கிறது என்பதை NAT தீர்மானிக்கிறது
உங்கள் மடிக்கணினி முகவரி VPN சேவையகத்தை ஒருபோதும் அடையாது. NAT அதை கடைசி தாவலில் மீண்டும் எழுதுகிறது, சுரங்கப்பாதையின் IP பின்னர் வழங்கப்படுகிறது. இரு முனைகளையும் எவ்வாறு ஒப்பிடுவது.
VPN சேவையகம் உங்கள் மடிக்கணினி முகவரியை பாக்கெட்டிலிருந்து படித்து பதிவில் எழுதுகிறது என்று நீங்கள் கற்பனை செய்கிறீர்கள். அது படிப்பது கடைசி NAT தாவல் வெளிப்புற தலைப்பில் வைத்ததை, மேலும் ஹாட்ஸ்பாட்டாக பயன்படுத்தப்படும் தொலைபேசியில் இது பெரும்பாலும் நூற்றுக்கணக்கான பிற சந்தாதாரர்களுடன் பகிரப்படும் முகவரியாகும். உங்கள் இயந்திரத்தின் சொந்த 192.168.x.x அந்த தலைப்பில் ஒருபோதும் இணையத்தைக் கடக்காது, சுரங்கப்பாதையின் முகவரியை இணைப்பு ஏற்கனவே நிறுவப்பட்ட பிறகு சேவையகம் வழங்குகிறது. எனவே சேவையக பதிவும் மடிக்கணினியின் ip addr உம் பொருந்தவில்லை என்றால், இரண்டும் தவறில்லை; அவை ஒரே அமர்வின் வெவ்வேறு அடுக்குகளை விவரிக்கின்றன.
மூன்று முகவரிகள், பதிவில் ஒன்று மட்டும்
குழப்பம் மூன்று முகவரிகளை ஒன்றாகச் சுருக்குவதால் வருகிறது. ஒவ்வொன்றுக்கும் வேறு உரிமையாளர், வேறு தலைப்பில் வாழ்கிறது, வேறு பாதையில் சேவையகத்தை அடைகிறது.
| Address | Who assigns it | Where it sits | Visible to the VPN server |
|---|---|---|---|
Device address, e.g. 192.168.1.24 | Your router via DHCP | Outer header, before translation | No, rewritten in place |
| Translated address and port | Router, ISP CGNAT, or both | Outer header, after translation | Yes, this is the tuple it logs |
Tunnel address, e.g. 10.8.0.6 | The VPN server itself | Inner header, after decapsulation | Yes, but it chose it |
இணைக்கும் தருணத்தில் நடுத்தர வரி மட்டுமே தெரியாதது. சேவையகம் அதை டீமானுக்கு ஏற்ப தனது சக வரிசைப்பட்டியல், நிலை கோப்பு அல்லது ஓட்டப் பதிவில் எழுதுகிறது: WireGuard அதை முனை என்று அழைக்கிறது, OpenVPN நிலை கோப்பு அதை Real Address என்று குறிக்கிறது, strongSwan அதை IKE_SA இன் தொலை புரவலனாக அறிவிக்கிறது. அந்த மதிப்பு வேறு மூலத்திலிருந்து பாக்கெட் வரும்போதெல்லாம் புதுப்பிக்கப்படுகிறது, எனவே யாரும் எதையும் மீண்டும் தொடங்காமல் அது மாறுகிறது.
கீழ் வரி என்பது மக்கள் தவறாக அடையாள உரிமைகோரலாக படிப்பது. அது சேவையக கட்டமைப்பில் ஒரு இடத்தைக் குறிக்கிறது, ஒரு நபரை அல்ல, ஏனெனில் சேவையகம் அதை தனது சொந்த குளத்திலிருந்து தேர்ந்தெடுத்தது. இரு பயனர்கள் வெவ்வேறு நாட்களில் ஒரே சுரங்கப்பாதை முகவரியைப் பெறலாம், ஒருவர் இரு சாதனங்களிலிருந்து இரண்டை வைத்திருக்கலாம்.
சுரங்கப்பாதை இயங்கிக்கொண்டிருக்கும்போது பதிவு செய்யப்பட்ட டூபிள் ஏன் மாறுகிறது
முகவரி மொழிபெயர்ப்பு நேரங்காட்டியுடன் கூடிய அட்டவணை, நிரந்தர பிணைப்பு அல்ல. வீட்டு ரவுட்டர் கடைசி பாக்கெட்டுக்குப் பிறகு சிறிது நேரம் தனது UDP வரைபடத்தை வைத்திருக்கும், இயக்குபவர் நுழைவாயில் தனது சொந்த அட்டவணைப்படி துறைகளை மீண்டும் பயன்படுத்தும், Wi-Fi இலிருந்து LTE க்கு மாறும் தொலைபேசி முற்றிலும் வேறு மூலத்துடன் திரும்பும். இங்கே Linux conntrack இன் இயல்புநிலை மதிப்புகள் பயனுள்ள அளவுகோல்: nf_conntrack_udp_timeout 30 வினாடிகள் மற்றும் ஸ்ட்ரீமிங் வகை 120, எனவே அமைதியான சுரங்கப்பாதை பயனர் கவனிக்கும் முன்பே அதன் வரைபடத்தை இழக்கலாம்.
சுரங்கப்பாதை தப்பிப்பிழைப்பதற்குக் காரணம் நெறிமுறை முகவரியை அல்ல, சகனை அங்கீகரிக்கிறது. கைக்குலுக்கலுக்குப் பிறகு WireGuard நிலையற்றது, எனவே அங்கீகரிக்கப்பட்ட எந்தப் பாக்கெட்டும் சேமிக்கப்பட்ட முனையைப் புதுப்பிக்கிறது, மீண்டும் பிணைப்பு அடுத்த பாக்கெட்டில் சரியாகும்; persistent-keepalive = 25 அதற்காகவே உள்ளது, செயலற்ற நேரத்தில் வரைபடத்தை சூடாக வைத்திருக்க. OpenVPN இன் --float அதே வேலையைச் செய்கிறது, அங்கீகரிக்கப்பட்ட வாடிக்கையாளர் புதிய முகவரி மற்றும் துறையிலிருந்து தொடர அனுமதிக்கிறது. float இயல்புநிலையாக அணைக்கப்பட்ட 2.4 மற்றும் 2.5 கட்டுமானங்களில், மீண்டும் பிணைப்பு அமர்வை மீட்டமைக்கிறது, வாடிக்கையாளர் மீண்டும் இணைகிறார்.
IPsec அங்கு அதிக நகரும் பகுதிகளுடன் செல்கிறது. IKEv2 NAT கண்டறிதல் பேலோடுகளில் மூல மற்றும் இலக்கு ஹாஷ்களை ஒப்பிட்டு மொழிபெயர்ப்பைக் கண்டறிகிறது, UDP 4500 உறையிடலுக்கு மாறுகிறது, keepalive களை புதிய டூபிள் வரை பின்தொடர்கிறது. keepalive தடுக்கப்பட்டால் SA காகிதத்தில் இயங்கிக்கொண்டிருக்கும், ஒரு திசையில் போக்குவரத்து அமைதியாக நிற்கிறது.
சேவையகம் எதைக் காரணம் கூறலாம், எதைக் கூற முடியாது
கொல்லத் தகுந்த கட்டுக்கதை என்னவென்றால் மொழிபெயர்ப்பு உங்களை இயக்குபவரிடமிருந்து மறைக்கிறது என்பது. அது லேபிளை மாற்றுகிறது, கவனிப்பை அல்ல. இயக்குபவரின் NAT க்குப் பின்னால் உள்ள நுழைவாயில் 100.64.0.0/10 இடத்தை அல்லது பல சந்தாதாரர்கள் பகிரும் ஒரு பொது முகவரியைப் பார்க்கிறது, இருந்தாலும் ஓட்டத்தை சான்றிதழ் பொருள், WireGuard பொது விசை, ஒதுக்கப்பட்ட சுரங்கப்பாதை முகவரி, பைட் கணக்கிகள் மற்றும் நேர சாளரத்துடன் இணைக்க முடியும். இவற்றில் எதற்கும் உங்கள் LAN முகவரி தேவையில்லை.
எல்லைகள் எதிர் திசையிலும் செல்கின்றன. பதிவில் உள்ள பகிரப்பட்ட முகவரி வீட்டை அல்ல, நுழைவாயிலைக் குறிக்கிறது; ஒரே மொழிபெயர்க்கப்பட்ட முகவரியிலிருந்து வெவ்வேறு துறைகளில் உள்ள இரு அமர்வுகள் வெவ்வேறு சாதனங்கள்; துறை மீண்டும் பயன்படுத்தப்பட்டால் இரு வெவ்வேறு நாட்களில் ஒரே முகவரி இரு தொடர்பற்ற சந்தாதாரர்களாக இருக்கலாம். சக விசைகளை மட்டும் பதிவு செய்யும் சேவையகம் கணக்கு தரவுத்தளம் இல்லாமல் அவற்றை வாடிக்கையாளருடன் இணைக்க முடியாது, முகவரிகளை மட்டும் பதிவு செய்யும் சேவையகம் ஒரே ரவுட்டருக்குப் பின்னால் உள்ள மடிக்கணினியையும் தொலைபேசியையும் வேறுபடுத்த முடியாது.
ஊகிப்பதற்குப் பதிலாக இரு முனைகளையும் ஒப்பிடுங்கள்
என்ன நடந்தது என்பதைத் தீர்மானிக்க, அதே இணைப்பை இரு முனைகளிலும் ஒரே தருணத்தில் பிடித்து முகவரியை அல்ல, டூபிளை ஒப்பிடுங்கள். வாடிக்கையாளரில், எந்த மொழிபெயர்ப்புக்கும் முன்:
ss -uapn 'dport = :51820'
ip -4 route get 203.0.113.10
wg show wg0 endpoints
பிறகு ரவுட்டர் அல்லது CGNAT நுழைவாயிலில் உள்ள மொழிபெயர்ப்பு உள்ளீட்டையும் இறுதியாக சேவையகத்தை அடைவதையும் படியுங்கள்:
conntrack -L -p udp --dport 51820
tcpdump -ni eth0 udp port 51820
பெரும்பாலான பொருந்தாமைகளை மூன்று வடிவங்கள் விளக்குகின்றன. சேவையகத்தில் மூல துறை உள்ளூர் துறையிலிருந்து வேறுபடுகிறது, இலக்கு பொருந்துகிறது: சாதாரண துறை மொழிபெயர்ப்பு. சேவையகத்தில் மூல முகவரி உங்களுடையதல்லாத ISP தொகுதிக்கு உரியது: குறைந்தது ஒரு கூடுதல் NAT அடுக்கு. செயலற்ற காலத்திற்குப் பிறகு பாக்கெட்டுகள் நின்று புதிய துறையுடன் தொடர்கின்றன: வரைபடம் காலாவதியானது, வழித்தடக் குறைபாடு அல்ல. நேர முத்திரைகள் ஒன்று அல்லது இரண்டு வினாடிகளுக்கு மேல் இருந்தால், நீங்கள் இரு வேறு முயற்சிகளை ஒப்பிடுகிறீர்கள்.
வேறுபாடு விஷயங்களை உடைக்கும் இடம்
சேவையகக் குறைபாடுகள் போலத் தோன்றும் தடைகள் பொதுவாக இங்கிருந்து தொடங்குகின்றன. உங்கள் வீட்டு முகவரியில் பொருத்தப்பட்ட அணுகல் விதி ISP குத்தகை மாறிய பிறகு தோல்வியடைகிறது. மொழிபெயர்க்கப்பட்ட முகவரியுடன் பொருந்தும் fail2ban விதி அந்த நுழைவாயிலுக்குப் பின்னால் உள்ள அனைத்து சந்தாதாரர்களையும் ஒரே நேரத்தில் தடுக்கிறது. நிலையான தொலை முகவரியுடன் கூடிய தளம்-க்கு-தளம் சகன் மொபைல் இணைப்பு மாறிய பிறகு விசைகளைப் புதுப்பிப்பதை நிறுத்துகிறது. சுரங்கப்பாதை நெறிமுறை சரியாக இருந்தது; வெளிப்புற டூபிள் பற்றிய அனுமானம் இல்லை.
அதே குழப்பம் சேவையகப் பக்கத்திலும் தெரிகிறது. VPN பெட்டி தானே NAT க்குப் பின்னால் இருந்தால் துறை முன்னனுப்பல் மற்றும் செயல்படும் முன்னனுப்பல் பாதை தேவை; strongSwan முன்னனுப்பல் வழிகாட்டி IPsec க்கு அந்த நிலையை உள்ளடக்குகிறது. தனிப்பட்ட முகவரியில் மட்டுமே அணுகக்கூடிய சேவையகம் தனது வாடிக்கையாளர்கள் வழங்கும் மொழிபெயர்க்கப்பட்ட டூபிளை ஒருபோதும் பார்ப்பதில்லை, இது வாடிக்கையாளர்கள் மொழிபெயர்க்கப்படுவதிலிருந்து வேறுபட்ட பிரச்சினை.
இந்த நான்கு சோதனைகளை வரிசையாகச் செய்து முதல் தோல்வியில் நிறுத்துங்கள்:
- இரு முனைகளிலும் ஒரே நேரத்தில் பிடியுங்கள்; மூல துறை, இலக்கு துறை மற்றும் நேர முத்திரைகள் பொருந்துவதை உறுதி செய்யுங்கள்.
- நீங்கள் எதிர்பார்த்த முகவரியை அல்ல, சேவையகம் இப்போது வைத்திருக்கும் முகவரியை சக பட்டியலில் படியுங்கள்.
- உள்ளீடு மற்றும் அதன் மீதமுள்ள ஆயுளை conntrack அல்லது NAT அட்டவணையில் சரிபார்க்கவும்.
- வாடிக்கையாளரில் சுரங்கப்பாதை இடைமுக முகவரி LAN முகவரியை அல்ல, சேவையகம் ஒதுக்கியதைப் பொருந்துவதை உறுதி செய்யுங்கள்.
இரு பிடிப்புகளும் டூபிளில் உடன்பட்டும் சுரங்கப்பாதை இன்னும் தோல்வியடைந்தால், மொழிபெயர்ப்பு உங்கள் பிரச்சினை அல்ல; கைக்குலுக்கல் மற்றும் சுரங்கப்பாதைக்குள் உள்ள வழித்தட அட்டவணைக்குச் செல்லுங்கள்.