EoIP عبر رابط VPN على LTE: بناء مختبر RouterOS صغير
يحمل EoIP إطارات إيثرنت داخل GRE، وGRE لا يشفّر شيئًا. ابنِ المختبر على رابط WireGuard عامل، وأبقِ الجسر معزولًا، واحسب 42 بايت.
يأخذ EoIP إطار إيثرنت كاملًا، ويغلّفه داخل GRE ثم يرسله إلى عنوان بعيد مُهيّأ، ولهذا يتصرف الناتج ككابل لا كمسار. الذي يخرج من الموجّه هو البروتوكول IP رقم 47 مع الإطار الأصلي كحمولة، لذا تعبر البثوث وARP والبروتوكولات غير العاملة على IP جميعًا. ولا يضيف GRE أي سرية من عنده، ويبقى الإطار مقروءًا لأي شيء يرى الحزمة الخارجية. تلك الحقيقة الواحدة تحدّد ترتيب هذا المختبر: ابنِ المسار المشفّر أولًا، ثم احمل إيثرنت داخله.
ما الذي يغلّفه EoIP، وما الذي لا يغلّفه
التغليف هو الآلية كلها. يصل الإطار على منفذ داخل جسر، فيحصل على ترويسة GRE وترويسة IP خارجية، ثم يُسلَّم إلى الموجّه النظير الذي يزيلهما ويدخل الإطار في جسره الخاص. ويتعلّم الجسر المستقبِل عنوان MAC المصدر تمامًا كما لو كان من منفذ محلي. ولا شيء في تلك العملية يوثّق الإطار أو يخفيه.
لذلك يجب أن تأتي السرية من المسار الذي تمر عليه حزمة GRE. في هذا التصميم تكون الطبقة السفلى نفق WireGuard أو IPsec بين الموجّهين، ويُحمل EoIP داخله. ويعرض MikroTik أيضًا خيار IPsec التلقائي على واجهة EoIP نفسها، وهو ترتيب مختلف وليس ما يهيّئه هذا المختبر.
بالنسبة لخدمات IP الموجّهة، يكون VPN موجّه هو التصميم الأصغر والأنسب. ولا تلجأ إلى الطبقة الثانية إلا عندما يحتاج جهاز فعلًا إلى رؤية إطارات إيثرنت من الموقع الآخر.
المتطلبات المسبقة: طبقة سفلى مشفّرة ومنفذان غير مستخدمين
يحتاج كل من الموجّهين إلى رابط مشفّر قائم وعنوان عليه يستطيع النظير الوصول إليه. يبدأ جانب LTE الاتصال الخارجي، لذا لا يتصل المحور بشبكة الهاتف أبدًا، ويحافظ موجّه LTE على حالة NAT التي يطلبها المشغّل. تأكّد من أن النفق قائم قبل إضافة أي شيء فوقه، لأن واجهة EoIP التي لا تصل إلى عنوانها البعيد تبدو مطابقة لواجهة مهيّأة خطأً.
يحتاج كل موجّه أيضًا إلى منفذ واحد ليس عضوًا في جسر بالفعل، ولا جذع VLAN، ولا واجهة إدارة، ولا رابط إنتاج. المختبر الذي يستعير منفذًا حيًّا ليس مختبرًا، ونمط الفشل فيه عاصفة بث على شبكة عاملة. انقل الإدارة إلى واجهة أخرى أو إلى الطرفية قبل أن تبدأ.
Hub tunnel address: 10.44.7.1/32
LTE tunnel address: 10.44.7.2/32
Lab ports: ether7 on both routers, unused
Test hosts: 192.168.77.11/24 and 192.168.77.12/24
هذه القيم مثال لا شرط. يجب أن تكون على واجهات النفق وأن تُوجَّه عبر المسار المحمي. ويجب أن تسمح سياسة الجدار الناري على الموجّهين بمرور GRE بين عنواني النفق، وGRE هو البروتوكول IP رقم 47 وليس منفذ TCP أو UDP يحمل الرقم 47. وهذا التصميم لا يعرّض GRE الخام لأي من شبكتي WAN قط.
أنشئ زوج النفق بمعرّفات متطابقة
الطرفان واجهة منطقية واحدة تُعرَّف مرتين، لذا يجب أن يتفق كل حقل معرِّف. على المحور:
/interface eoip add name=eoip-lab local-address=10.44.7.1 remote-address=10.44.7.2 tunnel-id=37 mac-address=02:1A:2B:00:00:01
على موجّه LTE تنعكس العناوين ويختلف MAC:
/interface eoip add name=eoip-lab local-address=10.44.7.2 remote-address=10.44.7.1 tunnel-id=37 mac-address=02:1A:2B:00:00:02
يجب أن يتطابق معرّف النفق على الطرفين وألا يتعارض مع زوج آخر مهيّأ بالفعل على أي من الموجّهين. عناوين MAC قيم تُدار محليًا ويجب أن تكون فريدة داخل نطاق الطبقة الثانية الذي تنضم إليه، فلا تُعِد استخدام قيمة من مثال بائع. أسماء الواجهات محلية لكل موجّه ولا يلزمها إلا الاتساق مع نصوصك البرمجية.
يوثّق دليل EoIP الحالي حقلي نقطة النهاية ومعرّف النفق، ويقول صراحةً إن EoIP هو إيثرنت فوق GRE. ولا شيء في ذلك الأمر يشفّر أي شيء، ولهذا يأتي فحص الطبقة السفلى أولًا.
اجعل الجسر يضم منافذ الاختبار فقط
الجسر هو ما يحوّل النفق إلى قطاع، وعضويته هي حدود الأمان كلها. على المحور:
/interface bridge add name=br-eoiphub protocol-mode=rstp auto-mac=no admin-mac=02:1A:2B:00:01:01
/interface bridge port add bridge=br-eoiphub interface=ether7
/interface bridge port add bridge=br-eoiphub interface=eoip-lab
على موجّه LTE:
/interface bridge add name=br-eoiplte protocol-mode=rstp auto-mac=no admin-mac=02:1A:2B:00:01:02
/interface bridge port add bridge=br-eoiplte interface=ether7
/interface bridge port add bridge=br-eoiplte interface=eoip-lab
تنشئ هذه الأوامر جسورًا جديدة وتضيف منفذين اثنين بالضبط إلى كل منها. واجهة EoIP هي عضو الطبقة الثانية؛ أما النفق المشفّر فيبقى نقلًا موجّهًا ويجب ألا يُضاف قط كمنفذ جسر. لا تُضف منفذ إنتاج، ولا تُشغّل خادم DHCP على جسر المختبر.
امنح المضيفين التجريبيين عنوانين في شبكة فرعية غير مستخدمة بلا خادم DHCP منافس، مثل 192.168.77.11/24 و192.168.77.12/24. ولا يحتاجان إلى بوابة افتراضية للوصول أحدهما إلى الآخر داخل تلك الشبكة الفرعية، ولا يلزم عنوان واجهة موجّه لعبور الإطارات.
احسب الحمل الإضافي قبل أن توسّع شبكة محلية
يضيف EoIP فوق IPv4 ترويسات إيثرنت وGRE وIP خارجية حول الحمولة المحمولة. وفي الحالة غير الموسومة يوثّق MikroTik 42 بايت، لذا تترك طبقة سفلى ذات 1400 بايت من MTU صالح لـ IP مساحة 1358 بايت للإطار الداخلي. وهذا الرقم ميزانية لا قيمة MSS عالمية، وهو لا يُلزم مضيفًا داخل جسر بإرسال إطارات أصغر.
تحقّق من الحدود الحقيقية على المسار، ثم اختبر بأكبر إطار يرسله الجهاز فعلًا. الإطار ذو 1500 بايت الذي يجب تجزئته داخل المسار المحمي يتصرف بشكل مختلف عن إطار يتّسع، ويظهر الفرق كتوقّف في التطبيق لا كفشل في الرابط.
/interface eoip print detail where name=eoip-lab
/interface bridge host print where bridge=br-eoiphub
/ping 192.168.77.12 count=4 interface=br-eoiphub
يتعامل RSTP مع الحلقات لا مع المسارات المتوازية العشوائية، فأبقِ طوبولوجيا التجربة بسيطة. وتوسيع الجسر يوسّع أيضًا سلوك البث والإرسال المتعدد وDHCP عبر رابط الهاتف، وتلك الحركة تستهلك السعة سواء كانت هناك إطارات مفيدة تتحرك أم لا.
خطّط لربط الإنتاج فقط بعد أن يحقق المختبر حجم الإطار وسلوك التطبيق اللذين تحتاجهما فعلًا. وقبل ذلك الانتقال، اتفق على العنونة وعضوية VLAN وصلاحية DHCP ومنع الحلقات وكيف يصل أحدهم إلى الموجّهين حين يكون الرابط نفسه معطّلًا. إن توسيع إيثرنت يربط نطاقات الفشل كما يربط الأجهزة، لذا يستحق نافذة تغيير لا منفذًا آخر على جسر عامل.