ഒരേ ഡിസൈൻ കുറിപ്പിൽ L2TP, GRE, IPsec എന്നിവ വരുമ്പോഴെല്ലാം രണ്ട് ചോദ്യങ്ങൾ കുരുങ്ങുന്നു: ഞാൻ ഏത് സെഷൻ വഹിക്കുന്നു, അതിനെ ഏത് പാളി സംരക്ഷിക്കുന്നു? ആദ്യത്തേത് തെറ്റായാൽ, താഴെയുള്ളതെല്ലാം ആന്തരികമായി സ്ഥിരതയുള്ളതായി തുടരും, പക്ഷേ തെറ്റായ പ്രശ്നം പരിഹരിക്കുന്നു — ഉപയോക്താക്കൾ ഡയൽ-ഇൻ ചെയ്യേണ്ടിവന്നിടത്ത് നിർമ്മിച്ച റൂട്ട് ചെയ്ത ഓവർലേ, അല്ലെങ്കിൽ സൈറ്റ്-ടു-സൈറ്റ് ഗേറ്റ്വേയ്ക്ക് പകരം നിൽക്കുന്ന ഡയൽ-ഇൻ കോൺസെൻട്രേറ്റർ. താഴെയുള്ള വർക്ക്ഷീറ്റ് ആരെങ്കിലും ഒരു ഉപകരണത്തിൽ ലോഗിൻ ചെയ്യുന്നതിന് മുമ്പ് ഈ വ്യത്യാസം നിർബന്ധമാക്കുന്നു. അത് ക്രമത്തിൽ പൂരിപ്പിക്കുക, ഓരോ വരിയും സ്വതന്ത്രമായി പരിശോധിക്കാവുന്ന ഒന്നായി മാറും.

പ്രോട്ടോക്കോൾ പട്ടികയിൽ നിന്നല്ല, സെഷനിൽ നിന്ന് തുടങ്ങുക

PPP സെഷൻ വഹിക്കുന്ന വിദൂര ഉപയോക്താവും രണ്ട് ഗേറ്റ്വേകൾക്കിടയിലുള്ള റൂട്ട് ചെയ്ത ഓവർലേയും രണ്ടും ഒടുവിൽ IPsec-ൽ പൊതിഞ്ഞാലും വ്യത്യസ്ത ശൃംഖലാ ബന്ധങ്ങളാണ്. ആദ്യത്തേത് ഓരോ ഉപയോക്താവിന്റെയും ലിങ്ക് അവസാനിപ്പിക്കുന്നു, വിലാസം അനുവദിക്കൽ, വ്യക്തിയുടെയോ ഉപകരണത്തിന്റെയോ പ്രാമാണീകരണം, ആ ഉപയോക്താവിന് ഏത് ആന്തരിക ശൃംഖലകളിൽ എത്താമെന്ന് പേരിടുന്ന നയം എന്നിവ ആവശ്യപ്പെടുന്നു. രണ്ടാമത്തേത് ആരും ഡയൽ-ഇൻ ചെയ്യാത്ത സൈറ്റുകൾക്കിടയിൽ പാക്കറ്റുകൾ കൈമാറുന്നു.

രണ്ടിൽ ഏതാണ് നിങ്ങൾ നിർമ്മിക്കുന്നതെന്ന് പേരിടുന്ന ഒരു വാക്യം എഴുതുക, പിന്നീട് അത് പ്രവർത്തിപ്പിക്കേണ്ട വ്യക്തി നിങ്ങളാണെന്ന പോലെ വായിക്കുക. വാക്യത്തിന് «ഒപ്പം» എന്ന വാക്ക് ആവശ്യമുണ്ടെങ്കിൽ, നിങ്ങൾ രണ്ടും നിർമ്മിക്കുന്നു, വർക്ക്ഷീറ്റിന് ഓരോന്നിനെയും പകുതി സേവിക്കുന്ന ഒരു വിട്ടുവീഴ്ചാ കോളത്തിന് പകരം രണ്ട് കോളങ്ങൾ വേണം. അത് ഒരു ഉപയോക്താവിനെ പേരിടുന്നുവെങ്കിലും വിലാസ പൂൾ ഇല്ലെങ്കിൽ, അല്ലെങ്കിൽ പ്രിഫിക്സ് പേരിടുന്നുവെങ്കിലും കൈമാറ്റ നയം ഇല്ലെങ്കിൽ, വാക്യം ഇപ്പോഴും അപൂർണ്ണമാണ്. പദപ്രയോഗം കാര്യാലയപരമായി തോന്നുന്നു, പക്ഷേ ഹെൽപ്പ് ഡെസ്ക് ടിക്കറ്റിലൂടെ മാത്രം കണ്ടെത്താവുന്ന ഒരു ഡിസൈൻ പിടിക്കാനുള്ള ഏറ്റവും വിലകുറഞ്ഞ സ്ഥലം ഇതാണ്.

ഓരോ പാളിക്കും കൃത്യമായി ഒരു ജോലി നൽകുക

L2TPv2 അതിന്റെ രണ്ട് അന്ത്യ ബിന്ദുക്കൾക്കിടയിൽ PPP സെഷനുകൾ വഹിക്കുന്നു. PPP ലിങ്ക് ചർച്ചയും, അത് ചർച്ച ചെയ്യപ്പെടുമ്പോൾ ഉപയോക്തൃ പ്രാമാണീകരണവും നടത്തുന്നു; L2TP യാതൊരു ഗൂഢാലേഖനവും ചേർക്കുന്നില്ല, അതിനാൽ വെറും L2TP ഡെമോൺ IPsec സുരക്ഷാ ബന്ധത്തിന്റെ ഒരു ഭാഗവും നടപ്പിലാക്കുന്നില്ല, നിങ്ങൾ ഇതിനകം വിശ്വസിക്കുന്ന ഒരു ലിങ്കിനുള്ളിൽ മാത്രമേ അതിന് സ്ഥാനമുള്ളൂ.

GRE എന്നത് രണ്ട് വിലാസങ്ങൾക്കിടയിലുള്ള എൻകാപ്സുലേഷനാണ്. അത് ശൃംഖലാ പാളിയിലെ പാക്കറ്റുകൾ ഒരു യുക്തിപരമായ ഓവർലേയിലൂടെ വഹിക്കുന്നു, സ്വതന്ത്രമായി രഹസ്യസ്വഭാവമോ പ്രാമാണീകരിച്ച പങ്കാളി ഐഡന്റിറ്റിയോ നൽകുന്നില്ല. അത് ഒരു വീഴ്ചയല്ല: ഹെഡർ ലളിതമായി രൂപകൽപ്പന ചെയ്തത് ഫോർവേഡിംഗ് ഹാർഡ്വെയറിൽ പ്രോസസ്സ് ചെയ്യാൻ വിലകുറഞ്ഞതായി തുടരാനാണ്. ഫലം, GRE ഈ പാക്കറ്റ് രണ്ട് വിലാസങ്ങൾക്കിടയിൽ എങ്ങനെ നീക്കാം എന്ന ചോദ്യത്തിന് മാത്രം ഉത്തരം നൽകുന്നു, മറ്റൊന്നിനും അല്ല, അത് അതിനോട് ചോദിക്കേണ്ട ചോദ്യം കൃത്യമായി അതാണ്.

അപ്പോൾ IPsec ട്രാഫിക് തിരഞ്ഞെടുക്കുന്ന, പങ്കാളികളെ പ്രാമാണീകരിക്കുന്ന, സംരക്ഷിക്കാൻ പറഞ്ഞത് ഗൂഢാലേഖനം ചെയ്യുന്ന പാളിയായി അവശേഷിക്കുന്നു. ഏത് ട്രാഫിക് സംരക്ഷിക്കുന്നു എന്നത് ഒരു കോൺഫിഗറേഷൻ തീരുമാനമാണ്, അത് അന്ത്യ ബിന്ദുക്കൾ യഥാർത്ഥത്തിൽ സൃഷ്ടിക്കുന്ന എൻകാപ്സുലേഷനുമായി പൊരുത്തപ്പെടണം, കാരണം GRE ബാഹ്യ വിലാസത്തിനായി എഴുതിയ നയം ആന്തരിക പ്രിഫിക്സുകൾക്കായി എഴുതിയതിൽ നിന്ന് വ്യത്യസ്തമായി പ്രവർത്തിക്കുന്നു. GRE വിവരണം പേലോഡ്, GRE ഹെഡർ, ബാഹ്യ ഡെലിവറി പ്രോട്ടോക്കോൾ എന്നിവ കാഴ്ചയിൽ വേർതിരിച്ച് നിർത്തുന്നു, നിങ്ങളുടെ നയത്തിനും അതേ വേർതിരിക്കൽ വേണം.

LayerIts one jobWhat it never does
PPPLink negotiation, optional user authentication, address assignmentProtect traffic between gateways
L2TPv2Carry the PPP session between two endpointsEncrypt or authenticate peers
GREEncapsulate network-layer packets between two addressesHide or authenticate the payload
IPsecAuthenticate peers and encrypt selected trafficCarry a dial-in user session by itself

കോൺഫിഗറേഷന് മുമ്പ് പാക്കറ്റ് പാത എഴുതുക

ഒരു പാക്കറ്റ് എടുത്ത് ചേർക്കുന്ന ഓരോ ഹെഡറും ചേരുന്ന ക്രമത്തിൽ പട്ടികപ്പെടുത്തുക, അത് ചേർക്കുന്ന ഉപകരണം പേരിടുക. ഡയൽ-ഇൻ ഉപയോക്താവിന് ഇത് സാധാരണയായി IPsec-നുള്ളിൽ L2TP-യ്ക്കുള്ളിൽ PPP ആണ്; സൈറ്റ് ഓവർലേയ്ക്ക് ഇത് IPsec-നുള്ളിൽ GRE-യ്ക്കുള്ളിൽ ആന്തരിക IP പാക്കറ്റാണ്. രണ്ട് ഉപകരണങ്ങൾ ഒരേ ഹെഡർ ചേർക്കുന്നുവെങ്കിൽ, നിങ്ങൾക്ക് ഒരു ലൂപ്പോ ഇരട്ടിച്ച ടണലോ ഉണ്ട്, എത്ര നയം എഡിറ്റ് ചെയ്താലും അത് ശരിയാക്കില്ല.

അതേ പട്ടിക MTU തീരുമാനിക്കുന്നു, കാരണം ഉപയോഗയോഗ്യമായ ആന്തരിക വലിപ്പം അളന്ന പാതയുടെ MTU-വിൽ നിന്ന് നിങ്ങൾ ഇപ്പോൾ പട്ടികപ്പെടുത്തിയ ഹെഡറുകൾ കുറച്ചതാണ്, മറ്റൊന്നുമല്ല. ഫോറം പോസ്റ്റിൽ നിന്ന് ഒരു സംഖ്യ പകർത്തരുത്: ബാഹ്യ IP, UDP, ESP ഓവർഹെഡ്, പിന്നെ GRE അല്ലെങ്കിൽ L2TP, പിന്നെ ബാധകമായിടത്ത് PPP എന്നിവ കൂട്ടി, നിങ്ങൾ യഥാർത്ഥത്തിൽ അളന്ന പാതയുടെ MTU-വിൽ നിന്ന് കുറയ്ക്കുക. വലിയ കൈമാറ്റങ്ങളിൽ മാത്രം പ്രത്യക്ഷപ്പെടുന്ന ലക്ഷണങ്ങൾ, അല്ലെങ്കിൽ സ്ഥാപിതമായ ശേഷം ആദ്യ വലിയ പ്രതികരണത്തിൽ ചത്തുപോകുന്ന സെഷനുകൾ, സാധാരണയായി ആ കൂട്ടൽ ഊഹത്തിൽ നടത്തിയതിലേക്ക് നയിക്കുന്നു.

ഓരോ പാളിയും വെവ്വേറെ, പുറത്തുനിന്ന് അകത്തേക്ക് പരിശോധിക്കുക

പരിശോധനകൾ ക്രമത്തിൽ നടത്തി ആദ്യം പരാജയപ്പെടുന്നതിൽ നിർത്തുക. ഓരോ വരിയും വ്യത്യസ്ത ചോദ്യത്തിന് ഉത്തരം നൽകുന്നു, അതിനാൽ പരാജയം ടണൽ തകർന്നുവെന്ന് പറയുന്നതിന് പകരം വർക്ക്ഷീറ്റിന്റെ ഒരു കോളത്തെ ചൂണ്ടിക്കാണിക്കുന്നു.

ip xfrm state                  # is the IPsec SA up?
ip -s link show gre1           # does the overlay interface carry packets?
ip route get 10.20.0.5         # does the inner prefix route where you think?
ss -lun | grep -E "1701|4500"  # are the L2TP and NAT-T listeners bound?

Cisco ബോക്സിൽ തത്തുല്യമായത് റോളിനെ ആശ്രയിച്ചിരിക്കുന്നു, കൃത്യമായ സിന്താക്സ് പ്ലാറ്റ്ഫോമിനെയും റിലീസിനെയും ആശ്രയിച്ചിരിക്കുന്നു: IPsec പങ്കാളികൾക്ക് show crypto session, GRE അല്ലെങ്കിൽ ടണൽ ഇന്റർഫേസിന് ഇന്റർഫേസ് കൗണ്ടറുകൾ, ഡയൽ-ഇൻ റോളിന് VPDN അല്ലെങ്കിൽ PPP പരിശോധന. PPP അവസാനിപ്പിക്കുന്ന കമാൻഡ് സെറ്റ് GRE പിന്തുണയെക്കുറിച്ച് ഒന്നും തെളിയിക്കുന്നില്ല, പ്രവർത്തിക്കുന്ന GRE ഇന്റർഫേസ് PPP സേവനത്തെക്കുറിച്ച് ഒന്നും തെളിയിക്കുന്നില്ല, അതിനാൽ ഡയഗ്രാമിലുള്ളതല്ല, നിങ്ങൾ യഥാർത്ഥത്തിൽ കോൺഫിഗർ ചെയ്ത റോൾ പരിശോധിക്കുക.

ഓരോ ഔട്ട്പുട്ടും അത് ഉൾപ്പെടുന്ന വർക്ക്ഷീറ്റ് വരിയുടെ അടുത്ത് രേഖപ്പെടുത്തുക. തകരാർ സജീവമായിരിക്കുമ്പോൾ എടുത്ത കുറിപ്പുകൾ, പിന്നീട് ഓർമ്മയിൽ നിന്ന് വീണ്ടും വരച്ച ടോപ്പോളജിയെക്കാൾ മൂല്യമുള്ളതാണ്.

പൊളിക്കൽ ക്രമം ക്രമീകരിച്ച്, പിന്നീട് വീണ്ടും പരിശോധിക്കുക

പൊളിക്കൽ വിപരീത ക്രമത്തിൽ നടക്കുന്നതിന് ഒരു കാരണമുണ്ട്: സംരക്ഷിത ട്രാഫിക് IPsec നയത്തിൽ നിന്ന് പുറത്തെടുക്കുക, അതിനായി എഴുതിയ എൻകാപ്സുലേഷൻ നീക്കം ചെയ്യുന്നതിന് മുമ്പ്, അല്ലെങ്കിൽ നയം ഇനി ഇല്ലാത്ത ഒരു ഇന്റർഫേസിലേക്ക് ചൂണ്ടിക്കൊണ്ടിരിക്കും, അടുത്ത കോൺഫിഗറേഷൻ ലോഡ് ബന്ധമില്ലാത്ത എവിടെയോ പരാജയപ്പെടും. Linux-ൽ ഇതിനർത്ഥം ടണൽ ഇന്റർഫേസിന് മുമ്പ് സ്റ്റേറ്റ്, നയ എൻട്രികൾ ഇല്ലാതാക്കുക എന്നാണ്; റൂട്ടറിൽ, ടണലിന് മുമ്പ് ക്രിപ്റ്റോ മാപ്പോ പ്രൊഫൈൽ എൻട്രിയോ നീക്കം ചെയ്യുക.

പുനർനിർമ്മാണത്തിന് ശേഷം, നാല് സ്വീകാര്യതാ നിരീക്ഷണങ്ങൾ ഓരോന്നായി ആവർത്തിക്കുക: ബാഹ്യ എത്തിച്ചേരൽ, സ്ഥാപിതമായ IPsec അസോസിയേഷൻ, ഡിസൈൻ ഉൾപ്പെടുത്തുന്നിടത്ത് സ്ഥാപിതമായ PPP സെഷൻ, യഥാർത്ഥ ലക്ഷ്യ വിലാസത്തിലേക്കുള്ള ആന്തരിക കൈമാറ്റം. ഒരു പച്ച വെളിച്ചം ബാക്കി മൂന്നിന് തെളിവല്ല, ആ വിടവാണ് ഉൽപ്പാദനത്തിൽ ഏറ്റവും ദീർഘകാലം നിലനിൽക്കുന്ന പരാജയം — ടണൽ ഉയർന്നിരിക്കുന്നു, ഗൂഢാലേഖനം ചെയ്തിരിക്കുന്നു, ഒന്നും കൈമാറുന്നില്ല, കാരണം ആന്തരിക റൂട്ട് ഒരിക്കലും ചേർത്തിട്ടില്ല.

പൂരിപ്പിച്ച വർക്ക്ഷീറ്റ് ഉപകരണ കോൺഫിഗറേഷന്റെ അടുത്ത് സൂക്ഷിക്കുക. പൂരിപ്പിക്കാനാവാത്ത ഏത് കോളവും ജോലി നൽകാത്ത ഒരു പാളിയാണ്, ജോലിയില്ലാത്ത പാളി സാധാരണയായി സ്റ്റാക്കിൽ ഉണ്ടാകരുതാത്ത പാളിയാണ്.

അനുബന്ധ ലേഖനങ്ങൾ