HTTP CONNECT туннелинин ичиндеги WHOIS суроосу
Уруксат берилген HTTP CONNECT жолу TCP суроосун 43-портко алып барганда прокси кол алышуусун жана WHOIS суроосун эки өзүнчө алмашуу катары караңыз.
Эгер керектүү издөө дагы эле салттуу 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 кызматын көрсөтсө, ар кандай кийинки суроо ошол кызматка өзүнүн уруксат берилген байланышын талап кылат.