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

ثلاثة شروط تحدد التصميم

الشرط الأول هو نطاق العناوين. إذا استخدمت شبكتا LAN الكتلة نفسها من RFC 1918 فإن التوجيه لا يستطيع التمييز بينهما وتصبح الترجمة حتمية لا اختيارية. الثاني هو مسار العودة: لا فائدة من مسار من A إلى B ما لم تعرف B أيضًا كيف تصل إلى شبكة LAN الخاصة بـ A، والمعرفة غير المتماثلة هي السبب الأكثر شيوعًا لأن يُسقط تصميم موجّه الردود بصمت.

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

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

ابنِ خطة التوجيه على شبكة العبور

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

FirewallRemote LANNext hop on the transit
A10.40.0.0/24192.0.2.20
B10.30.0.0/24192.0.2.10

يخدم جدار الحماية A الشبكة 10.30.0.0/24 ويخدم جدار الحماية B الشبكة 10.40.0.0/24، مع عنوانَي العبور على 192.0.2.0/24. يحتفظ كل جهاز في شبكة LAN بجدار الحماية المحلي كبوابة له، لذا فإن الحالة الجديدة الوحيدة هي مسار واحد على كل جانب. على جدار حماية قائم على Linux تبدو الخطة نفسها هكذا، ويجب تمكين التمرير وإلا فسيُحلّ المسار بينما تُسقط الرزمة.

sysctl -w net.ipv4.ip_forward=1
ip route add 10.40.0.0/24 via 192.0.2.20 dev eth1
ip route get 10.40.0.15
traceroute -n 10.40.0.15

افصل الترشيح عن الترجمة

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

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

iptables -t nat -S POSTROUTING
iptables -t nat -L POSTROUTING -n -v
tcpdump -ni eth1 -c 5 host 10.40.0.15

عندما تكون NAT الإجابة الصادقة

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

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

عندما يكون العبور نفسه الافتراض الخاطئ

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

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

مقالات ذات صلة