HTTP CONNECT बोगद्यातील WHOIS चौकशी
अनुमत HTTP CONNECT मार्गाने TCP पोर्ट 43 ची चौकशी वाहून नेली जाते तेव्हा प्रॉक्सी हँडशेक आणि WHOIS विनंती दोन स्वतंत्र देवाणघेवाण म्हणून पाहा.
आवश्यक शोध अजूनही पारंपरिक WHOIS वापरत असल्यास, प्रॉक्सीचे धोरण WHOIS सेवेकडे CONNECT ला परवानगी देत असल्यास HTTP प्रॉक्सी ती TCP देवाणघेवाण वाहून नेऊ शकते. क्लायंटने शोध मजकूर पाठवण्यापूर्वी प्रॉक्सी हँडशेक पूर्ण केला पाहिजे. प्रॉक्सी क्रेडेन्शियल्स न कॉन्फिगर करता अनुमत सार्वजनिक 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 सेवेकडे निर्देश करत असल्यास, कोणत्याही पुढील चौकशीसाठी त्या सेवेशी स्वतःचे अनुमत कनेक्शन आवश्यक आहे.