ZeroTier അംഗത്തെ OK എന്ന് കാണിക്കുന്നു, നെറ്റ്‌വർക്കിലും ചേർന്നു, എന്നിട്ടും ping ചെയ്യാൻ വിലാസമില്ല. ഈ സംയോജനം ബഗ് പോലെ തോന്നുന്നു, സാധാരണയായി ഇത് പിളർന്ന കോൺഫിഗറേഷനാണ്: അംഗത്തെ അംഗീകരിക്കുന്നത് ഒരു സ്വിച്ചാണ്, അതിന് വിലാസം നൽകുന്നത് മറ്റൊന്നാണ്. പൂൾ അല്ലെങ്കിൽ അനുവദന മോഡ് ഒരിക്കലും ക്രമീകരിച്ചിട്ടില്ലെങ്കിൽ നെറ്റ്‌വർക്കിന് ഒരു ഉപകരണം സ്വീകരിച്ചിട്ടും അതിന് ഒന്നും അനുവദിക്കാതിരിക്കാം.

ഏതെങ്കിലും ഒന്ന് മാറ്റുന്നതിന് മുമ്പ് ഇരു വശവും വായിക്കുക. ഉത്തരം രണ്ട് സ്ഥലങ്ങളിൽ കാണാം, അതിൽ ഒന്ന് മാത്രമാണ് കൺട്രോളറിൽ.

അംഗീകരണവും അനുവദനവും വ്യത്യസ്ത സ്വിച്ചുകളാണ്

ഈ നോഡിന് നെറ്റ്‌വർക്കിൽ പങ്കെടുക്കാമോ എന്ന് അംഗീകരണം ഉത്തരം നൽകുന്നു. പങ്കെടുത്തതിന് ശേഷം നെറ്റ്‌വർക്ക് അതിന് എന്ത് നൽകുന്നു എന്ന് വിലാസ അനുവദനം ഉത്തരം നൽകുന്നു, ആ ഉത്തരം വിലാസ പൂളിൽ നിന്നും അനുവദന മോഡിൽ നിന്നുമാണ് വരുന്നത്. ഒരു സെറ്റിംഗും മറ്റൊന്നിനെ അർത്ഥമാക്കുന്നില്ല. ഒന്ന് അനുമതിയാണ്, മറ്റൊന്ന് അനുവദനമാണ്.

കൺട്രോളർ കോൺഫിഗറേഷനിൽ സാധാരണയായി ഒരു മാനേജ്ഡ് റൂട്ട്, വിലാസ ശ്രേണി, സ്വയമേവയുള്ള അനുവദനം ഉപയോഗിക്കുന്നുണ്ടോ എന്ന് തീരുമാനിക്കുന്ന മോഡ് എന്നിവ ഉണ്ടാകും. മറ്റൊരു പരിതസ്ഥിതിയിൽ നിന്ന് നെറ്റ്‌വർക്ക് ID പകർത്തുന്നത് അംഗത്വം കൊണ്ടുവരും, ആ കോൺഫിഗറേഷനിൽ നിന്ന് ഒന്നും കൊണ്ടുവരില്ല.

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

LayerWhat it decidesWhere it is configured
MembershipWhether the node may joinMember authorization on the network
PoolWhich addresses exist to hand outNetwork address range
Assignment modeWhether they are handed out automaticallyNetwork v4/v6 assignment settings

അംഗത്തിന്റെ യഥാർത്ഥ അവസ്ഥ വായിക്കുന്നത്

കൺട്രോളർ ഉദ്ദേശിച്ചതല്ല, ക്ലയന്റ് യഥാർത്ഥത്തിൽ സ്വീകരിച്ചത് എന്തെന്ന് ചോദിക്കുക. ലളിതമായ പട്ടിക അവസ്ഥയുടെയും വിലാസത്തിന്റെയും കോളങ്ങൾ കാണിക്കുന്നു, JSON രൂപം ക്ലയന്റ് പ്രയോഗിച്ച നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷൻ, മാനേജ്ഡ് വിലാസങ്ങളും റൂട്ടുകളും ഉൾപ്പെടെ കാണിക്കുന്നു.

zerotier-cli listnetworks
zerotier-cli -j listnetworks | jq '.networks[] | {nwid, status, assignedAddresses}'

ഒരേ നെറ്റ്‌വർക്ക് ID-ക്ക് രണ്ട് ഔട്ട്‌പുട്ടുകളും താരതമ്യം ചെയ്യുക, ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തിന്റെ സ്വന്തം പട്ടികയിൽ കാണുന്ന ഭൗതിക അഡാപ്റ്ററുകൾക്കല്ല. ശൂന്യമായ വിലാസ ഗണത്തോടെ OK റിപ്പോർട്ട് ചെയ്യുന്ന വരി കണക്റ്റിവിറ്റി തകരാറല്ല, അനുവദനത്തിലെ വിടവ് സ്ഥിരീകരിക്കുന്നു. തെറ്റായ വരി വായിക്കുന്നതാണ് ഈ തെറ്റിന്റെ മറ്റേ പകുതി.

ACCESS_DENIED അവസ്ഥ അംഗീകരണത്തിലേക്ക് വിരൽ ചൂണ്ടുന്നു, അത് മറ്റൊരു അറ്റകുറ്റപ്പണിയാണ്. കമാൻഡിന് പ്രാദേശിക പ്രാമാണീകരണ ടോക്കൺ വായിക്കാൻ കഴിയുന്നില്ലെങ്കിൽ, പ്രശ്നം കൺട്രോളറുടെ നിരസിക്കലല്ല, പ്രാദേശിക അനുമതികളാണ്, തിരുത്തൽ നിങ്ങൾ ഇരിക്കുന്ന യന്ത്രത്തിൽ തന്നെയാണ്.

കൺട്രോളർ അയക്കുന്നത് ക്ലയന്റ് അവഗണിക്കുമ്പോൾ

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

ആ ഫ്ലാഗുകൾ പ്രാദേശിക നോഡിനെ മാത്രം ബാധിക്കുന്നു. അവ മാറ്റുന്നത് മറ്റ് അംഗങ്ങൾക്ക് ലഭിക്കുന്നത് മാറ്റുന്നില്ല, ഒരിക്കലും നിർവചിക്കാത്ത പൂൾ അത് ശരിയാക്കുന്നുമില്ല.

അതിനാൽ രോഗനിർണയത്തിന് രണ്ട് ശാഖകളുണ്ട്: ഒന്നുകിൽ കൺട്രോളർക്ക് നൽകാൻ വിലാസമില്ല, അല്ലെങ്കിൽ ക്ലയന്റ് നൽകിയ വിലാസം നിരസിച്ചു. അവ വ്യത്യസ്ത യന്ത്രങ്ങളിൽ വ്യത്യസ്ത അറ്റകുറ്റപ്പണികളിലേക്ക് നയിക്കുന്നു. JSON ഔട്ട്‌പുട്ട് അവയെ വേർതിരിക്കുന്നു, കാരണം വിലാസം ഒന്നുകിൽ നെറ്റ്‌വർക്കിന്റെ കോൺഫിഗറേഷനിൽ ഇല്ല, അല്ലെങ്കിൽ ഉണ്ട്, ക്ലയന്റിന്റെ പ്രയോഗിച്ച അവസ്ഥയിൽ ഇല്ല.

വിലാസം കണ്ടുപിടിക്കുന്നതിനു പകരം എന്ത് ശരിയാക്കണം

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

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

വിലാസം പ്രത്യക്ഷപ്പെട്ടാൽ, യഥാർത്ഥത്തിൽ ആവശ്യമായിരുന്നത് പരിശോധിക്കുക: ഒരു പിയർ, ഒരു സേവനം, അല്ലെങ്കിൽ ഗേറ്റ്‌വേയ്ക്ക് പിന്നിലെ സബ്‌നെറ്റ്. അംഗത്തിന് പിന്നിലെ LAN-ൽ എത്താൻ അംഗത്വത്തിനപ്പുറം റൂട്ടിംഗും ഫോർവേഡിംഗും ആവശ്യമാണ്, പൊതുവായ ഇന്റർനെറ്റ് ആക്സസിന് എക്സിറ്റ് നോഡ് ആവശ്യമാണ്, അതിനാൽ പ്രവർത്തിക്കുന്ന വിലാസം ആ പരീക്ഷണത്തിന്റെ തുടക്കമാണ്, അവസാനമല്ല.

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