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

DNS വരി എന്തിലേക്ക് പാഴ്സ് ചെയ്യപ്പെടുന്നു

ക്ലയന്റ് എൻട്രി ഒരു പട്ടികയായി വായിച്ച് ഓരോ ഇനത്തെയും അതിന്റെ ആകൃതി അനുസരിച്ച് വർഗ്ഗീകരിക്കുന്നു. വിലാസം പോലെ തോന്നുന്നതെല്ലാം DNS സെർവറായി മാറുന്നു; ഡൊമെയ്ൻ പോലെ തോന്നുന്നതെല്ലാം തിരയൽ സഫിക്സായി മാറുന്നു. രണ്ടും ടണൽ ക്രമീകരണങ്ങളിൽ എത്തുന്നു, പക്ഷേ വ്യത്യസ്ത ഫീൽഡുകളിൽ. ഒരു സ്വകാര്യ റിസോൾവറും ഒരു ആന്തരിക ഡൊമെയ്നും വഹിക്കുന്ന ടണലിനുള്ള ഉദാഹരണ വരി ഇങ്ങനെ കാണുന്നു.

DNS = 10.24.8.53, lab.internal.example

വിലാസം റിസോൾവർ നൽകുന്നു. ഡൊമെയ്ൻ ഒരു സഫിക്സ് നൽകുന്നു, അത് ക്ലയന്റിന് ചെറിയ പേര് ടൈപ്പ് ചെയ്യാനും സിസ്റ്റത്തിന് ചോദിക്കുന്നതിന് മുൻപ് ബാക്കി ചേർക്കാനും അനുവദിക്കുന്നു. അവയിലൊന്നും റിസോൾവറിനെ ആ ഡൊമെയ്നിൽ പരിമിതപ്പെടുത്തുന്നതിനെക്കുറിച്ച് ഒന്നും പറയുന്നില്ല, ആളുകൾ പ്രതീക്ഷിക്കുന്നതും കിട്ടാത്തതുമായ ഭാഗം അതാണ്. പ്ലാറ്റ്ഫോമിൽ ഒരു ഫീൽഡ് മാത്രം ആ നിയന്ത്രണം പ്രകടിപ്പിക്കാൻ കഴിയും, അത് ഈ ഫീൽഡ് അല്ല.

Apple-ന്റെ രണ്ട് ഫീൽഡുകൾ, രണ്ട് വ്യത്യസ്ത ജോലികൾ

Apple തന്റെ DNS ക്രമീകരണ ഒബ്ജക്റ്റിൽ ആ വ്യത്യാസം വെളിപ്പെടുത്തുന്നു. തിരയൽ ഡൊമെയ്ൻ പട്ടിക ഒറ്റ-ലേബൽ ഹോസ്റ്റ്നെയിമുകൾ യോഗ്യമാക്കാൻ ഉപയോഗിക്കുന്ന പട്ടികയായി രേഖപ്പെടുത്തിയിരിക്കുന്നു: വെറും ഹോസ്റ്റ്നെയിം ടൈപ്പ് ചെയ്യുക, സിസ്റ്റം ഓരോ സഫിക്സും ക്രമത്തിൽ ചേർത്തേക്കാം. ഇത് പൂർത്തീകരണ നിയമമാണ്, റൂട്ടിംഗ് നിയമമല്ല. ആ പട്ടികയിൽ ഒന്നും ഏത് സെർവറിനോട് ചോദിക്കണം എന്ന് തീരുമാനിക്കുന്നില്ല.

പൊരുത്ത ഡൊമെയ്ൻ പട്ടിക മറ്റൊരു ഗുണമാണ്. ഏത് നെയിംസ്പെയ്സുകൾ ഈ DNS ക്രമീകരണ കൂട്ടം ഉപയോഗിക്കുന്നു എന്ന് അത് തീരുമാനിക്കുന്നു, ശൂന്യമായ എൻട്രി ഒരു നിർദ്ദിഷ്ട സഫിക്സല്ല, ഡിഫോൾട്ട് ഡൊമെയ്നിനെ സൂചിപ്പിക്കുന്നു. പാക്കറ്റ്-ടണൽ ക്രമീകരണ ജനറേറ്റർ Apple ക്ലയന്റിൽ ആ മാതൃക പിന്തുടരുന്നു. പാഴ്സ് ചെയ്ത തിരയൽ സഫിക്സുകൾ തിരയൽ പട്ടികയിൽ ഇടുന്നു, സെർവറുകൾ ഉണ്ടെങ്കിൽ പൊരുത്ത പട്ടിക ശൂന്യ സ്ട്രിംഗായി സജ്ജീകരിക്കുന്നു. ഫലം സിസ്റ്റം അയക്കുന്ന എല്ലാത്തിനും ഉത്തരം നൽകുന്ന ടണൽ റിസോൾവറും ചെറിയ പേരുകൾക്ക് സഹായിക്കുന്ന ഒരു സഫിക്സുമാണ്.

അതിനാൽ ആ വരിയിലെ ഡൊമെയ്ൻ ഒരു നെയിംസ്പെയ്സ് തിരഞ്ഞെടുക്കലല്ല. മറ്റൊന്ന് ചേർക്കുന്നത് ടണൽ ഉപയോഗിക്കുന്ന ക്വറികൾ ചുരുക്കുന്നില്ല, നീക്കം ചെയ്യുന്നത് അവ വിശാലമാക്കുന്നുമില്ല. മാറുന്ന ഒരേയൊരു കാര്യം എത്ര ചെറിയ പേരുകൾ പൂർത്തിയാകുന്നു എന്നതാണ്.

എന്തുകൊണ്ട് ഓരോ പേരും ഇപ്പോഴും ടണൽ റിസോൾവറിൽ എത്തുന്നു

ശൂന്യമായ പൊരുത്ത എൻട്രിയോടെ, സാധാരണ പേരുകൾക്ക് ടണൽ ഒരു സ്ഥാനാർത്ഥി റിസോൾവറാണ്, കമ്പനി ഡൊമെയ്നിന് മാത്രമല്ല. പൂർണ്ണ-ടണൽ കോൺഫിഗറേഷനിൽ ഇത് സാധാരണയായി കാര്യമാക്കുന്നില്ല, കാരണം എല്ലാ ട്രാഫിക്കും ഏതായാലും ടണലിലാണ്. വിഭജിത ടണലിൽ ഇത് വളരെ പ്രധാനമാണ്. പൊതു പേരുകൾ ഇപ്പോൾ ഒരു സ്വകാര്യ മേഖല മാത്രം സൂക്ഷിക്കുന്ന റിസോൾവർ പരിഹരിക്കാം, പരാജയം തകർന്ന VPN പോലെ തോന്നുന്നു, എന്നാൽ യഥാർത്ഥത്തിൽ അത് നെയിംസ്പെയ്സിന്റെ ഒരു ഭാഗത്തിന് മാത്രം ഉത്തരം നൽകുന്ന റിസോൾവറാണ്. ടണൽ കുഴപ്പമില്ല, ക്വറികൾ പുറത്തുപോകുന്നു, ഉത്തരങ്ങൾ ശൂന്യമായി തിരികെ വരുന്നു.

രണ്ട് പരിഹാരങ്ങൾ ലഭ്യമാണ്, അവ വ്യത്യസ്ത തീരുമാനങ്ങളാണ്. ടണൽ റിസോൾവറിനെ പൊതു പേരുകൾ അംഗീകൃത പാതയിലൂടെ കൈമാറുന്ന പൂർണ്ണ റിസോൾവറാക്കുക, അല്ലെങ്കിൽ ഡൊമെയ്ൻ പട്ടികയ്ക്ക് പകരം ക്ലയന്റ് കോൺഫിഗറേഷൻ മാറ്റി പൊതു പേരുകൾ അങ്ങോട്ട് അയക്കുന്നത് നിർത്തുക. ആദ്യത്തേത് ഓരോ ക്വറിയും ടണലിൽ നിർത്തി അപ്സ്ട്രീമിനെ വിശ്വസിക്കുന്നു. രണ്ടാമത്തേത് ചില ക്വറികൾ പ്രാദേശികമായി നിർത്തി ടണൽ ഓഫ് ആയിരിക്കുമ്പോൾ സ്വകാര്യ പേരുകൾ പരിഹരിക്കുന്നത് നിർത്തിയേക്കാം എന്ന് അംഗീകരിക്കുന്നു.

വിഭജിത DNS-ന് യഥാർത്ഥത്തിൽ എന്ത് വേണ്ടിവരും

നെയിംസ്പെയ്സ്-പരിമിത റിസോൾവർ നയത്തിന് അത് പ്രകടിപ്പിക്കാൻ അനുവദിക്കുന്ന ഒരു ക്ലയന്റ് വേണം: Apple പ്ലാറ്റ്ഫോമുകളിൽ ഡൊമെയ്നുകൾ പൊരുത്തപ്പെടുത്തുക, അല്ലെങ്കിൽ നിങ്ങൾ ഉപയോഗിക്കുന്ന ഉൽപ്പന്നത്തിൽ തുല്യമായ ക്രമീകരണം. സെർവറുകളും സഫിക്സുകളും മാത്രം സ്വീകരിക്കുന്ന കോൺഫിഗറേഷൻ ഫീൽഡിന് അത് എങ്ങനെ വിരാമചിഹ്നം ചെയ്താലും പ്രകടിപ്പിക്കാനാവില്ല. പ്രൊഫൈലിന് ആ നയം വഹിക്കാം, കാരണം അത് കണക്ഷൻ സമയത്തെ സൂചനയല്ല, നിർവഹിച്ച കോൺഫിഗറേഷനെ വിവരിക്കുന്നു. ഡൊമെയ്ൻ, സെർവറുകൾ, ആ ഡൊമെയ്ൻ ലഭ്യമല്ലാത്തപ്പോൾ എന്ത് സംഭവിക്കണം എന്നിവ അതിന് പേരിടാം. ക്രമീകരണവും കരാറും തമ്മിലുള്ള വ്യത്യാസം അതാണ്.

നിർവഹിച്ച Apple ഉപകരണങ്ങളിൽ ഇത് സാധാരണയായി ഡൊമെയ്ൻ-നിർദ്ദിഷ്ട DNS ക്രമീകരണങ്ങൾ വഹിക്കുന്ന കോൺഫിഗറേഷൻ പ്രൊഫൈലിലൂടെ നൽകുന്നു. ഇത് WireGuard കോൺഫിഗറേഷൻ ഫയലിൽ നിന്ന് വ്യത്യസ്തമായ സംവിധാനമാണ്, ക്ലയന്റ് പ്രൊഫൈലിനെ മാനിച്ചാൽ മാത്രം രണ്ടും ഒരുമിച്ച് നിലനിൽക്കും. രണ്ട് ഉൽപ്പന്നങ്ങളും ഒരേപോലെ പെരുമാറുന്നു എന്ന് അനുമാനിക്കുന്നതിന് മുൻപ് നിങ്ങളുടെ ക്ലയന്റ് ആ ഫീൽഡിനെ യഥാർത്ഥത്തിൽ എന്ത് വിളിക്കുന്നു എന്ന് പരിശോധിക്കുക. Mac-ലെ wg-quick സ്ക്രിപ്റ്റും iPhone-ലെ WireGuard ആപ്പും സമാന വരികൾ വായിച്ച് വ്യത്യസ്ത പാളികളിലൂടെ ഇൻസ്റ്റാൾ ചെയ്യുന്നു.

ഇൻസ്റ്റാൾ ചെയ്ത ക്രമീകരണങ്ങൾ വായിക്കുക, കോൺഫിഗ് അല്ല

Mac-ൽ സിസ്റ്റം എന്തിലാണ് അവസാനിച്ചതെന്ന് പരിശോധിക്കാം, അത് നിങ്ങൾ എഴുതിയ ഫയൽ വീണ്ടും വായിക്കുന്നതിനേക്കാൾ വിവരദായകമാണ്. റിസോൾവർ പട്ടിക ഏത് സെർവറുകൾ ഏത് ഡൊമെയ്നുകൾക്കായി കോൺഫിഗർ ചെയ്തിട്ടുണ്ടെന്ന് കാണിക്കുന്നു, സ്കോപ്പ് ചെയ്ത ക്വറികൾ ഏതാണ് ജയിച്ചതെന്ന് കാണിക്കുന്നു. വരി കേടാക്കുന്ന ക്ലയന്റ് അത് നിങ്ങൾ എഴുതിയ ഫയലിൽ അല്ല, ഇവിടെ കാണിക്കുന്നു. iOS-ൽ തുല്യമായ കമാൻഡ് ലൈൻ ഇല്ല, അതിനാൽ അവിടത്തെ തെളിവ് ഒരു ഫലമാണ്: ടണലിലൂടെ പരിഹരിക്കപ്പെടുന്ന സ്വകാര്യ പേരും, അതിന്റെ ഉത്തരം ഏത് റിസോൾവർ മറുപടി നൽകി എന്ന് വെളിപ്പെടുത്തുന്ന പൊതു പേരും.

scutil --dns | grep -A3 resolver
networksetup -getdnsservers Wi-Fi

ഈ രണ്ട് കമാൻഡുകൾ നിലവിലെ റിസോൾവർ കോൺഫിഗറേഷനും സജീവ സേവനത്തിന്റെ DNS സെർവറുകളും പ്രിന്റ് ചെയ്യുന്നു. ടണൽ റിസോൾവർ ഡൊമെയ്ൻ നിയന്ത്രണമില്ലാത്ത ഡിഫോൾട്ട് റിസോൾവറായി കാണപ്പെടുന്നെങ്കിൽ, കോൺഫിഗറേഷൻ ക്ലയന്റ് ആവശ്യപ്പെട്ടത് കൃത്യമായി ചെയ്യുന്നു. സംവിധാനം മാറ്റി അത് ശരിയാക്കുക, രണ്ടാമതൊരു സഫിക്സ് ചേർത്ത് പെരുമാറ്റം മാറുമെന്ന് പ്രതീക്ഷിച്ച് അല്ല.

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