محول إيثرنت ذكي لكوكب الأرض

محول إيثرنت ذكي لكوكب الأرض
"هناك عدة طرق لإيجاد حل (لحل مشكلة) ، ولكن ليس دائمًا الطريقة الأكثر تكلفة و / والأكثر شيوعًا هي الأكثر فعالية!"

مقدمة

منذ حوالي ثلاث سنوات ، أثناء عملية تطوير نموذج التعافي من الكوارث عن بُعد ، واجهت عقبة واحدة لم يتم ملاحظتها على الفور - نقص المعلومات حول الحلول الأصلية الجديدة للمحاكاة الافتراضية للشبكة في مصادر المجتمع. 

تم تخطيط خوارزمية النموذج المطور على النحو التالي: 

  1. مستخدم بعيد اتصل بي ، رفض جهاز الكمبيوتر الخاص به مرة واحدة التمهيد ، وعرض الرسالة "قرص النظام لم يتم اكتشافه / لم يتم تنسيقه" ، يقوم بتحميله باستخدام USB الحياة. 
  2. أثناء عملية التمهيد ، يتصل النظام تلقائيًا بشبكة محلية خاصة آمنة ، حيث يوجد ، بالإضافة إلى نفسه ، مكان عمل المسؤول ، وفي هذه الحالة كمبيوتر محمول ، وعقدة NAS. 
  3. ثم أقوم بالاتصال - إما لإعادة تنشيط أقسام القرص ، أو لاستخراج البيانات من هناك.

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

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

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

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

كانت النتائج مخيبة للآمال ودفعتني إلى البدء في الحديث عن ZeroTier بمزيد من التفصيل ، مما أدى إلى إنقاذ "الباحثين" المعاصرين من الاضطرار إلى السير في نفس الطريق الذي سلكته.

اذن ماذا انت

يضع المطور ZeroTier كمحول إيثرنت ذكي لكوكب الأرض. 

"هذا هو مراقب شبكة موزع مبني على قمة شبكة نظير إلى نظير (P2P) عالمية آمنة مشفرة. على غرار مفتاح SDN للشركة ، أداة مصممة لتنظيم الشبكات الافتراضية على الشبكات المادية ، المحلية والعالمية ، مع القدرة على توصيل أي تطبيق أو جهاز تقريبًا ".

هذا أكثر من وصف تسويقي ، الآن حول الميزات التكنولوجية.

▍ الأساسية: 

ZeroTier Network Hypervisor عبارة عن محرك افتراضي للشبكة قائم بذاته يحاكي شبكة Ethernet مشابهة لشبكة VXLAN أعلى شبكة نظير إلى نظير (P2P) مشفرة عالمية.

البروتوكولات المستخدمة في ZeroTier أصلية ، على الرغم من تشابهها في المظهر مع VXLAN و IPSec ، وتتكون من طبقتين منفصلتين من الناحية المفاهيمية ولكنهما وثيقتي الصلة: VL1 و VL2.

رابط التوثيق

▍VL1 هي طبقة نقل أساسية من نظير إلى نظير (P2P) ، وهي نوع من "الكبل الافتراضي".

"يتطلب مركز البيانات العالمي" خزانة عالمية "مع الكابلات."

في الشبكات التقليدية ، يشير L1 (طبقة OSI 1) إلى الكابلات الفعلية أو أجهزة الراديو اللاسلكية التي تحمل البيانات وشرائح جهاز الإرسال والاستقبال المادية التي تعدلها وتزيل تشكيلها. VL1 هي شبكة نظير إلى نظير (P2P) تفعل الشيء نفسه ، باستخدام التشفير والمصادقة وحيل الشبكة الأخرى لترتيب الكابلات الافتراضية حسب الحاجة.

علاوة على ذلك ، يقوم بذلك تلقائيًا وبسرعة ودون إشراك المستخدم في تشغيل عقدة ZeroTier جديدة.

لتحقيق ذلك ، تم تنظيم VL1 بشكل مشابه لنظام اسم المجال. يوجد في قلب الشبكة مجموعة من خوادم الجذر المتاحة بشكل كبير ، والتي يشبه دورها دور خوادم أسماء جذر DNS. في الوقت الحالي ، تتم إدارة خوادم الجذر الرئيسية (الكوكبية) من قبل المطور - ZeroTier، Inc. ويتم توفيرها كخدمة مجانية. 

ومع ذلك ، من الممكن إنشاء خوادم جذر (أقمار) مخصصة تسمح لك بما يلي:

  • تقليل الاعتماد على البنية التحتية لشركة ZeroTier، Inc. رابط التوثيق
  • زيادة الإنتاجية عن طريق تقليل التأخيرات ؛ 
  • الاستمرار في العمل كالمعتاد في حالة فقد الاتصال بالإنترنت.

في البداية ، تبدأ العقد بدون وصلات مباشرة مع بعضها البعض. 

لكل نظير في VL1 عنوان ZeroTier فريد من 40 بت (10 أرقام سداسية عشرية) ، والذي ، على عكس عناوين IP ، هو معرف مشفر لا يحتوي على معلومات المسار. يتم حساب هذا العنوان من الجزء العام من زوج المفاتيح العام / الخاص. يشكل عنوان العقدة والمفتاح العام والمفتاح الخاص معًا هويتها.

Member ID: df56c5621c  
            |
            ZeroTier address of node

بالنسبة للتشفير ، فهذه مناسبة لمقال منفصل.

رابط التوثيق

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

آلية إعداد اتصال نظير إلى نظير هي كما يلي:

محول إيثرنت ذكي لكوكب الأرض

  1. تريد العقدة A إرسال حزمة إلى Node B ، ولكن نظرًا لأنها لا تعرف المسار المباشر ، فإنها ترسلها إلى المنبع إلى Node R (القمر ، خادم جذر المستخدم).
  2. إذا كانت العقدة R لها اتصال مباشر بالعقدة B ، فإنها تعيد توجيه الحزمة هناك. وإلا فإنه يرسل الحزمة إلى المنبع قبل الوصول إلى جذور الكواكب. تعرف جذور الكواكب جميع العقد ، لذلك ستصل الحزمة في النهاية إلى العقدة B إذا كانت متصلة بالإنترنت.
  3. ترسل Node R أيضًا رسالة تسمى "rendezvous" إلى العقدة A تحتوي على أدلة حول كيفية وصولها إلى Node B. وفي الوقت نفسه ، يرسل خادم الجذر ، الذي يعيد توجيه الحزمة إلى Node B ، "موعدًا" لإعلامها بكيفية وصولها إلى Node العقدة أ.
  4. يتلقى المضيفان A و B رسائل موعدهما ويحاولان إرسال رسائل استقصاء لبعضهما البعض في محاولة لخرق NAT أو جدران الحماية ذات الحالة التي يواجهونها على طول الطريق. إذا نجح ذلك ، فعندئذٍ يتم إنشاء اتصال مباشر ، ولن تصبح الحزم "حدائق".

في حالة فشل الاتصال المباشر ، سيستمر الاتصال عبر الترحيل وستستمر محاولات الاتصال المباشر حتى يتم الوصول إلى نتيجة ناجحة. 

يحتوي VL1 أيضًا على ميزات أخرى لإنشاء اتصال مباشر ، بما في ذلك اكتشاف نظير LAN ، وتنبؤ المنفذ لاجتياز IPv4 NATs المتماثل ، وتعيين منفذ صريح باستخدام uPnP و / أو NAT-PMP إذا كان متاحًا على شبكة LAN المادية المحلية.

→ رابط التوثيق

▍VL2 - بروتوكول ظاهرية لشبكة Ethernet يشبه VXLAN مع وظائف إدارة SDN. بيئة اتصال مألوفة لنظام التشغيل والتطبيقات ...

على عكس VL1 ، يتطلب إنشاء شبكات VL2 (VLANs) وتوصيل العقد بها ، بالإضافة إلى إدارتها ، مشاركة مباشرة من المستخدم. يمكنه القيام بذلك بمساعدة وحدة تحكم الشبكة. في الواقع ، إنها عقدة ZeroTier عادية ، حيث تتم إدارة وظائف وحدة التحكم بطريقتين: إما مباشرة ، عن طريق تغيير الملفات ، أو ، كما يوصي المطور بشدة ، باستخدام واجهة برمجة التطبيقات المنشورة. 

هذه الطريقة في إدارة شبكات ZeroTier الافتراضية ليست ملائمة جدًا للشخص العادي العادي ، لذلك هناك العديد من واجهات المستخدم الرسومية:
 

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

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

يتم تحديد كل شبكة VL2 (VLAN) بواسطة عنوان شبكة ZeroTier 64 بت (16 رقمًا سداسيًا عشريًا) ، والذي يحتوي على عنوان ZeroTier لوحدة التحكم 40 بت ورقم 24 بت يحدد الشبكة التي تم إنشاؤها بواسطة وحدة التحكم هذه.

Network ID: 8056c2e21c123456
            |         |
            |         Network number on controller
            |
            ZeroTier address of controller

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

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

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

تدعم شبكات ZeroTier الإرسال المتعدد من خلال نظام نشر / اشتراك بسيط.

رابط التوثيق

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

يتم التعامل مع البث (Ethernet ff: ff: ff: ff: ff: ff) كمجموعة إرسال متعدد يشترك فيها جميع الأعضاء. يمكن تعطيله على مستوى الشبكة لتقليل حركة المرور إذا لم يكن هناك حاجة لذلك. 

يحاكي ZeroTier مفتاح Ethernet حقيقي. هذه الحقيقة تسمح ل ربط الشبكات الافتراضية التي تم إنشاؤها بشبكات Ethernet الأخرى (شبكة المنطقة المحلية السلكية ، WiFi ، لوحة الكترونية معززة افتراضية ، إلخ) على مستوى ارتباط البيانات - باستخدام جسر Ethernet تقليدي.

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

يتمتع المحول أيضًا بالقدرة على إنشاء شبكات عامة ومخصصة وآلية QoS ومحرر قواعد الشبكة.

▍ عقدة:

صفري واحد هي خدمة تعمل على أجهزة الكمبيوتر المحمولة وأجهزة الكمبيوتر المكتبية والخوادم والأجهزة الافتراضية والحاويات التي توفر اتصالات بشبكة افتراضية من خلال منفذ شبكة افتراضية ، على غرار عميل VPN. 

بمجرد تثبيت الخدمة وتشغيلها ، يمكنك الاتصال بالشبكات الافتراضية باستخدام عناوينها المكونة من 16 حرفًا. تظهر كل شبكة كمنفذ شبكة افتراضي على النظام يعمل تمامًا مثل منفذ Ethernet العادي.

ZeroTier One متاح حاليًا لأنظمة التشغيل والأنظمة التالية.

نظام التشغيل:

  • مايكروسوفت ويندوز - مثبت MSI x86 / x64
  • ماك - مثبت PKG
  • أبل دائرة الرقابة الداخلية - متجر التطبيقات
  • أندرويد - متجر Play
  • لينكس - DEB / RPM
  • فري - حزمة FreeBSD

NAS:

  • Synology NAS
  • QNAP NAS
  • ويسترن دي ماي كلاود ناس

البعض:

  • عامل في حوض السفن - ملف عامل ميناء
  • OpenWRT - منفذ المجتمع
  • تضمين التطبيق SDK (ليبزت)

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

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

القراء الأعزاء! هل تستخدم تقنية ZeroTier في مشاريعك؟ إذا لم يكن الأمر كذلك ، فما هي الأدوات التي تستخدمها لتوصيل مواردك بشبكة مشتركة؟

محول إيثرنت ذكي لكوكب الأرض

المصدر: www.habr.com

إضافة تعليق