NAT வழியாக L2TP/IPsec: உண்மையில் என்ன உடைகிறது, ஏன்
NAT traversal ESP-ஐ UDP-க்குள் நகர்த்துகிறது, மேலும் மேப்பிங், ஃபயர்வால், இயக்குபவர் ஆகியவை ஒவ்வொன்றும் வெவ்வேறு விதமாக தோல்வியடைகின்றன. கிளையண்டைக் குறை கூறும் முன் நிலையைக் கண்டறியுங்கள்.
NAT L2TP/IPsec-ஐ உடைக்கிறது எனும் கூற்று பாதி உண்மை, எனவே பயனற்றது. முகவரி மொழிபெயர்ப்பு சாதாரணமானது, NAT traversal அதைத் தாண்டி வாழ்வதற்காகவே உள்ளது, மேலும் தினமும் லட்சக்கணக்கான கிளையண்ட்கள் ரவுட்டருக்குப் பின்னால் இணைகின்றன. உடைவது என்பது ஒரு குறிப்பிட்ட பரிமாற்றத்தின் ஒரு குறிப்பிட்ட நிலை: IKE-க்கு எப்போதும் பதில் கிடைக்காது, ஒரே ஒரு நெறிமுறைக்கு மட்டும் அனுமதிக்கும் கொள்கையால் என்கேப்சுலேட் செய்யப்பட்ட சுரங்கப்பாதை தூக்கி எறியப்படுகிறது, அல்லது சுரங்கப்பாதை செயலற்றிருக்கும்போது மேப்பிங் காலாவதியாகிறது. நீங்கள் எந்த நிலையில் இருக்கிறீர்கள் எனத் தெரிந்தபின், தீர்வு பொதுவாக ஒரு விதி அல்லது keepalive, புதிய VPN வடிவமைப்பு அல்ல.
புராணக்கதையே தவறான கேள்வி
பயனுள்ள கேள்வி “NAT இதை உடைக்கிறதா” என்பது அல்ல, மாறாக “பரிமாற்றத்தின் எந்தப் பகுதி மொழிபெயர்க்கப்படுகிறது, மொழிபெயர்க்கும் சாதனம் அதை எப்படி கையாள்கிறது” என்பதே. L2TP/IPsec அடுக்கு நெறிமுறை: IKE பேச்சுவார்த்தை நடத்துகிறது, ESP பாதுகாக்கிறது, மேலும் L2TP அந்தப் பாதுகாப்புக்குள் PPP-ஐ சுமக்கிறது. முகவரி மொழிபெயர்ப்பு ஒவ்வொரு அடுக்கையும் வெவ்வேறு விதமாக பாதிக்கிறது, பிழை உரையாடலுக்குப் பதிலாக பேச்சுவார்த்தை நிலையைப் பார்த்தால் தோல்வியின் அறிகுறிகளை வேறுபடுத்தலாம்.
வலை உலாவல் வெற்றிகரமாக நடக்கும் ரவுட்டர், மூல துறை மொழிபெயர்ப்புடன் TCP வேலை செய்கிறது என்பதை மட்டுமே நிரூபிக்கிறது. UDP 500, UDP 4500 அல்லது நெறிமுறை 50 பற்றி எதுவும் சொல்லாது, இந்தப் பயன்பாடு அந்த மூன்றையே சார்ந்துள்ளது.
நிலை 1: IKE-க்கு எப்படியாவது பதில் கிடைக்க வேண்டும்
முதல் பரிமாற்றம் UDP 500-இல் பதிலளிப்பவரிடம் செல்கிறது. எந்தப் பதிலும் திரும்பி வரவில்லை என்றால், மற்ற எதுவும் முக்கியமல்ல: முன்பே பங்கிடப்பட்ட விசை, முன்மொழிவு மற்றும் சான்றுகள் படிக்கப்படாமலேயே இருக்கும். கிளையண்டின் நேர வரம்பிலிருந்து ஊகிக்காமல் கோரிக்கையையும் பதிலையும் கவனியுங்கள்:
sudo tcpdump -n -i any 'udp port 500 or udp port 4500 or proto 50'
swanctl --list-sas
பதில் இல்லாத கோரிக்கை பொதுவாக ஃபயர்வால் அல்லது மேல்நிலை இயக்குபவர் பாக்கெட்டை தூக்கி எறிகிறார் என்பதே, சர்வர் அதை நிராகரித்தது என்பது அல்ல. முன்மொழிவு அல்லது சான்றிதழ் சிக்கலைப் பெயரிடும் அறிவிப்பு சுமையுடன் வரும் பதில், பாக்கெட்டுகள் வந்து சேர்ந்தன, உள்ளடக்கத்தால் பேச்சுவார்த்தை தோல்வியடைந்தது என்பதைக் குறிக்கிறது, இது முற்றிலும் வேறு பழுது.
இரு தரப்பும் மொழிபெயர்ப்புக்குப் பின்னால் இருந்தால், தொடங்குபவர் பதிலளிப்பவரை அடைந்தால் போதும், எனவே பெரும்பாலான கிளையண்ட் பக்கப் பயன்பாடுகள் நிலை 1 முதல் வேலை செய்கின்றன. சர்வர் பக்க ஹோஸ்டிங்தான் உள்வரும் சிக்கல் தொடங்கும் இடம், அதனால்தான் இந்த இரு சூழல்களையும் ஒன்றாக விவாதிக்கக் கூடாது.
நிலை 2: என்கேப்சுலேஷன் ஃபயர்வால் பார்ப்பதை மாற்றுகிறது
ESP ஒரு IP நெறிமுறை, TCP அல்லது UDP துறை அல்ல, சாதாரண துறை முகவரி மொழிபெயர்ப்பில் மீண்டும் எழுத துறை புலம் இல்லை. அதனால்தான் NAT traversal பாதுகாக்கப்பட்ட சுமையை UDP 4500-க்குள் நகர்த்துகிறது: என்கேப்சுலேஷன் மொழிபெயர்க்கும் சாதனத்திற்கு அது மொழிபெயர்க்கத் தெரிந்த ஒன்றை அளிக்கிறது. அது நடந்தபின், UDP 500-க்கு மட்டும் எழுதப்பட்ட ஃபயர்வால் விதி பேச்சுவார்த்தையை அனுமதித்து சுரங்கப்பாதையை தூக்கி எறியும், இது பதிவில் வெற்றிகரமான நிலை 1-ஐயும் போக்குவரத்து இல்லாததையும் காட்டும் குழப்பமான முடிவை உருவாக்குகிறது.
NAT கண்டறியப்பட்டபின் IKE பரிமாற்றமும் UDP 4500-க்கு நகரலாம், இது 500-க்கு மட்டும் அனுமதித்தவர்களை ஆச்சரியப்படுத்துகிறது. வழியில் இரு துறைகளையும் இரு திசைகளிலும் அனுமதியுங்கள், நிலை பேணும் ஃபயர்வால் போக்குவரத்தைப் பார்க்கும் வரை மட்டுமே ஓட்டத்தை வைத்திருக்கும் என்பதை நினைவில் கொள்ளுங்கள்.
நெறிமுறை 50 மொழிபெயர்ப்பு இல்லாத வழிகளிலும், இடைநிலைப் பெட்டி அதை அனுமதிக்க அமைக்கப்பட்ட வழிகளிலும் இன்னும் முக்கியம். நீக்கம் மூலம் கண்டறிகிறீர்கள் என்றால், விதிகளைக் குவியலாகச் சேர்ப்பதற்குப் பதிலாக கருதுகோளை அணையுங்கள்: 500, 4500, ESP-ஐ அனுமதியுங்கள், சுரங்கப்பாதை ஏறுவதை உறுதிப்படுத்தி, தேவையற்றது எனத் தெரிந்ததை நீக்குங்கள். யாராலும் விளக்க முடியாத விதி, அடுத்த இடையூறுக்குக் காரணமாகும்போது யாரும் நீக்காத விதி. சுருக்கத்தை மாற்றப் பதிவில் அது சரிசெய்த நிலையுடன் எழுதுங்கள், அடுத்த பொறியாளர் அதே கட்டைவிரல் விதியிலிருந்து அல்ல, உங்கள் சான்றுகளிலிருந்து தொடங்குவார்.
நிலை 3: மேப்பிங் காலாவதியாகிறது, சுரங்கப்பாதை இறக்கிறது
மொழிபெயர்க்கும் சாதனம் தான் அனுப்பும் ஓட்டங்களுக்கு நிலையை வைத்திருக்கிறது, அந்த நிலைக்கு ஆயுள் உண்டு. யாரும் பயன்படுத்தாதபோது L2TP/IPsec சுரங்கப்பாதை குறைந்த போக்குவரத்தையே சுமக்கிறது, எனவே செயலற்ற சுரங்கப்பாதை அதன் மேப்பிங்கை விட நீடித்து, திரும்பி வரும் போக்குவரத்தைப் பெறுவதை நிறுத்தலாம். கிளையண்ட் இணைந்திருப்பதாகவே நம்புகிறது, சர்வருக்கு எதுவும் தெரிவதில்லை, முதல் அறிகுறி பொதுவாக VPN பிழை அல்ல, ஒரு பயன்பாட்டின் நேர வரம்பு.
இறந்த துணையைக் கண்டறிதல் மற்றும் NAT keepalive இதற்காகவே உள்ளன, இரு முனைகளும் அவற்றை அனுப்பத் தயாராக இருக்க வேண்டும். உங்கள் சர்வர் மொழிபெயர்ப்புக்குப் பின்னால் இருந்தால், Windows பக்கத் தேவை என்பது சர்வர் தன் சொந்த வெளிச்செல்லும் பாக்கெட்டுகளுக்கு UDP என்கேப்சுலேஷனைக் கருத வைக்கும் ஆவணப்படுத்தப்பட்ட பதிவேட்டு அமைப்பு; அது இல்லாமல் பதிலளிப்பவர், மொழிபெயர்க்கும் சாதனம் திரும்ப மேப் செய்ய முடியாத ESP-ஐ அனுப்புகிறது. இது சர்வர் உள்ளமைவின் பிரச்சினை, கிளையண்டின் அல்ல.
WAN முகவரி மாறும்போது மற்றொரு திசையிலிருந்து அதே முடிவு: மேப்பிங் புதிய முகவரியைச் சுற்றி மீண்டும் கட்டப்படுகிறது, பழைய பாதுகாப்புச் சங்கம் இப்போது இல்லாத ஒரு ஜோடியைச் சுட்டுகிறது. மீண்டும் இணைவதன் நடத்தை கிளையண்ட் செயலாக்கத்திற்கு உரியது, அதனால்தான் “ரவுட்டர் மீண்டும் இயங்கியபின் மீண்டும் இணைக” ஒரு கிளையண்டில் வேலை செய்கிறது, மற்றொன்றில் கைமுறை நிலைமாற்றி தேவை.
இயக்குபவர் நிலை NAT-க்குப் பின்னால் ஹோஸ்டிங் வேறு பிரச்சினை
வீட்டில் L2TP/IPsec சர்வரை ஹோஸ்ட் செய்து வெளியிலிருந்து அதை அடைய விரும்பினால், தேவை கோரப்படாத உள்வரும் அணுகல், அதை NAT traversal வழங்காது. உங்கள் ரவுட்டருக்கு முன் இயக்குபவர் நிலை NAT இருந்தால், பொது முகவரி பங்கிடப்படுவதாலும் மேப்பிங் வெளிச்செல்லும் மட்டுமே என்பதாலும் உங்களை அணுகக்கூடியதாக மாற்றும் துறையை அனுப்ப முடியாது.
எந்த IPsec பாஸ்-த்ரூ சோதனைப் பெட்டியும் அதை மாற்றாது, எந்த கிளையண்ட் உள்ளமைவும் அதை ஈடுசெய்யாது. ஆதரிக்கப்படும் பதில்கள் உண்மையில் அணுகக்கூடிய முகவரி, ஹோஸ்ட் செய்யப்பட்ட முனை, அல்லது ஒவ்வொரு பங்கேற்பாளரும் வெளிச்செல்லும் இணைப்பைச் செய்யும் கட்டமைப்பு. UDP என்கேப்சுலேஷன் விவரக்குறிப்பு ஏற்கனவே உள்ள ஓட்டங்களுக்கு மொழிபெயர்ப்புச் சிக்கலைத் தீர்க்கிறது; இயக்குபவர் வழங்காத இடத்தில் அது உள்வரும் பாதையை உருவாக்காது.
எனவே ஊகிக்காமல் நெட்வொர்க்குகளை ஒப்பிடுங்கள். அதே சாதனத்தையும் சுயவிவரத்தையும் மற்றொரு அனுமதிக்கப்பட்ட நெட்வொர்க்குக்கு எடுத்துச் சென்று அங்கு எந்த நிலை தோல்வியடைகிறது எனப் பாருங்கள். வேறெங்காவது வேலை செய்தால், வேறுபாடு வழியில் உள்ளது, அது முழு உள்ளமைவுக்குப் பதிலாக மேலே உள்ள மூன்று நிலைகளுக்கு தேடலைக் குறைக்கிறது.