كيف تقتل الزومبي بكفاءة أكبر باستخدام ZeroTier



لديك خادم تحت السرير ، ومنزل ذكي في البلد ، وكاميرا IP في المرآب. كيف يمكن توحيدهم جميعًا في شبكة واحدة للوصول إلى جميع الأجهزة؟ في مثل هذه الحالات ، من المعتاد استخدام VPN ، ولكن هناك حل أكثر فعالية - ZeroTier. يقوم بإنشاء شبكة نظير إلى نظير (P2P) بين الأجهزة ، في حين أن تكوينها أسهل بكثير من VPN.

لقد نشرنا بالفعل سلسلة من المقالات حول تنظيم شبكة P2P لدعم المستخدم عن بعد. في ذلك ، نظرنا في خيار بناء شبكة افتراضية لامركزية باستخدام ZeroTier. على عكس حلول VPN التقليدية ، يفتقر ZeroTier إلى خادم إدارة مركزي ويتم إنشاء اتصال مباشرة بين الأجهزة.

غالبًا ما أستخدم ZeroTier لحالتين: الاتصال بأجهزة العميل لتقديم الدعم وقتل الزومبي في الرماة. أصبح من المثير للاهتمام بالنسبة لي مقارنة طرق بديلة للاتصال على شبكة محلية.

إذا كنت ترغب في فهم مبدأ ZeroTier ، فقد أصدرنا مقالة مفصلة مع التحليل .

اتصال RDP للدعم عن بعد


في كل يوم تقريبًا ، يجب أن أتواصل مع عميل لقمع تمرد الآلة للمساعدة في حل شيء ما. في جائحة ، هؤلاء هم زملاء يعملون من المنزل. 

للعمل مع الخدمات الداخلية للشركة ، مطلوب المصادقة من شبكة الشركة وقد تم رفع VPN على جهاز التوجيه المكتبي لفترة طويلة في حال كنت بحاجة إلى القيام بشيء ما في مكان ما. 

بالنسبة لي ، ليس من الصعب الاتصال به وتسجيل مسارين في النظام ، ولكن بالنسبة للمستخدم العادي كان الأمر شاقًا. لذا ، بمجرد ظهور الحاجة إلى حل بسيط يسمح للمستخدم المتأثر بمنح الوصول بسهولة إلى جهاز الكمبيوتر الخاص به.

لم أفكر حتى في برنامج Teamviewer أو Radmin بسبب القيود والتكلفة. بالإضافة إلى ذلك ، أنا مؤيد لـ RDP الأرثوذكسية ، وليست المرافق الخارجية. أردت أن يكون الحل بسيطًا قدر الإمكان في التنفيذ وكان الشخص بحاجة إلى حد أدنى من العمل من جانبه. وبما أنني لا أقلق بشأن موظفي شركتي الأصلية المحبوبة ، وأحيانًا يساعدون أيضًا شخصيات الطرف الثالث ، فقد يكون من الخطأ استخدام خادم VPN خاص بالشركات.

ماذا قارنت مع ZeroTier


على الشبكة ، يمكنك العثور على العديد من الحلول البسيطة لتنفيذ شبكة افتراضية:

  • Tunngle التي لم تعد تعمل ؛
  • تتطور ، والتي اندمجت مع Player.me ؛
  • حماشي ؛
  • Radmin VPN
  • و ZeroTier ، التي لدينا الحق في السوق .

خططت أن أطلب من العميل تثبيت أحد البرامج المذكورة أعلاه ، وتنزيل وتنفيذ البرنامج النصي التالي لتمكين RDP:

# Execute with Administrator rights
$path = $MyInvocation.MyCommand.Path
if ($args[0] -ne $null) {
$path = $args[0]
}
$path = Split-Path -Path $path

$windowsID = [System.Security.Principal.WindowsIdentity]::GetCurrent()
$windowsPrincipal = New-Object System.Security.Principal.WindowsPrincipal($windowsID)
$adminRole=[System.Security.Principal.WindowsBuiltInRole]::Administrator
if ($windowsPrincipal.IsInRole($adminRole)) {
$Host.UI.RawUI.WindowTitle = $myInvocation.MyCommand.Definition + "(Elevated)"
$Host.UI.RawUI.BackgroundColor = "DarkBlue"
clear-host
}
else {
$newProcess = New-Object System.Diagnostics.ProcessStartInfo "PowerShell";
$newProcess.WorkingDirectory = $path;
$newProcess.Arguments = $myInvocation.MyCommand.Definition;
$newProcess.Verb = "runas";
[System.Diagnostics.Process]::Start($newProcess);
exit
}

# Set RDP enabled
Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server" -Name "fDenyTSConnections" –Value 0

# Create firewall rule
New-NetFirewallRule -DisplayName "Remote Desktop Allow TCP" -Program "%SystemRoot%\system32\svchost.exe" -Action Allow -Protocol TCP -LocalPort 3389 -Direction Inbound -Enabled True
New-NetFirewallRule -DisplayName "Remote Desktop Allow UDP" -Program "%SystemRoot%\system32\svchost.exe" -Action Allow -Protocol UDP -LocalPort 3389 -Direction Inbound -Enabled True

# Add user to RDU group
$User = $env:USERNAME
Add-LocalGroupMember -SID "S-1-5-32-555" -Member $User


معلمات لتقييم كل برنامج


قمت بتقييم جميع الحلول من خلال المعلمات:

  • سرعة نقل الملفات عبر شبكة محلية ؛
  • سهلة التركيب والتهيئة والاستخدام ؛
  • التكلفة والقيود ؛
  • وظيفي؛
  • لعبة (المزيد عن ذلك في النهاية).

تقييمي لكل معلمة غير موضوعي وجدير بالنقد. لذلك ، ركزت على المعلمات التي يمكن قياسها من خلال الاختبارات.

حماشي


في وقت كتابة هذا التقرير ، تم إصدار أحدث إصدار من برنامج LogMeIn Hamachi لنظام التشغيل Windows 2.2.0.633 في مارس 2019. النسخة المجانية لها حد 5 اتصالات متزامنة مع نفس الشبكة. تبدأ تكلفة النسخة الكاملة من 49 دولارًا سنويًا.

للبدء ، تحتاج إلى:

  • التسجيل في الخدمة ؛
  • تثبيت نظام التشغيل
  • إنشاء أو الاتصال بالشبكة النهائية من خلال تطبيق رسومي.

لتقدير سرعة نقل الملفات ، استخدمت CrystalDiskMark ، وأجري اختبارات القراءة / الكتابة في مجلدات تمت مشاركتها مسبقًا للشبكة المحلية والنسخ البسيط لملف كبير.

مع الأخذ في الاعتبار أن جميع الاختبارات يتم إجراؤها على جهازي كمبيوتر بنفس التكوين (في كل اختبار نفس محرك الأقراص ، نفس إعدادات النظام ، وما إلى ذلك) ، يجب أن تعطي نتائج CrystalDiskMark فكرة عن سرعة نقل البيانات.

ملاحظة: بعد كتابة المقال ، شككت في أنني اخترت أفضل حل للاختبار. أعتقد في التعليقات أنه سيتم اقتراح نهج أفضل.

نتيجة الوقت: استغرق نسخ ملف 9 جيجا بايت 21 دقيقة بالضبط.



نتائج CrystalDiskMark.



لا تتجاوز بينغ بين أجهزة الكمبيوتر 10 مللي ثانية.



Radmin VPN


تم إصدار أحدث إصدار من "Radmin VPN 1.1.3969.3" في ديسمبر 2019. هذا تطبيق مجاني تمامًا بتصميم بسيط ولا يتطلب حتى التسجيل.

كل ما تحتاجه هو:

  • تحميل؛
  • تثبيت؛
  • الاتصال بالشبكة ؛
  • تناول كعكة دونات.

سرعة نقل الملفات أقل بكثير من Hamachi. نقل 9Gb جيد 43 دقيقة.



نتائج CrystalDiskMark أقل أيضًا من Hamachi.



بينج: 10-11 مللي ثانية.



ربما لولا الدونات التي تؤكل ، لكانت النتائج مختلفة. عند الاتصال عبر RDP ، لم تكن هناك مشاكل خاصة.

ZeroTier


هذا مشروع فريد مفتوح المصدر:

  • وهي متاحة كحل سحابي عام ؛
  • مقدمة من نموذج SaaS ؛
  • لديه أربع خطط اشتراك.

علاوة على ذلك ، سأفكر في حل مفتوح المصدر من مطور خارجي : واجهة مستخدم وحدة تحكم شبكة ZeroTier .

لقد درسنا بالفعل بالتفصيل مبدأ عملها في هذه المقالة . سأدرج فقط الميزات الرئيسية التي تجعلها مثيرة للاهتمام للغاية:

1. نظرًا لأننا نتحدث عن شبكة P2P ، فإن حركة المرور لا تمر عبر العقدة التي أثيرناها ، ولكن مباشرة من جهاز إلى جهاز. العقدة مطلوبة حصريًا للاتصال الأولي. علاوة على ذلك ، لا يشارك في العمل. يمكن إيقاف تشغيل العقدة تمامًا ، ولن يتم قطع الاتصال. سيكون مطلوبًا فقط في حالة إعادة الاتصال.

2. العقدة لا تتساهل مع الموارد. يعمل بهدوء على VPS أرخص لدينامقابل 130 ص. في الشهر (أو 30 روبل ، إذا تمكنت من الحصول على نفس التعريفات).

3. لا يوجد حد لعدد المستخدمين والشبكات: يمكنك ربط مجرى الجامعة بالكامل وترتيب اجتماع لزملاء الدراسة في Counter-strike.

لإنشاء عقدة ، نحتاج إلى رفع VPS مع جانب الخادم من التطبيق. كما تم وصف العملية سابقًا .

يتميز قسم العميل في ZeroTier One بتصميم بسيط ومجموعة متواضعة جدًا من المعلمات. نحن بحاجة إلى إرسال المستخدم فقط معرف عقدة لدينا وتفويضها.



طار 9 جيجابايت لمدة 20 دقيقة. أسرع بقليل من حماشي.



أظهر CrystalDiskMark أيضًا قيمًا أعلى قليلاً.



بينغ ، مثل أي مكان آخر ، قفز حوالي 10 مللي ثانية.



الحالة الثانية: كيف تنغمس في الاسترخاء الثقافي في جهاز كمبيوتر Office Weak


يوفر ZeroTier فرصة أخرى - الطريقة الشائعة الآن لدفق اللعبة إلى جهاز آخر (la GeForce Now). هناك ثلاثة بدائل لـ ZeroTier لهذا الغرض: RDP و Parsec و Moonlighrt. دعونا نختبرها.

▍ RDP


لسوء الحظ ، لا تتكيف مع هذا. معظم الألعاب التي اختبرتها رفضت ببساطة العمل بشكل طبيعي. إما تعطل بسبب عدم توافق برنامج تشغيل الفيديو ، أو ببساطة لم يستجب للتحكم.

▍ بارسيك


هذا هو برنامج مجاني متخصص مصمم لنقل الفيديو بين أجهزة الكمبيوتر مع التركيز على الكمون المنخفض للغاية. على عكس Teamviewer أو Radmin ، Parsec قادر على إرسال 60 FPS ثابتة في صورة FullHD في راحة نسبية (حتى لا تحصل على drakeface مرارا وتكرارا).



للاستخدام المريح ، يوصى بأن يكون لدى المضيف اتصال كبل بسرعة لا تقل عن 30 ميجابت في الثانية.

في الغالبية العظمى من الألعاب ، يمكنك اللعب بشكل مريح دون مواجهة تأخر إدخال عالي ، ولكن ، للأسف ، تعاني جودة الصورة. بسبب طرق الضغط ، تنقسم الصورة إلى وحدات بكسل على عناصر متباينة وتؤذي العين كثيرًا. لا يمكن لعب الألعاب التي تعتمد على FPS ، مثل ألعاب الرماية ، بمستوى مناسب من الراحة. تأخر الإدخال ، على الرغم من كونه منخفضًا ، ولكن من وقت لآخر يمكن ملاحظة بعض الوخز في الصورة ، وهو أمر مزعج ، على الرغم من أنه لا يتعارض مع الرماية.

ما يتفوق بارسيك بالضبط الحلول الأخرى في التعاونية المحلية. نظرًا لحقيقة أن Parsec تسمح لك ببساطة بمشاركة صورة الشاشة ، فمن الممكن أن تلعب لعبة تعاونية في أي مكان دون مشاكل. علاوة على ذلك ، لا يهم المسافة بينك. لقد استمتعت بلعب Cuphead مع صديق من نوفوسيبيرسك ولم أجد أي مشاكل مع رد الفعل.

بارسيك جيد أيضًا في العمل اليومي. إنه أسرع ، وينقل صورة أفضل من برنامج Teamviewer ، وليس له أي قيود على عدد أجهزة سطح المكتب البعيدة. ومع ذلك ، ولهذه الأغراض ، أستخدم دائمًا RDP ، ومبتذلاً لنظام التشغيل المدمج والقدرة على إعادة توجيه محركات الأقراص المحلية.

light ضوء القمر


هذا هو المصدر المفتوح ، وهو حل مجاني تمامًا للألعاب عن بُعد.
سأقتبس موقعهم:
ضوء القمر (Limelight سابقًا) هو تطبيق مفتوح المصدر لبروتوكول NVIDIA GameStream. قمنا بتطبيق البروتوكول الذي تستخدمه NVIDIA Shield وكتبنا مجموعة من عملاء الجهات الخارجية.

إن الإنجاز الأكثر وضوحًا والرئيسي لضوء القمر هو القدرة على بث فيديو 4K بمعدل 120 أو أكثر في الثانية مع غياب كامل لأي تأخير.

يعمل ضوء القمر فقط إذا كان الجهاز المضيف لديه بطاقة Nvidia مثبتة. هذا يرجع إلى حقيقة أن المشروع يحاكي NVIDIA Shield ويعمل مباشرة مع السائق. هذا ما يسمح لك ببث 4K 120FPS دون تأخير في شبكة محلية.

بالإضافة إلى ذلك ، فإن العيب الثاني في ضوء القمر هو عدم القدرة على اللعب على الإنترنت بدون رقص إضافي مع الدف.

^ ضوء القمر + حماشي


لسوء الحظ ، ليس لدي بطاقة التقاط ، ولا يمكنني ببساطة إزالة الشاشة على الهاتف ... لذلك ، يجب عليك تصديق كلامي أو اختبار كل حل بشكل مستقل. عرض النطاق الترددي Hamachi يكفي للعبة مريحة في 2K 60-120FPS. مع زيادة الدقة ، تصبح الفراغات الدقيقة أقوى بكثير.

من الممكن أن تلعب ألعابًا تعتمد على FPS ، ولكن هنا وهناك قد تتجمد اللعبة لمدة ربع ثانية. لا يزال بارسيك يعمل بشكل أفضل من حيث تقليل التأخيرات. ومع ذلك ، فإنه يفقد في جودة الصورة. هنا الأمر متروك لك لتحديد أيهما أكثر أهمية: الحد الأدنى من تأخر الإدخال والتحف في الصورة أو الصورة المثالية ، لكن الأفاريز الدقيقة؟

▍ Moonlight + Radmin VPN


تصرف Radmin VPN كما هو الحال في المواد التركيبية. مريح نسبيًا للعب ، فقد ظهر فقط في FullHD و 60 FPS. أدى القرار أعلاه مباشرة إلى عرض شرائح لا يطاق. ومن وقت لآخر ، تجمدت الصورة تمامًا لمدة ثانيتين. للأسف ، أثبتت هذه المجموعة أنها الأسوأ.

▍ ضوء القمر + ZeroTier


والآن وصلنا إلى زوجين لذيذين. وغني عن القول أن مستودع Moonlight الرسمي ينصح ZeroTier خصيصًا لبناء اتصال P2P. لقد فشلت حرفياً في تمييز طريقة اللعب للعبة التي تم إطلاقها عن بُعد من التشغيل على جهاز كمبيوتر محلي. تعمل جميع ميزات Moonlight المعلنة. من المؤسف أن صديقي من نوفوسيبيرسك كان لديه بطاقة AMD وكان عليه أن يختبر في نفس المدينة ، ينادي شقيقه (هذا هو شمال وجنوب موسكو).

الصورة بدقة سلسة تصل إلى 4K وتخلو من أي فرامل. الرد على الضغط فوري ، يمكنك لعب الرماة مثل هذا. ربما هذه الحزمة هي أفضل خيار للألعاب السحابية.

الموجودات


ربما يكون ZeroTier أفضل حل بأسعار معقولة لبناء شبكات نظير إلى نظير بسرعة. نعم ، لن تسمح لك وظيفتها ببناء شبكات معقدة ولن تسمح بالوصول إلى مجموعة متنوعة من إعدادات L2TP / IPsec الكلاسيكية. لكن هذا ليس ضروريًا دائمًا للمهام البسيطة.

من المحتمل أن يكون Parsec هو الخيار الوحيد للعب الألعاب عن بعد التي تدعم تعاونية محلية أو شاشة مقسمة (تذكرت على الفور العشاق في وقت خطير). لا يرتبط بتكنولوجيا معينة من المعدات المادية ولا يتطلب إعدادات شبكة إضافية. ومع ذلك ، يمكن أن تضغط بشدة على جودة الصورة. في حالة عدم القدرة على الاتصال بالكمبيوتر البعيد باستخدام الطرق العادية ، فهي مناسبة للمساعدة السريعة للكمبيوتر.

ضوء القمر- إذا كانت بطاقة Nvidia مثبتة على جهاز الكمبيوتر الخاص بك للألعاب ، فإن Moonlight + ZeroTier هو زوج مثالي للألعاب عن بعد. يحل ZeroTier مشكلة إنشاء شبكة افتراضية ببساطة وأناقة. ضوء القمر ، بفضل محاكاة Nvidia Shield ، يسمح لك بنقل صور مذهلة دون تأخير. لا يسمح بتكوين جهاز الكمبيوتر عن بعد ، لكنني وصفت الحلول الأخرى أعلاه.


All Articles