إذا كان البحث المطلوب لا يزال يستخدم WHOIS التقليدي، فيمكن لوسيط HTTP أن يحمل تبادل TCP هذا عندما تسمح سياسته بـCONNECT إلى خدمة WHOIS. ويجب على العميل إكمال مصافحة الوسيط قبل إرسال نص البحث. ولاختبار WHOIS عام مسموح دون بيانات اعتماد وسيط مهيأة، تقدّم قائمة وسطاء HTTP وسطاء مرشحين؛ وتحقق بشكل منفصل من أن أحدهم يسمح بمضيف خدمة WHOIS والمنفذ 43.

لخدمة افتراضية باسم whois.example، ابدأ بطلب HTTP هذا:

CONNECT whois.example:43 HTTP/1.1
Host: whois.example:43

اكتب نهايات أسطر HTTP بصيغة CRLF. اقرأ استجابة الوسيط كاملة، بما في ذلك سطر الترويسة الفارغ الذي ينهيها، وتحقق من رمز النجاح الرقمي. استلام جزء من سطر الحالة لا يكفي لبدء البروتوكول التالي.

ثم أرسل نص WHOIS

بعد فتح النفق، أرسل الاستعلام الذي يتوقعه خادم WHOIS ذلك. والاستعلام التوضيحي البسيط هو:

example.com<CRLF>

يمثل هذا الرمز بايتَي إرجاع العربة وتغذية السطر. وهو ليس جزءًا من اسم النطاق. ولا يوجد سطر HTTP GET ولا حالة استجابة HTTP داخل تبادل WHOIS هذا.

اقرأ النص حتى يغلق خادم WHOIS الاتصال. فقد تحتوي الاستجابة على أسطر كثيرة؛ وأول سطر جديد لا يعني أنها اكتملت. أبقِ مهلات الاتصال والقراءة محدودة في التنفيذ.

يمنح هذا التسلسل المحلل حدين متميزين. يأتي أولًا كتلة ترويسات HTTP. وبعد ذلك تأتي استجابة WHOIS، التي يُشار إلى اكتمالها بإغلاق الاتصال. احتفظ بأي بايتات مخزنة تتجاوز حدًا تم تحليله بدلًا من إسقاط قراءة شبكة كاملة.

رفض الوسيط يعني أن النفق لم يُفتح أبدًا، لذا لا يمكن لإرسال نطاق بعد ذلك أن ينتج نتيجة WHOIS. وإذا أشارت إجابة الخادم إلى خدمة WHOIS أخرى، فإن أي استعلام لاحق يحتاج إلى اتصاله المسموح الخاص بتلك الخدمة.

مقالات ذات صلة