عنوان IP واحد للبروكسي ومنافذ مختلفة: هل هي مكررة؟
يحدد عنوان IP والمنفذ معًا نقطة اتصال. حافظ على هذا التمييز عند استيراد قائمة بروكسي أو اختبارها أو إزالة التكرارات منها.
صفان لهما عنوان IP نفسه ومنفذان مختلفان يمثلان نقطتي اتصال مختلفتين. قد يؤدي حذف أحدهما لمجرد تكرار IP إلى حذف بروكسي يعمل أو بروتوكول بروكسي آخر.
مثلًا، يتصل 203.0.113.10:8080 و203.0.113.10:1080 بمنفذين مختلفين. قد يعمل أحدهما ببروتوكول HTTP والآخر ببروتوكول SOCKS5. وقد تختلف أيضًا قواعد الوصول أو الإتاحة. أرقام المنافذ في هذا المثال لا تؤكد شيئًا عن الخدمة الفعلية.
اختبر نقطة الاتصال كاملة
إذا انتهت مهلة المنفذ 8080، فلا يثبت نجاح طلب إلى المنفذ 1080 أن الصف الأول يعمل. سجل البروتوكول والعنوان والمنفذ لكل اختبار. تقرير يكتفي بعبارة «عنوان IP هذا معطل» يفقد معلومات قد تفسر النتيجة.
والعكس صحيح أيضًا: قد يستخدم منفذان في النهاية عنوان الخروج نفسه. لا يجعلهما ذلك نقطة اتصال واحدة. فقد يشتركان في البنية التحتية أو القيود، لذا فإن الاحتفاظ بالصفين لا يثبت وجود مشغلين مستقلين أو مخرجي اتصال مختلفين.
ما الذي ينبغي اعتباره تكرارًا؟
في قائمة بسيطة ببروتوكول واحد معروف، أزل التكرار بناءً على عنوان IP بعد توحيد صيغته والقيمة العددية للمنفذ. يطبق مثال تنظيف باستخدام Python مخصص لـIPv4 فقط هذه القاعدة على أسطر IP:port العادية. إذا خلط الملف بين بروتوكولات، فاحتفظ بمعلوماتها أيضًا. وعند الاستيراد من قائمة بروكسي مجانية، احتفظ بالبروتوكول مع كل عنوان ومنفذ.
وجود تسميتين لنفس IP:port تمامًا يحتاج إلى فحص أدق. فقد يصف سجل HTTP وآخر HTTPS بروكسي HTTP واحدًا يدعم CONNECT أيضًا. أو قد تقبل الخدمة أكثر من نوع مصافحة. لا تدمج السجلات إلا بعد فهم التسميات؛ ولا تحذف معلومات القدرات أثناء تنظيف النص.
قد ينشئ التنسيق فروقًا وهمية
يشير 08080 و8080 إلى القيمة العددية نفسها إذا كان كلاهما مقصودًا كمنفذ عشري. وقد تكون لعناوين IPv6 عدة صيغ نصية متكافئة أيضًا. وحّد صيغة العنوان والمنفذ قبل المقارنة، مع الاحتفاظ بالمصدر الأصلي لاستكشاف المشكلات.
إزالة التكرار تحسن تنسيق القائمة. لكنها لا تتحقق من اتصال نقطة النهاية، أو امتلاك نقطتين مخارج منفصلة، أو صحة تسمية البلد.