Če zahtevano iskanje še vedno uporablja tradicionalni WHOIS, lahko HTTP posrednik prenese to izmenjavo TCP, kadar njegova politika dovoljuje CONNECT do storitve WHOIS. Odjemalec mora dokončati rokovanje s posrednikom, preden pošlje besedilo iskanja. Za dovoljen javni preizkus WHOIS brez nastavljenih poverilnic posrednika seznam posrednikov HTTP ponuja kandidatne posrednike; ločeno potrdite, da eden dovoljuje gostitelja storitve WHOIS in vrata 43.

Za hipotetično storitev z imenom whois.example začnite s to zahtevo HTTP:

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

Zapišite konce vrstic HTTP kot CRLF. Preberite celoten odgovor posrednika, vključno z njegovo zaključno prazno vrstico glave, in preverite številčno stanje uspeha. Prejem dela vrstice stanja ne zadostuje za začetek naslednjega protokola.

Nato pošljite besedilo WHOIS

Ko se tunel odpre, pošljite poizvedbo, ki jo pričakuje ta strežnik WHOIS. Preprosta ponazoritvena poizvedba je:

example.com<CRLF>

Oznaka predstavlja bajte vračila vozička in prehoda v novo vrstico. Ni del imena domene. Znotraj te izmenjave WHOIS ni vrstice HTTP GET niti stanja odgovora HTTP.

Berite besedilo, dokler strežnik WHOIS ne zapre povezave. Odgovor lahko vsebuje veliko vrstic; prva nova vrstica ne pomeni, da je popoln. V implementaciji ohranite omejitve časa za povezavo in branje.

To zaporedje daje razčlenjevalniku tudi dve različni meji. Najprej pride blok glav HTTP. Nato pride odgovor WHOIS, katerega dokončanje je označeno z zaprtjem povezave. Ohranite bajte, shranjene v medpomnilniku onkraj razčlenjene meje, namesto da zavržete celotno omrežno branje.

Zavrnitev posrednika pomeni, da se tunel ni nikoli odprl, zato pošiljanje domene pozneje ne more dati rezultata WHOIS. Če odgovor strežnika kaže na drugo storitev WHOIS, vsaka nadaljnja poizvedba potrebuje svojo dovoljeno povezavo s to storitvijo.

Sorodni članki