WireGuard 5G: اجعل الفرع هو من يتصل بالمركز
عندما يتصل الفرع بالمركز، لا يحتاج المركز أبدًا إلى اكتشاف عنوان خلوي متغيّر. اضبط الإعداد، ثم تحقّق، ثم افحص ما لا يحلّه هذا التصميم.
توجيه الفرع نحو المركز هو النصف السهل من هذا التصميم عندما يكون الفرع خلف عنوان خلوي متغيّر ويحتفظ المركز باسم ثابت. عندئذ يتعلّم المركز الفرع من حركة موثوقة بدلًا من سجل عليك إبقاؤه محدَّثًا. العقد بسيط: الفرع هو من يبدأ دائمًا.
اضبطه عن قصد، ثم تحقّق من الجزء الذي يفترض الناس أنه يعمل. تستغرق الخطوتان دقائق، والفشل المعتاد في هذه التصاميم يقع في الثانية.
أي طرف يحتفظ بنقطة النهاية الثابتة
يسمّي إعداد الفرع نقطة نهاية المركز ومفتاحه العام. ويسمّي إعداد المركز مفتاح الفرع العام وبادئاته الداخلية المسموح بها، وقد لا يحمل أي نقطة نهاية على الإطلاق، لأن الهوية تأتي من المفتاح لا من عنوان المصدر لآخر حزمة. هذا التفاوت هو الآلية كلها، وهو يزيل صنفًا كاملًا من مشكلات الاكتشاف من جهة المركز.
عندما يرسل الفرع حزمة موثوقة، يسجّل المركز المصدر الذي وصلت منه ويستخدم هذا الربط للردود. ثم لا يكلّف إعادة ترقيم الوصلة الخلوية شيئًا يتجاوز المصافحة التالية، وكل مكوّن لم تعد تحتاجه هو مكوّن لا يمكن أن يفشل أثناء التحويل. تلك الخاصية تستحق الاختبار أثناء تغيير مجدول لا أثناء حادث. افعل ذلك بينما يستطيع أحدهم مراقبة الطرفين معًا.
أعطِ الفرع إعدادًا يصمد أمام إعادة الترقيم
أبقِ نقطة النهاية وإشارة الإبقاء على الفرع، وأبقِ إدخال النظير في المركز خاليًا من عنوان مثبَّت في الشيفرة. تُبقي إشارة الإبقاء الربط المترجَم مفتوحًا مدة كافية ليرسل المركز حركة غير مطلوبة بعد فترة خمول.
[Peer]
PublicKey = HUB_PUBLIC_KEY_BASE64
Endpoint = hub.example.net:51820
AllowedIPs = 10.60.0.0/24, 10.60.10.0/24
PersistentKeepalive = 25
خمسٌ وعشرون ثانية هي المثال الشائع لإبقاء ربط NAT حيًّا، وليست شرطًا لكل نظير. اضبطها وفق مهلة الربط التي تلاحظها فعلًا، وتذكّر أنها تولّد حركة على وصلة محدودة البيانات ما دامت الواجهة قائمة.
على المركز، يجب أن تغطّي البادئات المسموح بها لنظير الفرع كل ما سيرسله الفرع. البادئة الغائبة تتصرّف كعطل توجيه في الطرف البعيد ولا تُنتج أي تحذير في أي من الجانبين، ولهذا يستحق الأمر المراجعة قبل أول حزمة حقيقية. قارن بادئات المركز المسموح بها بعناوين واجهات الفرع قبل الاتصال الأول.
تحقّق من الربط ومن التحويل الاحتياطي
تأكّد من أن المصافحة تكتمل، وأن المركز يسرد نقطة النهاية الحالية للفرع، وأن عناوين الفرع الداخلية يمكن الوصول إليها عبر النفق. هذا هو خط الأساس، وينبغي تسجيله قبل أن يمسّ أحد الوصلة الخلوية. سطران من المخرجات يكفيان. احتفظ بهما في التذكرة مع الطابع الزمني.
wg show wg0
wg show wg0 latest-handshakes
ip route show default
ping -c 3 10.60.10.1
ثم اختبر العطل الذي وُجد التصميم من أجله. اسحب WAN الأساسي وتأكّد من أن المسار الأساسي للفرع نحو المركز يخرج الآن عبر الواجهة الخلوية. لا يستطيع النفق إصلاح مسار فيزيائي مكسور، لذا فإن مسارًا خارجيًا ما زال يشير إلى وصلة صاعدة ميتة يُنتج مهلة مصافحة تبدو تمامًا كمشكلة في المركز.
إذا كان المسار الخارجي مربوطًا صراحةً أو موجَّهًا بسياسة، فيجب أن يشمل التحويل الاحتياطي ذلك. تلك الفجوة بين تصميم يُقرأ بشكل صحيح وتصميم يصمد أمام انقطاع هي عادةً الشيء الوحيد الناقص.
ما لا يحلّه هذا التصميم
لا شيء هنا يسمح باتصال وارد إلى الفرع. إذا كان على شيء في المقر أن يتصل بموقع خلوي، فاتجاه النفق خاطئ لهذا المطلب، وDNS الديناميكي لا يحدّث سوى اسم. يبقى ترجمة المزوّد وسياسة الوارد وتحديث العميل لنقطة النهاية في الطريق، وسجل متغيّر لا يستطيع فتح NAT من فئة المشغّل.
أبقِ بادئة الفرع مختلفة عن كل موقع آخر، وقيّد ما سيمرّره بوابته. نقطة نهاية المركز الثابتة تبسّط الاكتشاف ولا تفعل شيئًا لتصميم التوجيه أو تخطيط العناوين أو مسألة أي مسارات تطبيقات تصمد أمام التحويل الاحتياطي.
اكتب أربعة أشياء في دليل التشغيل: من يبدأ، وأي البادئات مسموح بها، وكم تدوم إشارة الإبقاء، وماذا يحدث عندما تسقط الوصلة الأساسية. هذه السطور هي ما يحتاجه المشغّل المستقبلي فعلًا في الثالثة فجرًا.