यदि आवश्यक लुकअप अब भी पारंपरिक WHOIS का उपयोग करता है, तो HTTP प्रॉक्सी उस TCP आदान-प्रदान को ले जा सकता है जब उसकी नीति WHOIS सेवा के लिए CONNECT की अनुमति देती है। क्लाइंट को लुकअप टेक्स्ट भेजने से पहले प्रॉक्सी हैंडशेक पूरा करना होगा। बिना प्रॉक्सी क्रेडेंशियल कॉन्फ़िगर किए अनुमत सार्वजनिक 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>

यह चिह्न कैरिज-रिटर्न और लाइन-फ़ीड बाइट दर्शाता है। यह डोमेन नाम का भाग नहीं है। इस WHOIS आदान-प्रदान के भीतर कोई HTTP GET पंक्ति या HTTP उत्तर स्थिति नहीं है।

टेक्स्ट को तब तक पढ़ें जब तक WHOIS सर्वर कनेक्शन बंद न कर दे। उत्तर में कई पंक्तियाँ हो सकती हैं; पहली नई पंक्ति का अर्थ पूर्ण होना नहीं है। कार्यान्वयन में कनेक्शन और पढ़ने की प्रतीक्षा सीमित रखें।

यह क्रम पार्सर को दो अलग सीमाएँ भी देता है। पहले HTTP हेडर ब्लॉक आता है। उसके बाद WHOIS उत्तर आता है, जिसकी पूर्णता कनेक्शन बंद होने से संकेतित होती है। विश्लेषित सीमा से आगे बफ़र किए गए किसी भी बाइट को रखें, पूरे नेटवर्क पठन को फेंकने के बजाय।

प्रॉक्सी द्वारा अस्वीकृति का अर्थ है कि सुरंग कभी नहीं खुली, इसलिए बाद में डोमेन भेजने से WHOIS परिणाम नहीं मिल सकता। यदि सर्वर का उत्तर किसी अन्य WHOIS सेवा की ओर संकेत करता है, तो किसी भी अनुवर्ती क्वेरी को उस सेवा के साथ अपना अनुमत कनेक्शन चाहिए।

संबंधित लेख