نفق WireGuard المنقسم: اضبطه دون مسار افتراضي
النفق المنقسم هو قائمة البادئات التي تستبعدها. ضع النطاقات البعيدة على نظير العميل، وعنوان العميل على نظير الخادم، ثم اقرأ المسارات.
يُعرَّف النفق المنقسم بما تستبعده، وWireGuard يتخذ هذا القرار في حقل واحد. يختار AllowedIPs لنظير العميل في الوقت نفسه الوجهات التي تمر عبر النفق ويرشّح عناوين المصدر الداخلية المقبولة، ويحوّل wg-quick القائمة نفسها إلى مسارات مضيف. أخطئ في تلك القائمة فيبتلع النفق كل شيء أو لا يحمل شيئًا.
حدّد قائمة البادئات أولًا
اكتب الوجهات التي يجب أن تستخدم النفق قبل لمس أي ملف إعدادات. شبكات المكتب الفرعية، ونطاق قاعدة بيانات، وشبكة إدارة: كل منها بادئة لها سبب. كل ما ليس في القائمة يبقى على المسار الفيزيائي، وهذا هو جوهر التصميم.
إذا كانت القائمة تحتوي على 0.0.0.0/0 أو ::/0، فقد بنيت نفقًا كاملًا وينبغي أن تقول ذلك، لأن أنماط الفشل وتوقعات DNS تختلف.
أبقِ القائمة قصيرة بما يكفي ليتمكن المراجع من مطابقتها مع جدول التوجيه لاحقًا.
إعداد العميل: النظير، AllowedIPs، DNS
تحتوي كتلة الواجهة في العميل على عنوان النفق الخاص به ومفتاحه الخاص. وتحتوي كتلة النظير على المفتاح العام للخادم ونقطة النهاية والبادئات من الخطوة الأولى:
[Interface]
Address = 10.9.0.2/32
PrivateKey = <client-private-key>
DNS = 10.20.0.53
[Peer]
PublicKey = <server-public-key>
Endpoint = vpn.example.net:51820
AllowedIPs = 10.20.0.0/16, 10.30.0.0/24
PersistentKeepalive = 25
AllowedIPs في العميل هو مجموعة الوجهات البعيدة، وليس عنوان العميل نفسه. لا يسري سطر DNS إلا عبر تكامل المحلّل في wg-quick، لذا سيتجاهله مضيف لا يدعم resolvconf أو systemd-resolved. يُبقي PersistentKeepalive تعيين NAT حيًّا وهو غير ضروري على مسار مباشر.
علّق على كل بادئة بالخدمة التي تخدمها، وإلا فسيكون التعديل التالي تخمينًا.
إعداد الخادم: المنظور المعاكس
على الخادم يمثّل إدخال النظير العميل، لذا فإن AllowedIPs الخاص به هو عنوان نفق العميل، وعادةً يكون /32. وليس شبكة المكتب الفرعية. نسخ قائمة العميل إلى إدخال الخادم هو الخطأ الأكثر شيوعًا في النفق المنقسم، وهو إما يوسّع الوصول أو يكسر فحص المصدر الداخلي وقت المصافحة.
عنوان واجهة الخادم نفسه، والمسارات التي يحتاجها نحو المكتب، منفصلة عن أي إدخال نظير.
ملفان، منظوران، ومجموعة بادئات واحدة موزعة بينهما.
شغّله واقرأ المسارات
ابدأ الواجهة بالمدير المدعوم، ثم انظر إلى ما ثبّته لا إلى ما قصدته. يستنبط wg-quick المسارات من AllowedIPs؛ وإذا ضبط الملف الشخصي Table = off فلن يُثبَّت شيء ويكون التوجيه مسؤوليتك. اقرأ المسار لكل بادئة وتأكد أنه يشير إلى واجهة WireGuard. قائمة مسارات فارغة تعني عادةً أن الملف الشخصي المطبّق ليس الذي عدّلته.
افحص عدّادات المصافحة أيضًا، لأن النظير الذي لا مصافحة له لديه مشكلة في المفتاح أو نقطة النهاية أو قابلية الوصول، لا مشكلة توجيه.
اكتب الأمر الدقيق الذي استخدمته، لأن الشخص التالي سيشغّله تحت الضغط.
تحقّق من الجانبين ثم سجّل التراجع
اختبر عنوانًا خاصًّا واسمه الداخلي ووجهة يجب أن تبقى مباشرة. إذا عمل العنوان الخاص وخرج العنوان المباشر الآن عبر النفق، فقائمة البادئات واسعة جدًّا. وإذا فشل الاسم بينما يعمل العنوان، فسطر DNS لم يسري. التراجع أمر واحد، وينتمي إلى الملاحظة نفسها.
بعد إعادة الاتصال، تأكد من أن المسارات لا تزال موجودة، لأن المدير الذي يعيد تطبيق الملف الشخصي قد يستبدل المسارات اليدوية.
احتفظ بمالك إعدادات واحد، لأن مديرين ينتجان الواجهة نفسها سيختلفان في النهاية. توثّق دليل wg-quick سلوك المسارات وDNS الذي يوفره.