اجتياز NAT (NAT traversal) هو مجموعة الطرق المستخدمة لإنشاء أو الحفاظ على الاتصال عندما يكون أحد طرفي الاتصال أو كلاهما خلف جهاز ترجمة عناوين الشبكة (NAT). بعبارات بسيطة، هي مجموعة الأدوات العملية التي تساعد التطبيقات على الاستمرار في العمل عندما تجعل العناوين الخاصة، وإعادة كتابة المنافذ، والسلوك الشبيه بجدار الحماية من الاتصال المباشر من طرف إلى طرف أمرًا صعبًا.
هذا مهم لأن الاتصالات الحديثة نادرًا ما تحدث على شبكة مسطحة ويمكن الوصول إليها بشكل عام. غالبًا ما يتم نشر هواتف IP، والهواتف البرمجية (softphones)، ومتصفحات WebRTC، وعملاء المؤتمرات، وأنظمة الألعاب، وأجهزة إنترنت الأشياء (IoT)، وأدوات التعاون عن بُعد خلف أجهزة توجيه منزلية، أو جدران حماية للمؤسسات، أو NAT بجودة الناقل (carrier-grade NAT)، أو ضوابط أمان الحافة السحابية. بدون اجتياز NAT، يمكن للعديد من نقاط النهاية هذه إرسال حركة المرور إلى الخارج، ولكنها ستواجه صعوبة في استقبال الوسائط المباشرة أو حركة مرور الند للند (peer-to-peer) مرة أخرى بطريقة يمكن التنبؤ بها.
ماذا يعني اجتياز NAT في الممارسة العملية
إنه ليس بروتوكولًا واحدًا
من الأفضل فهم اجتياز NAT كنهج تقني بدلاً من كونه معيارًا ثابتًا واحدًا. تعتمد بعض التطبيقات على طرق بسيطة مثل إعادة توجيه المنفذ الثابت أو البوابات المدركة للتطبيق. يستخدم البعض الآخر إطارًا أكثر تقدمًا مبنيًا على STUN و TURN و ICE حتى يتمكنوا من اختبار مسارات متعددة واختيار المسار الذي يعمل بشكل أفضل تلقائيًا.
هذا التمييز مهم. عندما يقول المهندسون أن تطبيقًا ما "يدعم اجتياز NAT"، فإنهم عادة ما يعنون أن التطبيق يمكنه اكتشاف العناوين التي يمكن الوصول إليها، والحفاظ على روابط NAT حية، واختبار الاتصال، وعندما يفشل الاتصال المباشر، العودة إلى مسار الترحيل. يعتمد التركيبة الدقيقة على مكدس البروتوكول، وسياسة الشبكة، ومدى تقييد بيئة NAT أو جدار الحماية.
لماذا تخلق NAT مشكلة في الاتصال
يقوم جهاز NAT التقليدي بإعادة كتابة عناوين IP الخاصة الداخلية إلى عنوان مواجه للعامة، غالبًا مع أرقام منافذ مترجمة. هذا مفيد للحفاظ على عناوين IPv4 العامة ولإخفاء الشبكات الخاصة، ولكنه أيضًا يكسر الافتراض القائل بأن نقطة النهاية يمكنها دائمًا الوصول إلى نقطة نهاية أخرى مباشرة باستخدام العنوان الذي يراه التطبيق محليًا.
بالنسبة لحركة مرور العميل-الخادم، غالبًا ما يكون هذا القيد قابلاً للإدارة لأن العميل يبدأ الاتصال نحو خادم عام. بالنسبة للجلسات من نظير إلى نظير، أو الوسائط في الوقت الفعلي، أو الصوت والفيديو ثنائي الاتجاه، تكون المشكلة أكثر صعوبة. العنوان والمنفذ المرئيان لنقطة النهاية المحلية ليسا بالضرورة ما يُرى على الجانب العام من NAT، وقد يتم إسقاط الحزم الواردة ما لم يكن هناك تعيين متوافق موجود بالفعل.

يبدأ اجتياز NAT بتحد بسيط: قد تكون كلتا نقطتي النهاية متصلتين بالإنترنت، ولكن لا يمكن الوصول إلى أي منهما مباشرة بالطريقة التي يتوقعها التطبيق.
كيف يعمل اجتياز NAT
الخطوة 1: اكتشاف العنوان المواجه للعامة
غالبًا ما تكون المهمة الأولى هي اكتشاف العنوان. قد تعرف نقطة النهاية خلف NAT عنوانها الداخلي، مثل 192.168.x.x أو 10.x.x.x، ولكن هذا العنوان غير مفيد لنظير على الإنترنت العام. يمكن لخدمة الاكتشاف مساعدة نقطة النهاية في معرفة عنوان IP العام وتعيين المنفذ الذي خصصه لها جهاز NAT لحركة المرور الصادرة.
هذا هو أحد الأسباب التي تجعل STUN مستخدمًا على نطاق واسع. يقوم خادم STUN بعكس عنوان ومنفذ المصدر الذي تمت ملاحظته، مما يسمح للعميل بمعرفة التعيين العام الموجود حاليًا. يمكن بعد ذلك مشاركة هذا التعيين مع الجانب البعيد كمسار مرشح.
الخطوة 2: اختبار ما إذا كان الاتصال المباشر ممكنًا
تعلم التعيين العام لا يضمن النجاح تلقائيًا. تسمح بعض أجهزة NAT بعودة حركة المرور فقط في ظل ظروف توقيت أو وجهة معينة. يقوم البعض الآخر بتغيير تعيينات المنافذ بقوة أو يمنع الحزم الواردة غير المرغوب فيها تمامًا. بسبب ذلك، لا يتوقف اجتياز NAT الحديث عند اكتشاف العنوان.
بدلاً من ذلك، تتبادل نقاط النهاية عناوين مرشحة وتجري فحوصات الاتصال. ICE هو الإطار الأكثر شهرة لهذا السلوك. فهو يجمع المرشحات المحلية، والانعكاسية للخادم، ومرشحات الترحيل، ويختبرها بترتيب الأولوية، ويختار مسارًا عمليًا. عندما تسمح البيئة بذلك، تكون النتيجة مسارًا مباشرًا بين الأقران. عندما لا تسمح بذلك، لا يزال بإمكان التطبيق البقاء عن طريق اختيار مسار ترحيل.
الخطوة 3: ترحيل حركة المرور إذا لزم الأمر
بعض بيئات الشبكة مقيدة للغاية بحيث لا تسمح بالوسائط المباشرة من نظير إلى نظير، حتى عندما يكون STUN متاحًا. يمكن لجدران حماية المؤسسات، أو سلوك NAT المتماثل، أو سياسات الخروج الخاضعة للرقابة الصارمة أن تمنع استقرار الاتصال المباشر. في هذه الحالات، يصبح الترحيل هو الحل الاحتياطي الموثوق.
يوفر TURN نموذج الترحيل هذا. بدلاً من إجبار كلا الطرفين على الوصول إلى بعضهما البعض مباشرة، ترسل كل نقطة نهاية حركة المرور إلى خادم ترحيل عام، والذي يقوم بعد ذلك بإعادة توجيه الحزم. هذا يضيف تكلفة، واستهلاكًا لعرض النطاق الترددي، وقليلًا من التأخير الإضافي، ولكنه يحسن بشكل كبير من فرصة استمرار عمل التطبيق في ظل ظروف الشبكة الصعبة.
تصميم اجتياز NAT الجيد لا يتعلق بإجبار الاتصال من نظير إلى نظير بأي ثمن. بل يتعلق بإيجاد أفضل مسار متاح يوازن بين الاتصال وجودة الوسائط والأمان والموثوقية التشغيلية.
التقنيات الأساسية وراء اجتياز NAT
STUN للاكتشاف والحفاظ على الاتصال
يُستخدم STUN، أو أدوات اجتياز الجلسة لـ NAT، بشكل شائع لاكتشاف عنوان IP العام والمنفذ الذي يراه العالم الخارجي. يمكن أن يساعد أيضًا في التحقق من الاتصال والحفاظ على ربط NAT حيًا. وهذا يجعله لبنة بناء مفيدة، خاصة للاتصالات في الوقت الفعلي القائمة على UDP.
في نفس الوقت، لا ينبغي التعامل مع STUN كإجابة كاملة بحد ذاتها. في عمليات النشر الحقيقية، يعمل بشكل أفضل كجزء واحد من تصميم اجتياز NAT أوسع. إذا كان سلوك NAT مقيدًا للغاية، فقد يكشف STUN وحده عن التعيين ولكنه لا يزال يفشل في توفير مسار وسائط مستقر.
TURN للاتصال القائم على الترحيل
يُستخدم TURN، أو الاجتياز باستخدام المرحلات حول NAT، عندما لا يمكن إنشاء اتصال مباشر أو لا يكون موثوقًا بدرجة كافية. تخصص نقطة النهاية عنوان ترحيل على خادم TURN، ويتبادل الأطراف الحزم عبر هذا الترحيل بدلاً من الاعتماد على إنشاء مسار مباشر.
من وجهة نظر تشغيلية، غالبًا ما يكون TURN هو شبكة الأمان التي تحافظ على قابلية استخدام تطبيقات الوقت الفعلي على الشبكات غير المتوقعة. إنه مهم بشكل خاص لجلسات WebRTC القائمة على المتصفح، والتعاون بالفيديو عن بُعد، والمستخدمين عبر الهاتف المحمول الذين يتجولون عبر شبكات مختلفة، والبيئات التي تكون فيها سياسة جدار الحماية أكثر تقييدًا من سلوك NAT للنطاق العريض للمستهلك.
ICE كإطار لاتخاذ القرارات
ICE، أو إنشاء الاتصال التفاعلي، يربط العملية بأكملها. فهو يجمع مسارات المرشحين، ويعطيها الأولوية، ويجري فحوصات، ويُرشح المسار الذي يجب أن يحمل الوسائط بالفعل. قد يكون هذا المسار من مضيف إلى مضيف على نفس الشبكة، أو انعكاسيًا للخادم عبر NAT، أو قائمًا على الترحيل عبر TURN.
هذا هو السبب في أن ICE غالبًا ما يكون الطريقة الأكثر عملية للتفكير في اجتياز NAT في أنظمة الصوت والفيديو الحديثة. بدلاً من افتراض أن مسارًا واحدًا سيعمل في كل مكان، يعامل ICE الاتصال كمشكلة تفاوض ويحلها ديناميكيًا.
الميزات الرئيسية لاجتياز NAT
تحسين إمكانية الوصول إلى نقطة النهاية
الفائدة الأكثر وضوحًا لاجتياز NAT هي أنه يجعل نقاط النهاية قابلة للوصول بشكل كافٍ للاتصال الحقيقي. يمكن للأجهزة الموجودة خلف الشبكات الخاصة المشاركة في الجلسات دون الحاجة إلى أن تمتلك كل موقع عناوين عامة أو تحتفظ بقواعد جدار حماية يدوية معقدة.
هذا ذو قيمة خاصة في المؤسسات الموزعة حيث ينضم المستخدمون من المكاتب والمنازل والفنادق والشبكات المحمولة والمواقع المؤقتة. يقلل اجتياز NAT من عدد الحالات التي تفشل فيها الاتصالات لمجرد أن الجهاز موجود خلف النوع الخاطئ من جهاز التوجيه أو جهاز الأمان.
اختيار المسار التكيفي
لا يعتمد تصميم اجتياز NAT القوي على مسار نقل واحد. يمكنه تجربة المسارات المباشرة أولاً، وتفضيل الخيارات منخفضة الكمون عندما تكون متاحة، والعودة إلى الترحيل فقط عند الضرورة. تعمل هذه المرونة على تحسين تجربة المستخدم لأن العديد من الجلسات يمكنها استخدام الوسائط المباشرة الفعالة، بينما تظل الجلسات الصعبة قابلة للاستخدام.
بالنسبة للصوت والفيديو، هذا مهم جدًا. تعتمد جودة الوسائط على زمن الوصول، وفقدان الحزم، والتذبذب. عادة ما تكون عملية اختيار المسار التي يمكنها التكيف مع ظروف الشبكة المتغيرة أفضل من التصميم الموحد الذي إما يجبر دائمًا على الترحيل أو يفترض أن الاتصال المباشر سيعمل بشكل سحري.
دعم الاتصالات في الوقت الفعلي
يعتبر اجتياز NAT مهمًا بشكل خاص للتطبيقات التي تحمل وسائط حية. غالبًا ما يمكن لحركة مرور الإشارات الوصول إلى خادم عام دون مشكلة كبيرة، ولكن مسار RTP أو وسائط الأقران هو المكان الذي تظهر فيه الأعطال. يساعد اجتياز NAT طبقة الوسائط على أن تصبح موثوقة مثل طبقة الإشارات.
هذا هو سبب ظهور المصطلح كثيرًا في VoIP، وتعاون SIP، والمكالمات عبر المتصفح، ونشر الهواتف البرمجية، والمؤتمرات، واتصالات أجهزة الحافة. في هذه البيئات، فإن النظام الذي ينشئ جلسة ولكن لا يمكنه تقديم وسائط ثنائية الاتجاه ليس قابلاً للاستخدام حقًا.
تطبيقات اجتياز NAT
مكالمات VoIP و SIP
واحدة من أكثر حالات الاستخدام شيوعًا هي اتصالات SIP و RTP. غالبًا ما توجد هواتف IP، والهواتف البرمجية، وأطراف الاتصال الداخلي SIP، والعاملون عن بُعد خلف NAT، بينما يقع PBX أو SBC أو منصة التعاون في مركز بيانات أو بيئة سحابية. يساعد اجتياز NAT الإشارات والوسائط في العثور على مسار عملي بينهما.
في عمليات النشر العملية، قد يتضمن ذلك أجهزة حافة مدركة لـ SIP، وحدود تحكم الجلسة (SBCs)، ودعم ICE، وسلوك تثبيت RTP، أو خدمات الترحيل. الهدف واضح: السماح للمكالمات بالاتصال، وتقديم صوت ثنائي الاتجاه، ومنع الصوت أحادي الاتجاه أو أعطال الوسائط الصامتة.
WebRTC والمؤتمرات القائمة على المتصفح
يعد WebRTC أحد أوضح الأمثلة على اجتياز NAT الحديث أثناء العمل. تستخدم المتصفحات بشكل شائع ICE مع STUN و TURN حتى يتمكن المستخدمون من الانضمام إلى المكالمات من الشبكات المنزلية وشبكات المؤسسات وبيئات الوصول عبر الهاتف المحمول دون فتح المنافذ يدويًا.
هذا مهم لاجتماعات الفيديو، والاتصالات المضمنة في مواقع الويب، ودعم العملاء عن بُعد، والصحة عن بُعد، ومراكز الاتصال السحابية، وأدوات الإرسال القائمة على المتصفح. بدون اجتياز NAT، سينقطع الاتصال في الوقت الفعلي عبر الويب في كثير من الأحيان في بيئات المستخدم العادية.
الألعاب والتطبيقات من نظير إلى نظير
تعتمد الألعاب عبر الإنترنت ومنصات تبادل البيانات من نظير إلى نظير أيضًا على اجتياز NAT عندما تريد اتصالًا مباشرًا منخفض زمن الوصول بين نقاط النهاية. يمكن للمسار المباشر بين الأقران أن يقلل الحمل على البنية التحتية المركزية ويحسن الاستجابة، ولكن فقط إذا كان بإمكان الأقران بالفعل اكتشاف المسار والتحقق من صحته.
هذا هو السبب في أن اجتياز NAT ذو صلة حتى خارج مجال الصوت والفيديو للمؤسسات. أي تطبيق يستفيد من حركة المرور من نقطة نهاية إلى أخرى قد يحتاج إلى طريقة ما لاختراق واقع العناوين الخاصة والترجمة عند الحافة.
الأجهزة البعيدة، وإنترنت الأشياء (IoT)، والأنظمة الطرفية
غالبًا ما يتم نشر البوابات الصناعية، وأجهزة الاستشعار، وأجهزة المراقبة، والأطراف الطرفية للوصول، والأجهزة الذكية خلف أجهزة توجيه لا يتحكم فيها مشغل المنصة بشكل كامل. يمكن لاجتياز NAT مساعدة الخدمات السحابية في الحفاظ على إمكانية الوصول للقياس عن بُعد، والإشعارات، والتشخيص، واتصالات الأقران المحدودة.
في هذه الحالات، يجب أن يكون التصميم أكثر تحفظًا. قد يفضل التطبيق التسجيل الآمن الصادر لمنصة معروفة، ثم استخدام تقنيات مدركة لـ NAT للحفاظ على استمرارية الجلسة دون تعريض الجهاز على نطاق واسع لحركة مرور الإنترنت الواردة غير المرغوب فيها.

يظهر اجتياز NAT أينما تحتاج نقاط النهاية إلى الاتصال عبر الشبكات الخاصة، من هاتف IP و WebRTC إلى الألعاب والأجهزة الطرفية المتصلة.
اعتبارات النشر
لا يمكن إغفال الأمان
لا ينبغي الخلط بين اجتياز NAT وترخيص لتجاوز سياسة الأمان بشكل أعمى. قد يؤدي كشف مرحلات الوسائط، أو فتح قواعد جدار حماية متساهلة، أو نشر خدمات TURN عامة دون التحكم في الوصول إلى خلق مخاطر غير ضرورية. لا تزال المصادقة الآمنة، وسياسة الترحيل المعقولة، والحد من المعدل، وتقسيم الشبكة أمورًا مهمة.
في بيئات المؤسسات ومقدمي الخدمات، يعمل اجتياز NAT بشكل أفضل عادةً عندما يقترن بتصميم حافة واضح. قد يشمل ذلك SBCs، والوكلاء العكسيون، والبنية التحتية المخصصة لـ TURN، والأمان القائم على الشهادات، أو التحكم في الوصول القائم على السياسات للإشارات والوسائط.
يؤثر استخدام الترحيل على التكلفة والأداء
يعمل TURN على تحسين الاتصال، لكنه ليس مجانيًا. تستهلك الوسائط المرحلة عرض النطاق الترددي للخادم العام، وتضيف حملًا على البنية التحتية، ويمكن أن تزيد زمن الوصول مقارنة بالمسار المباشر. لهذا السبب، تحاول عمليات النشر الناضجة عادةً تعظيم الاتصال المباشر حيث يكون مستقرًا وتحتفظ بـ TURN للجلسات التي تحتاجه حقًا.
تخطيط السعة الجيد مهم هنا. قد يعمل النظام ذو سعة TURN القليلة جدًا في الاختبار ولكنه يفشل خلال ساعات الذروة أو في ظل ظروف شبكة المؤسسة المقيدة، تمامًا عندما يكون الاحتياطي الموثوق في أمس الحاجة إليه.
لا يزال سلوك التطبيق مهمًا
حتى اجتياز NAT القوي لا يمكنه إصلاح كل مشكلة في تصميم التطبيق. لا يزال من الممكن أن يؤدي توقيت الحفاظ على الاتصال الضعيف، ومعالجة ICE الضعيفة، وتحديد أولويات المرشح غير الصحيح، وانتهاء مهلة الوسائط، والإشارات غير المتسقة إلى أعطال. يعمل اجتياز NAT بشكل أفضل عندما يتم تصميم التطبيق وسلوك النقل والبنية التحتية للحافة معًا.
هذا هو أيضًا سبب تطلب استكشاف الأخطاء وإصلاحها غالبًا أكثر من مجرد التحقق مما إذا كان خادم STUN قابلاً للوصول. قد يحتاج المهندسون إلى فحص مرشحات ICE، وسلوك تخصيص الترحيل، وسجلات جدار الحماية، ومنافذ الوسائط، والتقاط الحزم قبل أن يصبح السبب الحقيقي واضحًا.
الخلاصة
اجتياز NAT هو النسيج الضام الذي يساعد التطبيقات الحديثة على العمل عبر الشبكات الخاصة والمترجمة والتي تسيطر عليها السياسات. إنه ليس بروتوكولًا واحدًا ولا خدعة واحدة. إنها استراتيجية اتصال عملية مبنية حول الاكتشاف والاختبار والاستمرارية والاحتياط.
بالنسبة للصوت والفيديو وتعاون المتصفح وتطبيقات الأقران والأنظمة الطرفية البعيدة، غالبًا ما تحدد هذه الاستراتيجية ما إذا كانت الخدمة تتصل من الناحية النظرية فقط أو تعمل بشكل موثوق في العالم الحقيقي. أفضل تصميمات اجتياز NAT هي تلك التي لا يلاحظها المستخدمون بالكاد، لأن المكالمات والاجتماعات ومسارات البيانات تظل قائمة عندما يحتاجون إليها.
الأسئلة الشائعة
هل اجتياز NAT هو نفسه STUN؟
لا. STUN هو أداة واحدة تستخدم في اجتياز NAT. يساعد نقطة النهاية في معرفة عنوانها المواجه للعامة والحفاظ على الاتصال، لكن اجتياز NAT الكامل غالبًا ما يستخدم أيضًا ICE و TURN.
لماذا هناك حاجة إلى TURN إذا كان STUN موجودًا بالفعل؟
يساعد STUN في الاكتشاف وبعض حالات الاتصال المباشر، لكنه لا يضمن النجاح على الشبكات المقيدة. يوفر TURN مسار ترحيل عندما لا يمكن إنشاء اتصال مباشر موثوق بين الأقران.
هل اجتياز NAT مخصص فقط لـ WebRTC؟
لا. WebRTC هو حالة استخدام رئيسية، ولكن اجتياز NAT مهم أيضًا لصوت SIP، ومؤتمرات الفيديو، والألعاب، والبرامج من نظير إلى نظير، وأدوات الوصول عن بُعد، وبعض أنظمة إنترنت الأشياء أو الاتصالات الطرفية.
هل يقلل اجتياز NAT من الأمان؟
ليس في حد ذاته. تعتمد نتيجة الأمان على كيفية تصميم النظام. يمكن تنفيذ اجتياز NAT بأمان باستخدام المصادقة، والمرحلات الخاضعة للرقابة، وتنفيذ السياسات، ومعالجة الإشارات والوسائط الآمنة.
هل يمكن لاجتياز NAT ضمان اتصال مباشر من نظير إلى نظير؟
لا. غالبًا ما يُفضل المسار المباشر، لكن بعض الشبكات لن تسمح به. يقبل تصميم اجتياز NAT الجيد هذا الواقع ويستخدم المرحلات عند الضرورة بدلاً من ترك الجلسة تفشل تمامًا.