X
X
X
X

قاعدة المعرفة

الصفحة الرئيسيةقاعدة المعرفةLinux - MultiVPS IPv6+IPv4ICMP - IPv4 Pings وNAT IPv4 اختبار ...

ICMP - IPv4 Pings وNAT IPv4 اختبار نطاق منافذ IPv4

اختبار نطاق منافذ NAT

لكي يعمل التطبيق الذي ترغب في تشغيله عبر نظام NAT IPv4 على النحو المطلوب، يجب أن يستوفي المتطلبات التالية:
- يجب أن يكون التطبيق مزدوج المكدس (أي يدعم اتصال IPv4 و IPv6)؛
- يجب أن يكون قادرًا على الاستماع إلى تنسيقات عناوين IPv6 و IPv4 (أي [::]::0 و 0.0.0.0/0، العناوين الشاملة لـ IPv6 و IPv4)؛
- خاص باستخدام UDP فقط: يجب أن يرسل دفقًا مستمرًا من الحزم عبر UDP.

تدعم جميع التطبيقات المكتوبة لنظام Linux تقريبًا الاتصال ثنائي المكدس. ومن الاستثناءات البارزة والمعروفة ما يلي:
- SOCKS 4 و SOCKS 4a (مدعوم في SOCKS 5)؛
- Docker فقط مع الإصدارات الأقل من 27.0.1 (التي تم إطلاقها في 24 يونيو 2024). لا تزال بعض التوزيعات تطبق الإصدار السابق 26، وبشكل أساسي Debian 12 و 13، على سبيل المثال؛ تم تأكيد أن Ubuntu 24.04 LTS يدعم Docker في الإصدار 27.5، على سبيل المثال، مما يجعله بديلاً قابلاً للاستخدام؛
- Kubernetes (فقط الإصدارات قبل ديسمبر 2021). لا يدعم Debian 10 هذا الإصدار، وأول دعم له هو في Debian 11.
- البرامج الأخرى قبل 2017/2018.

لا يلزم توفير عنوان IPv4 NAT المُبلغ عنه في حاسبات منافذ NAT التي لدينا للتطبيق على VPS. يكفي أن يكون التطبيق مخصصًا للاستماع إلى جميع العناوين. سيتم تقسيم حركة المرور المرسلة في نطاق منفذ معين تلقائيًا بواسطة جسر NAT الخاص بنا، وعندما يتعذر الوصول مباشرة عبر عنوان IPv6، سيتم توجيهها تلقائيًا عبر IPv4.

أمثلة اختبارية لـ TCP و UDP

تذكر: يتم دائمًا فتح المنافذ مسبقًا تلقائيًا في النطاق المحدد لك. لا تحتاج إلى إرسال تذكرة إلينا.

مثال لـ TCP: حاول تغيير /etc/ssh/sshd_config إلى منفذ واحد ضمن نطاق المنافذ المتوقع لـ VPS الخاص بك.
تأكد من ضبط ”PubkeyAuthentication“ على No وإلغاء التعليق (بدون #)، وضبط ”PasswordAuthentication“ على Yes وإلغاء التعليق. احفظ. الآن قم بما يلي:

sudo systemctl restart sshd [لـ Debian و AlmaLinux و Rocky Linux و Fedora]، أو
sudo systemctl restart ssh [لـ Ubuntu]

من أجل إعادة تشغيل خدمة SSH. تأكد من أنها تستمع إلى كلا التنسيقين قبل إجراء أي اختبار.

بعد ذلك، يمكنك محاولة تسجيل الدخول باستخدام PuTTY أو MobaXterm أو أي عميل SSH، بإدخال IPv4 للخادم العالمي ومستخدم VPS Linux (الجذر) والمنفذ المحدد الذي قمت بتعيينه للتو في خدمة SSH، وستعمل بشكل مثالي.

تم اختبار ذلك على عميل MobaXterm تحت Windows واتصال IPv4 فقط، مع socat كتقنية أساسية، في 29-10-2024، تحت AlmaLinux 9.4 و Debian 12.

مثال لـ UDP: قم بتثبيت netcat-openbsd، المتوفر تحت أنظمة Debian أو Ubuntu. بعد التثبيت، تأكد من أنك لا تريد تشغيل أي أوامر أخرى قبل netcat، وقم بتشغيل الأمر التالي:

nc -6 -u -l -p [رقم المنفذ الخاص بك]

حيث [رقم المنفذ الخاص بك] سيكون نطاق المنفذ الحصري لـ UDP الذي لديك على VPS الخاص بك لـ NAT IPv4 (تحقق من مقالة قاعدة المعرفة لحساب منفذ NAT IPv4).

ستبدأ العملية في الاستماع، عبر IPv6، على المنفذ الذي اخترته، وستبقى على هذا الحال.

بعد ذلك، حاول إرسال أي شيء (نص، رسالة، إلخ) عبر UDP:

من Windows Powershell
$message = ”Test UDP“; $udpClient = New-Object System.Net. Sockets.UdpClient; $udpClient.Connect(”116.xxx.xxx.xxx“, [رقم المنفذ الخاص بك]); $bytes = [Text.Encoding]::ASCII.GetBytes($message); $udpClient.Send($bytes, $bytes.Length); $udpClient.Close()

من Linux
echo ”Test UDP“ | nc -u -w1 116.xxx.xxx.xxx [رقم المنفذ الخاص بك]

حيث ”116.xxx.xxx.xxx“ هو عنوان IPv4 العام على مستوى الخادم الذي لديك، و[رقم المنفذ الخاص بك] سيكون رقم المنفذ الحصري لـ UDP، والذي يجب أن يكون هو نفسه رقم المنفذ الذي تستمع إليه عمليتك على VPS، وأيضًا رقم المنفذ نفسه لنطاق منافذ UDP الخاص بك.

إذا تلقيت ”Test UDP“ على VPS الخاص بك، فهذا يعني أن كل شيء يعمل بشكل صحيح.

تم اختبار هذا في 29-10-2024، على عميل MobaXterm تحت Windows ووصول IPv4 فقط، من خلال VPS مع Debian 12. Socat هي أيضًا التقنية الأساسية.

لا يمكننا ضمان أن حزمة ”nc“ في الأنظمة المستندة إلى RHEL هي المكافئ التقني لـ netcat-openbsd المتاح في Debian و Ubuntu (لم يتم اختباره)، أيضًا بسبب عادتهم في التراجع عن التغييرات، ولكن يمكننا التأكيد أن حزمة netcat-traditional غير مناسبة لهذه المهمة، لأنها لا تدعم المعلمة -6 للاستماع إلى IPv6.

فيما يتعلق باتصال ICMP عبر IPv4

لا يتم دعم ping ICMP IPv4 الصادر على MultiVPS، خارج نطاق المنفذ المخصص، بسبب خاصية تقنية محددة - تنفيذ DNS64 الذي يتم تنفيذه، في كل من الخادم الرئيسي والخدمة العامة الاحتياطية. يتم تغيير رأس الحزمة في العملية، ويحتاج DNS64 إلى ترجمة الطلب إلى اسم نطاق مناسب أولاً، مما يعني أنه لا يمكن التعرف عليه من IP إلى IP.

وبالتالي، يتم دعم اختبار اتصال IPv4 إذا كان IPv4 موجودًا كاسم نطاق.

يتم دعم ICMP عبر IPv6-to-IPv6 المباشر دائمًا في جميع البروتوكولات بغض النظر عن اختبار الاتصال بـ IP أو بنطاق.

إذا كنت تريد حساب منافذ IPv4 NAT على الخادم الافتراضي الخاص بك، انقر هنا.

لا يمكنك العثور على المعلومات التي تبحث عنها؟

إنشاء تذكرة دعم
هل وجدتها مفيدة؟
(2646 مرات / 2 وجدها الأشخاص مفيدة)

Powered by WISECP
Top