هذا العنوان في L2TP ناتج عن IPCP، وليس إيجار DHCP على الشبكة المحلية
يأتي العنوان الداخلي من تفاوض PPP، لا من خادم DHCP في المكتب. اطّلع على المرحلة التي تمنحه، ولماذا لا تستطيع الشبكة المحلية الرد، وما الذي يجب فحصه.
يظهر الاتصال ويُظهر المحوّل عنوانًا ضمن نطاق المكتب، لذا فالاستنتاج الطبيعي أن VPN منحك عنوانًا محليًا وبالتالي وضعك على الشبكة المحلية. لا أيٌّ من الشطرين صحيح تمامًا. L2TP ينقل جلسة PPP، ويتفاوض PPP على عنوان IPv4 الداخلي عبر IPCP. ذلك العنوان معامل جلسة يُتفق عليه بين طرفين، وليس إيجارًا يصدره خادم DHCP في المكتب، وامتلاكه لا يجعلك جارًا على شبكة المكتب السلكية.
عنوانان في اتصال واحد
هناك تفاوضان مستقلان في اتصال L2TP. الخارجي ينشئ مسارًا محميًا بين جهازك ونقطة نهاية VPN عبر أي شبكة تملكها بالفعل. والداخلي هو جلسة PPP، وفيه يُتفق على عنوان جلستك وعنوان الطرف المقابل. قد يخرج مرور الإنترنت بالكامل تحت عنوان ثالث، هو العنوان العام لنقطة النهاية، ولهذا نادرًا ما يتطابق عنوان صفحة فحص VPN وعنوان المحوّل.
إبقاء هذه الأدوار الثلاثة منفصلة يجيب عن معظم الأسئلة التي يجلبها الناس إلى هذه الطبقة. رقم خاص على واجهة VPN أمر طبيعي ومتوقع. وهو لا يقول شيئًا عمّا إذا كانت نقطة النهاية قد غيّرت مخرجك العام، ولا يحدد بذاته الوجهات التي يصل إليها مرورك.
ما يفعله IPCP بالضبط
IPCP هو بروتوكول التحكم في IPv4 الخاص بـ PPP. يرسل كل طرف رسائل Configure-Request تصف الخيارات التي يريدها، وخيار العنوان واحد منها. العميل الذي لا يملك عنوانًا بعد يطلب عادةً بـ 0.0.0.0، فيردّ الخادم بـ Configure-Nak يحمل العنوان الذي يريده للعميل. ثم يطلب العميل ذلك العنوان، فتقوم الجلسة بعنوان محلي وعنوان بعيد.
هذا التبادل موثّق في مواصفات PPP وIPCP، وهو يفسّر تفصيلًا يبدو كخطأ: يختار الخادم العنوان وفق سياسته الخاصة، وقد تكون تجمّعًا أو إعدادًا لكل مستخدم أو عنوانًا مرتبطًا بالهوية الموثّقة. عندما ينفد التجمّع، أو تتعارض السياسة مع الطلب، قد تنجح المصادقة بينما يفشل تفاوض العنوان، فيبلّغ العميل عن اتصال لا يستقر أبدًا.
ip addr show ppp0
ip route show default
dmesg | grep -i pppd
سطر في سجل pppd يذكر عنوانًا محليًا وعنوانًا بعيدًا هو النهاية الناجحة لذلك التفاوض. وغيابه، إلى جانب مصادقة ناجحة، يشير إلى مرحلة العنوان لا إلى بيانات الاعتماد.
لماذا لا تستطيع الشبكة المحلية الرد عليك
العنوان من نطاق الطرف البعيد يخلق توقّعًا بأن مضيفي تلك الشبكة يستطيعون الوصول إليك، ومعظمهم لا يستطيع ذلك ما لم يعِد الخادم توجيه عنوان جلستك إلى النفق. فوجودك داخل تجمّع تصريح عن التخصيص، لا عن الطوبولوجيا. خادم ملفات المكتب لا يملك مسارًا إلى عنوان جلستك ما لم يمرّره خادم VPN، وقد لا يُسمح له بذلك حتى لو فعل.
ولهذا أيضًا تسبب النطاقات المتداخلة مشكلات تفوق حجمها الظاهر. فإذا تداخل التجمّع مع شبكة محلية يستخدمها العميل بالفعل، صار في جدول توجيه العميل مطالبان على البادئة نفسها، ويفوز الخاطئ في الغالب لأسباب لا علاقة لها بالنفق.
تحقّق من الجلسة، ثم من المسار
افحص الواجهة أولًا، ثم المسارات، ثم وجهة واحدة مهمة. لكل خطوة نمط فشل خاص بها، واختبار الثلاث معًا ينتج استنتاجًا لا تستطيع الدفاع عنه لاحقًا.
curl -sS --max-time 5 https://ifconfig.me
ping -c 3 10.50.30.20
ip route get 10.50.30.20
إذا أظهر الفحص العام عنوان نقطة النهاية بينما تنتهي مهلة وجهة خاصة، فالنفق يحمل مسارك الافتراضي والطرف البعيد لا يجيب عن تلك الوجهة. وإذا أجابت الوجهة الخاصة دون أن يتغير الفحص العام، فالملف يعمل بالنفق المنقسم ولا يستخدم الجلسة إلا جزء من المرور.
أبقِ المراحل الثلاث منفصلة
المصادقة وتفاوض العنوان وإعادة التوجيه تفشل بطرق مختلفة، ولكل منها مسؤول مختلف. بيانات الاعتماد مشكلة هوية، ونفاد IPCP مشكلة سياسة خادم، وغياب مسار العودة مشكلة تصميم شبكة. الإبلاغ عن الثلاث جميعًا بعبارة “VPN معطّل” يضمن إصلاحًا بطيئًا.
سجّل العنوان الممنوح، والتجمّع الذي جاء منه، وما إذا كان يُفترض أن تصل إليه الشبكة المحلية. تلك الملاحظة الواحدة تمنع الشخص التالي من افتراض إيجار DHCP والبحث عن نطاق لم يكن معنيًا أصلًا.