Ako potrebna provjera i dalje koristi tradicionalni WHOIS, HTTP proxy može prenijeti tu TCP razmjenu kada njegova politika dozvoljava CONNECT prema WHOIS servisu. Klijent mora završiti rukovanje s proxyjem prije slanja teksta provjere. Za dozvoljeni javni WHOIS test bez konfiguriranih proxy akreditiva lista HTTP proxyja nudi kandidate posrednika; posebno potvrdite da jedan dozvoljava host WHOIS servisa i port 43.

Za hipotetički servis nazvan whois.example, počnite ovim HTTP zahtjevom:

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

Zapišite završetke HTTP redova kao CRLF. Pročitajte cijeli odgovor proxyja, uključujući njegov završni prazni red zaglavlja, i provjerite numerički status uspjeha. Primanje dijela statusnog reda nije dovoljno za početak sljedećeg protokola.

Zatim pošaljite WHOIS tekst

Nakon što se tunel otvori, pošaljite upit koji taj WHOIS server očekuje. Jednostavan ilustrativni upit je:

example.com<CRLF>

Marker predstavlja bajtove povratka kolica i prijelaza u novi red. On nije dio naziva domene. Unutar ove WHOIS razmjene nema HTTP GET reda ni HTTP statusa odgovora.

Čitajte tekst sve dok WHOIS server ne zatvori vezu. Odgovor može sadržavati mnogo redova; prvi novi red ne znači da je potpun. Držite vremenske rokove za vezu i čitanje ograničenim u implementaciji.

Ovaj slijed daje parseru dvije različite granice. Prvo dolazi blok HTTP zaglavlja. Nakon toga dolazi WHOIS odgovor, čiji se završetak signalizira zatvaranjem veze. Sačuvajte bajtove baferisane izvan raščlanjene granice umjesto da odbacite cijelo mrežno čitanje.

Odbijanje proxyja znači da se tunel nikada nije otvorio, pa slanje domene nakon toga ne može dati WHOIS rezultat. Ako odgovor servera upućuje na drugi WHOIS servis, svaki dalji upit treba vlastitu dozvoljenu vezu s tim servisom.

Povezani članci