ആരോ VPN ക്ലൈന്റ് വീണ്ടും കണക്ട് ചെയ്യാൻ ആവശ്യപ്പെടുന്നു, ഈ അഭ്യർത്ഥന മൂന്ന് വ്യത്യസ്ത കാര്യങ്ങൾ അർത്ഥമാക്കാം. ഒരു പ്രാമാണീകരിച്ച സെഷൻ ഉപേക്ഷിക്കുക, ഒരു UDP സെർവർ പോകുന്നു എന്ന് ഓരോ ക്ലൈന്റിനും അറിയിക്കുക, അല്ലെങ്കിൽ ഡീമൺ തന്നെ പുനരാരംഭിക്കുക എന്നിവ അർത്ഥമാക്കാം. ഓരോന്നിനും വ്യത്യസ്ത സ്വാധീന ആരം ഉണ്ട്, തെറ്റായ തിരഞ്ഞെടുപ്പ് ഒരു ഉപയോക്താവിനുള്ള പരിഹാരത്തെ മുഴുവൻ സേവന നിർത്തലാക്കലാക്കി മാറ്റുന്നു. പരിധിയാണ് തീരുമാനം, കമാൻഡ് അതിൽ നിന്ന് വരുന്നു.

ഏത് നിയന്ത്രണം ഉപയോഗിക്കണം എന്ന് ചോദിക്കുന്നതിന് മുമ്പ് ആരെ ബാധിക്കണം എന്ന് ചോദിക്കുക.

ഒരു ഇൻസ്റ്റൻസ്: മാനേജ്മെന്റ് ഇന്റർഫേസ്

കോൺഫിഗർ ചെയ്ത മാനേജ്മെന്റ് ഇന്റർഫേസിന് കണക്ട് ചെയ്ത ഇൻസ്റ്റൻസുകൾ പട്ടികപ്പെടുത്താനും അവയിൽ കൃത്യമായി ഒന്ന് ഉപേക്ഷിക്കാനും കഴിയും. ഓരോ സെഷനും ഒരു ക്ലൈന്റ് ഐഡന്റിഫയർ വഹിക്കുന്നു, കൂടാതെ client-kill CID പൊതുവായ ഒരു പേരിന് പകരം ആ ഐഡന്റിഫയറിനെ ലക്ഷ്യമിടുന്നു. നിലവിലെ സ്റ്റാറ്റസ് ഔട്ട്പുട്ടിൽ നിന്ന് ജീവനുള്ള ഐഡന്റിഫയർ വായിക്കുക, കാരണം പഴയ ലോഗിൽ നിന്ന് പകർത്തിയ മൂല്യം ഇനി നിലവിലില്ലാത്ത ഒരു സെഷനെ സൂചിപ്പിക്കുന്നു. ഇൻസ്റ്റൻസ് ഉപേക്ഷിക്കുന്നത് ആ കണക്ഷൻ അവസാനിപ്പിക്കുന്നു, മറ്റൊന്നുമല്ല.

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

UDP എക്സിറ്റ് അറിയിപ്പ് ഓരോ ക്ലൈന്റിനുമുള്ള കമാൻഡ് അല്ല

explicit-exit-notify എക്സിറ്റ്, പുനരാരംഭം എന്നിവയുടെ സംഭവങ്ങളെക്കുറിച്ചുള്ള ഒരു കോൺഫിഗറേഷൻ നിർദ്ദേശമാണ്. UDP ക്ലൈന്റിൽ അത് സെഷൻ അവസാനിക്കുന്നു എന്ന് മറുഭാഗത്തെ അറിയിക്കുന്നു, സംഖ്യാ ആർഗ്യുമെന്റ് അറിയിപ്പ് എത്ര തവണ ആവർത്തിക്കുന്നു എന്ന് നിയന്ത്രിക്കുന്നു. സെർവർ UDP-യിൽ പ്രവർത്തിക്കുമ്പോൾ കണക്ട് ചെയ്ത ക്ലൈന്റുകൾക്ക് പുനരാരംഭ നിയന്ത്രണ സന്ദേശം അയയ്ക്കുന്നു, രേഖപ്പെടുത്തിയ മൂല്യങ്ങൾ ഒരേ സെർവറിലേക്ക് വീണ്ടും കണക്ട് ചെയ്യുന്നതും മറ്റൊരു റിമോട്ട് എൻട്രിയിലേക്ക് മാറുന്നതും വേർതിരിക്കുന്നു. ഇത് വിശാലമായ പ്രേക്ഷകരുള്ള ഒരു ജീവിതചക്ര സിഗ്നലാണ്.

അതിൽ ഒന്നും ഏതെങ്കിലും നിമിഷത്തിൽ ഏതെങ്കിലും ക്ലൈന്റിനെ തിരഞ്ഞെടുക്കുന്നില്ല. അതിനെ വീണ്ടും കണക്ട് ബട്ടണായി കാണുന്നത് ഒരേസമയം എല്ലാ കണക്ട് ചെയ്ത സെഷനുകളിലും എത്തുന്നു.

സിഗ്നലുകൾ സെഷനിൽ അല്ല, പ്രോസസ്സിൽ പ്രവർത്തിക്കുന്നു

SIGUSR1 കോൺഫിഗറേഷൻ വീണ്ടും വായിക്കാതെ തന്റെ കണക്ഷൻ പുനരാരംഭിക്കാൻ പ്രവർത്തിക്കുന്ന പ്രോസസ്സിനോട് ആവശ്യപ്പെടുന്നു, കൂടാതെ സ്ഥിരതയുടെ ഓപ്ഷനുകൾ ആ പുനരാരംഭത്തിൽ നിന്ന് എന്ത് അതിജീവിക്കും എന്ന് തീരുമാനിക്കുന്നു. SIGHUP കൂടുതൽ മുന്നോട്ട് പോകുന്നു: അത് കോൺഫിഗറേഷൻ ഫയൽ വീണ്ടും വായിക്കുകയും തന്റെ വിഭവങ്ങൾ വീണ്ടും തുറക്കുകയും ചെയ്യുന്നു. SIGTERM ഉം SIGINT ഉം ക്രമീകൃതമായ അടച്ചുപൂട്ടൽ ആവശ്യപ്പെടുന്നു. ഇവ പ്രോസസ്സ് തലത്തിലുള്ള പ്രവർത്തനങ്ങളാണ്: ഒന്നിലധികം ക്ലൈന്റുകളുള്ള സെർവറിൽ അവ പ്രോസസ്സ് വഹിക്കുന്ന എല്ലാ സെഷനുകളെയും ബാധിക്കുന്നു, ടിക്കറ്റിൽ പേരിട്ട സെഷനെയല്ല.

പ്രോസസ്സ് ഒരു സേവന മാനേജറിന് കീഴിൽ പ്രവർത്തിക്കുമ്പോൾ, പ്രോസസ്സ് പട്ടികയിൽ കണ്ട PID-യിലേക്ക് സിഗ്നൽ അയയ്ക്കുന്നതിന് പകരം മാനേജറിന്റെ സ്വന്തം നിയന്ത്രണം ഉപയോഗിക്കുക. മാനേജർ ഏത് സിഗ്നൽ അയയ്ക്കുന്നു എന്ന് കാണാൻ യൂണിറ്റ് വായിക്കുക, കാരണം പുനരാരംഭവും വീണ്ടും ലോഡ് ചെയ്യലും ഒരേ ഡീമണിൽ വ്യത്യസ്ത കാര്യങ്ങൾ ചെയ്യുന്നു.

നിയന്ത്രണം തിരഞ്ഞെടുക്കുന്നതിന് മുമ്പ് പരിധി തീരുമാനിക്കുക

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

വീണ്ടും കണക്ട് ബട്ടൺ ലഭിക്കാൻ പ്രാമാണീകരണമില്ലാത്ത ഒരു നിയന്ത്രണ ശ്രോതാവ് ചേർക്കുന്നത് പോർട്ട് എത്താൻ കഴിയുന്ന ആർക്കും ആ ബട്ടണിനേക്കാൾ വളരെ കൂടുതൽ നൽകുന്നു.

പുതിയ സെഷൻ പരിശോധിക്കുക, വിച്ഛേദനമല്ല

വിച്ഛേദന സംഭവം പഴയ സെഷൻ അവസാനിച്ചു എന്ന് തെളിയിക്കുന്നു. പുതിയ സെഷൻ പ്രാമാണീകരിക്കപ്പെടുന്നു, വിലാസം സ്വീകരിക്കുന്നു, റൂട്ടുകൾ ഇൻസ്റ്റാൾ ചെയ്യുന്നു, അല്ലെങ്കിൽ ഉപയോക്താവിന് ആവശ്യമായ വിഭവത്തിൽ എത്തുന്നു എന്നതിനെക്കുറിച്ച് അത് ഒന്നും പറയുന്നില്ല. പുതിയ ഐഡന്റിഫയർ പരിശോധിക്കുക, പിന്നീട് ടണൽ നില, പിന്നീട് ഒരു യഥാർത്ഥ വിഭവം. ആ മൂന്ന് ഘട്ടങ്ങളാണ് വീണ്ടും കണക്ട് ചെയ്യലും പ്രവർത്തിക്കുന്ന കണക്ഷനും തമ്മിലുള്ള വ്യത്യാസം.

മാറ്റ രേഖയിൽ പരിധി എഴുതുക. ക്ലൈന്റ് പങ്കിട്ട സെർവറിലെ നാൽപ്പതിൽ ഒന്നായിരുന്നപ്പോൾ 'ഞാൻ ക്ലൈന്റ് വീണ്ടും കണക്ട് ചെയ്തു' ഒരു വിവരണമല്ല.

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