ترجمة عنوان الشبكة
ترجمة عنوان الشبكة هي الشريط اللاصق الذي أبقى IPv4 يعمل لفترة طويلة بعد نفاد عناوينه. وهذا أيضًا هو السبب وراء احتياج تطبيقات نظير إلى نظير إلى ثقب، ولماذا لا يمكن الوصول إلى هاتفك مباشرة من الإنترنت، ولماذا ترفض مكالمات الفيديو أحيانًا الاتصال بشبكات معينة. يستحق الفهم بالتفصيل.
يتم توفير نص المقالة الكامل باللغة الإنجليزية أدناه.
ترجمة عنوان الشبكة (NAT) هي التقنية التي يستخدمها جهاز التوجيه للسماح للعديد من الأجهزة الموجودة على شبكة خاصة بمشاركة عنوان IP عام واحد. لقد كان في الأصل بمثابة حل مؤقت لاستنفاد عنوان IPv4؛ لقد أصبحت أداة ثابتة لكل اتصال بالإنترنت للمستهلك تقريبًا.
التشغيل الأساسي
تستخدم شبكتك المنزلية عادةً عناوين IP خاصة من أحد نطاقات RFC 1918 (10.0.0.0/8، 172.16.0.0/12، 192.168.0.0/16). وهي غير قابلة للتوجيه على الإنترنت العام؛ 192.168.1.42 للكمبيوتر المحمول الخاص بك لا يعني شيئًا خارج منزلك.
عندما يفتح الكمبيوتر المحمول اتصالاً بـ example.com:443، تترك الحزمة الكمبيوتر المحمول الخاص بك مع المصدر 192.168.1.42:55123. يعترض جهاز التوجيه الخاص بك الحزمة ويعيد كتابة المصدر إلى your.public.ip:55123 (أو إلى منفذ جديد اختاره جهاز التوجيه)، ثم يعيد توجيهه للأمام. يتذكر جهاز التوجيه الخاص بك التعيين. عندما تعود الاستجابة موجهة إلى your.public.ip:55123، يراجع جهاز التوجيه التعيين ويعيد كتابة الوجهة إلى 192.168.1.42:55123، ثم يعيد توجيهها إلى الكمبيوتر المحمول. ليس لدى كل من الكمبيوتر المحمول والوجهة أي فكرة عن حدوث أي من هذا.
يحتفظ جدول التعيين
A لجهاز توجيه المستهلك بجدول NAT مفهرسًا حسب (IP الداخلي، المنفذ الداخلي، IP الخارجي، المنفذ الخارجي، البروتوكول). تنتهي مهلة كل صف بعد أن يصبح الاتصال خاملاً - عادةً 30 ثانية لـ UDP، وعدة دقائق لـ TCP. عندما يمتلئ الجدول (تقوم أجهزة التوجيه الرخيصة بتخزين بضعة آلاف من الإدخالات فقط)، يتم طرد الإدخالات القديمة أو الخاملة. تم تعيين 192.168.1.42:55123 إلى pub.ip:55123، ويمكن للمضيف الخارجي any إرسال حزمة إلى pub.ip:55123 وسيتم إعادة توجيهها إلى الداخل. الأكثر تساهلاً.
لماذا يكسر NAT الأشياءكان
NAT سهل النشر لأنه لم يتطلب أي تغييرات في نقاط النهاية. لكنه حطم النموذج الأصلي للإنترنت من البداية إلى النهاية. إصابات محددة:
- الاتصالات الواردة. بدون إعادة توجيه المنفذ الصريح، لا يمكن لأي شخص على الإنترنت الاتصال بجهاز خلف NAT. تتطلب الاستضافة الذاتية لخادم ألعاب أو عالم Minecraft أو موقع ويب شخصي على اتصال منزلي إما إعادة توجيه المنفذ أو الترحيل.
- تطبيقات نظير إلى نظير. لا يمكن لجهازين يعملان خلف NAT الاتصال ببعضهما البعض مباشرة. يحتاجون إلى خادم تنسيق (STUN/ICE) لاكتشاف تعييناتهم العامة، وربما مرحل (TURN) إذا كانت NAT الخاصة بهم مقيدة للغاية بحيث لا يمكن اجتيازها.
- Protocols التي تتضمن عناوين IP في حمولتها. يضع كل من Classic FTP وSIP عنوان IP الخاص بالعميل داخل نص البروتوكول، والذي لا يعرف NAT إعادة كتابته. يتعين على بوابات طبقة التطبيقات (ALGs) في جهاز التوجيه تحليل الحمولة وإعادة كتابتها - وهو حل بديل هش.
NAT vs PAT vs CGNAT
بالمعنى الدقيق للكلمة، ما تفعله معظم أجهزة التوجيه المنزلية هو ترجمة عنوان Port (PAT) - ترجمة أرقام المنافذ بالإضافة إلى العناوين لمضاعفة العديد من التدفقات الداخلية عبر واحد IP خارجي. "NAT" هو الاسم اليومي لهذا. Carrier-Grade NAT هي نفس الفكرة ولكن على مستوى مزود خدمة الإنترنت: يتشارك العديد من العملاء عنوان IP عام واحد، حيث يقوم مزود خدمة الإنترنت بإجراء PAT على نطاق واسع. إعادة توجيه
Port وUPnP
لقبول الاتصالات الواردة خلف NAT، عليك إخبار جهاز التوجيه "أرسل أي حزمة تصل إلى المنفذ العام X إلى IP الداخلي Y على المنفذ Z." هذا هو إعادة توجيه port. يمكن ضبطه يدويًا في مسؤول جهاز التوجيه أو طلبه تلقائيًا بواسطة تطبيق عبر UPnP (التوصيل والتشغيل العالمي) أو NAT-PMP. يعد UPnP ملائمًا وغير آمن بشكل ملحوظ — يمكن لأي برنامج على الشبكة المحلية أن يفتح ثغرات في جدار الحماية، ولهذا السبب توصي بعض أدلة الأمان بتعطيله.
Hairpin NAT والانعكاس
إذا قمت بإعادة توجيه منفذ من عنوان IP العام الخاص بك إلى خادم داخل شبكتك، فإن الوصول إلى هذا الخادم من داخل شبكتك باستخدام اسم IP العام لا يعمل إلا إذا كان جهاز التوجيه يدعم "hairpin NAT" (يُسمى أيضًا استرجاع / انعكاس NAT). العديد من أجهزة التوجيه الرخيصة لا تفعل ذلك، وهذا هو السبب في أن "الخادم المستضاف ذاتيًا الخاص بي يعمل من الخارج ولكن ليس من أريكتي" هو ارتباك شائع.
ما يحل محل NAT
IPv6 يحتوي على العديد من العناوين التي تجعل NAT غير ضرورية - كل جهاز يحصل على عنوان قابل للتوجيه عالميًا. عادةً ما تحتوي شبكات IPv6 على جدار حماية ذو حالة بدلاً من ذلك، مما يوفر ميزة أمان NAT (عدم وجود وارد غير مرغوب فيه) دون انقطاع من طرف إلى طرف. مع نمو اعتماد IPv6، سوف يتلاشى NAT تدريجيًا - ولكنه سيظل موجودًا لعقود من الزمن.
الأسئلة المتداولة
- هل NAT جدار حماية؟
- ليس بالضبط، لكنه يعمل كواحد للاتصالات الواردة. نظرًا لأن NAT تقوم فقط بإنشاء تعيينات استجابةً لحركة المرور الصادرة، فلن يكون للحزم الواردة غير المرغوب فيها مكان تذهب إليه ويتم إسقاطها. هذه حماية حقيقية ولكن يتم الخلط بينها أحيانًا وجدار الحماية ذو السياسة الصريحة الذي يجب أن يكون موجودًا أيضًا.
- لماذا تفشل مكالمات الفيديو أحيانًا خلف NAT؟
- تستخدم مكالمات الفيديو عادةً UDP لدفق الوسائط. يمكن لجهازين يعملان خلف شبكات NAT المتماثلة أن يواجها صعوبة في العثور على مسار مباشر لأن المنفذ الخارجي يختلف لكل وجهة. الحل البديل هو مرحلات TURN التي يتم تشغيلها بواسطة خدمة الاتصال - وهي أبطأ وأكثر تكلفة، ولكنها تعمل.
- هل تتجاوز VPN NAT؟
- نعم، بطريقتين. أولاً، الاتصال الخارجي لشبكة VPN هو الشيء الوحيد الذي يتعين على NAT المنزلي لديك ترجمته؛ بمجرد إنشاء النفق، تصبح حركة مرور التطبيق بالداخل غير مرئية لـ NAT المحلي. ثانيًا، من وجهة نظر الوجهة، يبدو أن حركة المرور الخاصة بك تأتي من عنوان IP العام لخادم VPN، وليس عنوان IP المنزلي الخاص بك.
- هل يمكن تتبعي عبر مواقع ويب متعددة بسبب NAT؟
- تشترك أجهزة متعددة في منزلك في عنوان IP العام، لذا ترى المواقع الخارجية العديد من التدفقات من نفس عنوان IP - وهذا عكس أخذ بصمات الأفراد. لكن التوقيت وبصمة المتصفح وتسجيلات الدخول للحساب ما زالت تعيد ربطك. NAT وحدها ليست الخصوصية.
- لماذا تعمل بعض البرامج بشكل سيئ على شبكة Wi-Fi في المقهى؟
- غالبًا ما تقوم المقاهي بتشغيل NAT على مستوى الناقل أو تفرض أنواع NAT أكثر صرامة تحظر بروتوكولات نظير إلى نظير وBitTorrent وبعض بروتوكولات VPN. قد تقوم الشبكة المحلية المحلية أيضًا بتقييد حركة المرور غير العادية. يعمل HTTPS العادي في كل مكان تقريبًا؛ كل شيء آخر هو مقامرة.