துவக்கத்தில் இயங்காத OpenVPN சேவையகத்திற்கு இரண்டு தீர்வுகள் முன்வைக்கப்படுகின்றன: முகவரிக்காகக் காத்திருப்பது, அல்லது இணைப்பு வெற்றிபெறும் வரை சேவை மீண்டும் முயல அனுமதிப்பது. இரண்டும் ஒரே அறிகுறியைக் கையாள்கின்றன, ஆனால் தோல்வியின் போது வேறுவிதமாக நடந்துகொள்கின்றன. காத்திருப்பு ஒரு குறிப்பிட்ட முன்நிபந்தனையை வெளிப்படுத்தி, அது இல்லாதபோது சத்தமாகத் தோல்வியடைகிறது; மீண்டும் முயல்வது அந்த நிபந்தனையை மறைத்து தொடர்ந்து முயற்சிக்கிறது. உங்கள் unit-க்கு எது பொருந்தும் என்பது, அந்த முகவரி வடிவமைக்கப்பட்ட சார்பா அல்லது நேரத்தின் தற்செயலா என்பதைப் பொறுத்தது.

நிலையான தூக்கம் எதற்கும் காத்திருக்காமல், எதற்காகக் காத்திருந்தது என்பதையும் தெரிவிக்காது; இரண்டும் அதைவிட மேலானவை.

local விருப்பம் உண்மையில் என்ன கோருகிறது

local, டீமன் தன் சாக்கெட்டை இணைக்கும் முகவரியைக் குறிப்பிடுகிறது; இன்னும் இல்லாத ஒரு முகவரியுடன் இணைப்பது, கோரப்பட்ட முகவரி பற்றிய பிழையுடன் உடனே தோல்வியடைகிறது. இந்த விருப்பம் இல்லாதபோது டீமன் அனைத்து முகவரிகளிலும் கேட்கிறது; அதனால்தான் இன்டர்ஃபேஸ் இன்னும் எழாத இயந்திரத்திலும் அதே profile வேலை செய்கிறது: நீங்கள் குறிப்பிட்ட ஒரு முகவரிக்குப் பதிலாக எல்லா இடங்களிலும் கேட்கிறது. அந்த வேறுபாடே முழுத் தோல்வியாகும், மேலும் மறுதொடக்கம் வரை அது கண்ணுக்குத் தெரியாமல் இருக்கும்.

இன்டர்ஃபேஸ் பொதுவான பொருளில் எழுந்திருப்பதே தேவை அல்ல. முகவரி இணைப்பின் அந்தக் கணத்தில் சரியான இன்டர்ஃபேஸுக்கு ஒதுக்கப்பட்டிருக்க வேண்டும்; அது அதே டீமன் பின்னர் உருவாக்கும் சுரங்கப்பாதை அல்ல, அடிப்படை இன்டர்ஃபேஸாக இருக்க வேண்டும். உள்நுழைந்த சில நிமிடங்களுக்குப் பின் செய்யப்படும் சோதனை, துவக்க வரிசையைப் பற்றி எதையும் நிரூபிக்காது.

முகவரிக்காகக் காத்திருப்பது vs இணைப்பை மீண்டும் முயல்வது

காத்திருப்பு என்பது, முகவரி தோன்றும் வரை விசாரிக்கும் ExecStartPre; முயற்சிகளின் எண்ணிக்கை வரையறுக்கப்பட்டது, நேரம் முடிந்தால் பூஜ்ஜியமல்லாத வெளியேறல். மீண்டும் முயல்வது என்பது முதன்மைச் செயல்முறை தோல்வியடைய அனுமதித்து, சேவை மேலாளரை அதை மீண்டும் தொடங்கக் கேட்பது; எடுத்துக்காட்டாக Restart=on-failure உடன் RestartSec=5. முதல் முறை இல்லாத முன்நிபந்தனையை தோல்வியுற்ற unit ஆக அறிவிக்கிறது; இரண்டாவது அதை இறுதியில் நிற்கும் மறுதொடக்கங்களின் தொடராக அறிவிக்கிறது; journal-ல் இது சத்தமானது, ஆனால் நீங்கள் எதிர்பார்க்க முடியாத காரணங்களால் தாமதமாக வரும் முகவரியைத் தாங்கும்.

முகவரி வடிவமைக்கப்பட்ட சார்பாக இருந்தால் காத்திருப்புக்கு முன்னுரிமை தாருங்கள்; முகவரி வழக்கமாகத் தோன்றினாலும் அதன் நேரம் மாறினால் மீண்டும் முயல்வதற்கு முன்னுரிமை தாருங்கள். இரண்டையும் இணைப்பது நியாயமானது: வரையறுக்கப்பட்ட காத்திருப்பு வழக்கமான நிலையையும், மறுதொடக்கக் கொள்கை விதிவிலக்கையும் ஈடுசெய்கிறது. இரண்டும் முடிவில்லாமல் இயங்கக்கூடாது; ஏனெனில் எல்லையற்று முயலும் unit தவறான கட்டமைப்பை அறிவிக்காமல் மறைக்கிறது.

network-online.target ஏன் போதாது

network-online.target, செயலில் உள்ள வலையமைப்பு செயலாக்கம் online என்பதற்கு வழங்கும் பொருளை மட்டுமே உறுதியளிக்கிறது, அதற்கு மேல் எதையும் இல்லை. systemd-networkd-இல், அந்த இலக்கு எப்போது அடையப்படுகிறது என்பதை systemd-networkd-wait-online தீர்மானிக்கிறது; அதன் இயல்புநிலை online கருத்து உங்கள் குறிப்பிட்ட முகவரி தோன்றுவதற்கு முன்பே பூர்த்தியாகலாம். NetworkManager-இன் கீழ், wait-online சேவை தன் சொந்த விதிகளைப் பயன்படுத்துகிறது. இலக்குக்குப் பின் வரிசைப்படுத்துவது ஒரு உறுதியான அடித்தளம், ஆனால் ஒரு முகவரி, DNS பதில் அல்லது தொலை peer தயாராக இருக்கிறது என்பதற்கு உத்தரவாதம் அல்ல.

இதே பகுத்தறிவு வழக்கமான மாற்றுகளையும் நீக்குகிறது. டெஸ்க்டாப்பின் தானியங்கித் தொடக்கப் பதிவு, சேவையகத்தில் ஒருபோதும் திறக்காத பயனர் அமர்வுக்காகக் காத்திருக்கிறது; தாமதமான cron கட்டளை, தோன்றும் என்று எதிர்பார்த்த வளத்தைப் பெயரிடாமல் கடந்த நேரத்தைச் சேர்க்கிறது. இரண்டும் மாதக்கணக்கில் வெற்றிகரமாகத் தெரியலாம், பின்னர் முக்கியமான ஒரே துவக்கத்தில் தோல்வியடையலாம்.

குளிர் துவக்கத்திற்குப் பின் இணைப்பைச் சரிபார்க்கவும்

சேவை மறுதொடக்கத்திற்குப் பதிலாக உண்மையான குளிர் துவக்கத்தால் சரிபார்க்கவும், ஏனெனில் மறுதொடக்கம் துவக்க வரிசை உருவாக்கியிருக்க வேண்டிய முகவரியைப் பெற்றுக்கொள்கிறது. துவக்கத்திற்குப் பின் ss -lntp அல்லது ss -lunp ஒவ்வொரு கேட்பவரும் உண்மையில் இணைத்த உள்ளூர் முகவரியைக் காட்டுகிறது; journalctl -b -u openvpn-server@server முதல் முயற்சி தோல்வியடைந்ததா என்பதைக் காட்டுகிறது. இணைக்கப்பட்ட முகவரியை profile-ல் உள்ளதுடன் ஒப்பிட்டு, வலையமைப்பு மீண்டும் இணைந்த பின் ஒப்பீட்டை மீண்டும் செய்யுங்கள்.

profile-க்கு ஒருபோதும் நிலையான முகவரி தேவைப்படவில்லை என்றால், local-ஐ நீக்குவது நியாயமான எளிமைப்படுத்தல்; ஆனால் அதை பிழைத்திருத்தப் பழக்கமாக அல்ல, பாதுகாப்பு முடிவாக ஆக்குங்கள்.

கேட்பவரை விரிவுபடுத்துவது யார் அதை அடைய முடியும் என்பதை மாற்றுகிறது, எனவே அந்த மாற்றத்தை அதைக் கட்டுப்படுத்தியிருக்க வேண்டிய firewall கொள்கையுடன் இணையுங்கள். ஒவ்வொரு இன்டர்ஃபேஸிலும் நம்பகமாகத் தொடங்கும் சேவை அசல் பிரச்சினையைத் தீர்க்கவில்லை; அது பிரச்சினையை வலையமைப்பின் விளிம்புக்கு நகர்த்தியுள்ளது.

தொடர்புடைய கட்டுரைகள்