C# OpenVPN තත්ත්ව නිරීක්ෂක: සැසිය බලන්න, ජාල කාඩ්පත නොවේ
NetworkAvailabilityChanged VPN සිදුවීමක් නොවේ. උමඟ හිමි සේවාදායකයාගේ තත්ත්ව ධාරාව කියවන්න, පැරණි පරීක්ෂණවලින් ආරක්ෂා වන්න, සහ සෑම සම්බන්ධතාවයකටම සූදානම ප්රකාශයට පත් කරන්න.
උමඟ මිය යන අතරතුරත් ඔබේ යෙදුම ක්රියාත්මක වේ. Wi-Fi තවමත් ක්රියාත්මකයි, අන්තර්ජාලය තවමත් පිළිතුරු දෙනවා, සහ යෙදුම රඳා පවතින පෞද්ගලික API අප්රවේශ්ය වී ඇත. මිනිසුන් මෙහි සාමාන්යයෙන් යොමු වන .NET සිදුවීම, NetworkAvailabilityChanged, එම තත්ත්වය කිසිසේත් විස්තර නොකරයි. එය යන්ත්රයේ සමස්ත තත්ත්වයේ වෙනසක් වාර්තා කරයි, සහ VPN විසන්ධි වී නැවත සම්බන්ධ වන අතරතුරත් එම තත්ත්වය සත්යව පවතින්න පුළුවන්. නිරීක්ෂකයා උමඟ හිමි සේවාදායකයා දෙස බැලිය යුතුය, ජාල තට්ටුවේ සාරාංශය දෙස නොවේ.
ලබා ගැනීම සමස්ත අගයක්, ඔබේ උමඟ නොවේ
NetworkAvailabilityChanged යන්ත්රයේ සමස්ත ලබා ගැනීමේ පිළිතුර වෙනස් වන විට ක්රියාත්මක වේ, සහ එම පිළිතුර loopback හෝ උමඟ හැර ඕනෑම සක්රීය අතුරුමුහුණතක් ගණන් කරයි.
Wi-Fi ක්රියාත්මකව තිබියදී VPN වැටීම එය මනින කිසිවක් වෙනස් නොකරයි, එබැවින් ඔබට වැදගත් එම අසාර්ථකත්වය අතරතුර සිදුවීම නිහඬව පවතින්න පුළුවන්.
තත්ත්ව ධාරාව උමඟ හිමි සේවාදායකයාට අයත් වේ
සම්බන්ධතාවය හිමි අංගය හඳුනා ගන්න: OpenVPN GUI හෝ සේවාව, OpenVPN Connect, හෝ ඔබේ යෙදුම ආරම්භ කර පාලනය කරන ක්රියාවලිය. මේවා වෙනස් ආධාරක අතුරුමුහුණත් සහිත වෙනස් හිමිකරුවන් වන අතර, නිරීක්ෂකයා යෙදවීමට ගැලපෙන එක භාවිත කළ යුතුය. ඔබට ඒකාබද්ධ වීමට අවසර ඇති OpenVPN ක්රියාවලියක් සඳහා, කළමනාකරණ අතුරුමුහුණත වර්තමාන තත්ත්වය, ඉතිහාසය සහ තත්ය කාලීන දැනුම්දීම් වාර්තා කරයි. ප්රාදේශීයකරණය වූ GUI ශීර්ෂකයේ connected යන වචනය සොයනවා වෙනුවට ලේඛනගත ව්යුහාත්මක පණිවිඩ විශ්ලේෂණය කරන්න.
කළමනාකරණ නාලිකාව වරප්රසාදිත පාලන මතුපිටකි, එබැවින් නව ශ්රාවකයෙකු විවෘත නොකරන්න, සහ GUI දැනටමත් ඇති නාලිකාවක් සඳහා එය සමඟ නොගැටෙන්න.
පරම්පරා ආරක්ෂක පැරණි ප්රතිඵල නවත්වයි
සෑම නිරීක්ෂණයක්ම නිශ්චිත සම්බන්ධතා උත්සාහයකට අයත් වේ. නව උත්සාහයක් ආරම්භ වන විට, නාලිකාව නැති වන විට, සහ සේවාදායකයා පිටවීම වාර්තා කරන විට පරම්පරා ගණකය වැඩි කරන්න.
A සම්බන්ධතාවය අතරතුර ආරම්භ වූ පරීක්ෂණයක් සලකා බලන්න. උමඟ වැටේ, B සම්බන්ධතාවය ආරම්භ වේ, පසුව A හි ප්රමාද වූ HTTP සාර්ථකත්වය පැමිණේ. ආරක්ෂකයක් නොමැතිව එම පැරණි ප්රතිඵලය B තවමත් සත්යාපනය වන අතරතුර සංදර්ශකය කොළ පැහැ කරයි. අවලංගු කිරීම නාස්ති වන කාර්යය අඩු කරයි, සහ පරම්පරා පරීක්ෂාව පැරණි සම්පූර්ණ වීම වර්තමාන තත්ත්වය වීම වළක්වයි:
var generation = _generation;
var reachable = await ProbeAsync(token);
if (generation != _generation) return;
Publish(reachable);
UI යැවීම වටාද එම නියමය යොදන්න, මන්ද marshalled යාවත්කාලීනය පරම්පරාව ඉදිරියට ගිය පසු පැමිණිය හැක.
ආරම්භ කිරීම සහ නැවත සම්බන්ධ වීම එක් ජීවන චක්රයකි
පළමු සම්බන්ධතාවය, නැවත සම්බන්ධ වීම සහ නාලිකා නැතිවීම එක් නියම කට්ටලයක් සහිත එක් ජීවන චක්රයක් ලෙස සලකන්න:
- අතුරුමුහුණත ඉඩ දෙන තැන එක් පියවරකින් වර්තමාන තත්ත්වය කියවා දැනුම්දීම්වලට දායක වන්න.
- සෑම නිරීක්ෂණයක්ම සම්බන්ධතා අනන්යතාවය සහ පරම්පරාව සමඟ ටැග් කරන්න.
- නැවත සම්බන්ධ වීම, පිටවීම, හෝ නැති වූ නිරීක්ෂණ නාලිකාවකදී සූදානම අවලංගු කරන්න.
- හිමිකරු ආරම්භ කිරීම අවසන් බව වාර්තා කළ පසුව පමණක් පෞද්ගලික සම්පත පරීක්ෂා කරන්න.
- තවමත් වර්තමාන පරම්පරාවට අයත් ප්රතිඵල පමණක් ප්රකාශයට පත් කරන්න.
නැති වූ නාලිකාවක් යනු නොදන්නා බවයි, විසන්ධි වීම නොවේ. නොදන්නා බව වාර්තා කිරීම ඔබට ඔප්පු කළ නොහැකි විසන්ධි වීමක් වාර්තා කිරීමට වඩා අවංක වන අතර, නැවත උත්සාහ කිරීමේ තර්කය අනුමානයක් මත ක්රියා කිරීම වළක්වයි.
සාක්ෂි වාර්තා කරන්න, බූලියන් නොවේ
නම් කළ සැසි තත්ත්වය සහ සම්පත් සූදානම වෙන වෙනම අගයන් ලෙස ආපසු දෙන්න, එක් එක් ඒවාට වයසක් සමඟ. යමක් තීරණය කළ යුතු පරිභෝජකයාට අවසාන සාර්ථක පරීක්ෂණයට හතළිස් තත්පර වයසක් ඇති බව දැකිය හැක, එය නැවුම් තොරතුරුවලට වඩා වෙනස් තොරතුරකි.
පොදු IP සෙවීමක් යනු පෞද්ගලික API අවශ්ය මාර්ගය භාවිත කළ බවට සාක්ෂියක් නොවේ, එබැවින් එය එසේ වූවාක් මෙන් ඉදිරිපත් නොකරන්න.
බලාත්මක කිරීම නිරීක්ෂකයාගෙන් පිටත තබන්න
ආපසු කැඳවීම සිදුවීමෙන් පසුව ක්රියාත්මක වේ. සිදුවීම සහ හසුරුවන්නා අතර යන්ත්රයෙන් කිසිදු පැකට්ටුවක් පිටවී නැති බවට එය සහතික විය නොහැක. සැලසුමට අවහිර කිරීම අවශ්ය නම්, එය ජාල ප්රතිපත්තිය විසින් සැපයිය යුතුය, සහ නිරීක්ෂකයාගේ කාර්යය ඔහුගේ ඇමතුම්කරුට සාක්ෂි පැහැදිලි කිරීමයි. දෙක මිශ්ර කිරීමෙන් බූලියන් එකක් තබා ගැනීම නිසා තමා ගිනිකොටුවක් යැයි සිතන කේතයක් ඇති වේ. බලාත්මක කිරීමේ ස්තරය අලස සහ පරීක්ෂා කළ හැකි ලෙස තබන්න, නිරීක්ෂකයා පාඨකයෙකු ලෙසම රැඳී සිටීමට ඉඩ දෙන්න.
එවිට UI ප්රශ්නය සරල වේ: දන්නා දේ එහි වයස සමඟ පෙන්වන්න, සහ නොදන්නා විට නොදන්නා යැයි කියන්න.