Показаны сообщения с ярлыком http. Показать все сообщения
Показаны сообщения с ярлыком http. Показать все сообщения

Отслеживание HTTP-взаимодействия с помощью tcpdump

Иногда нужно в консоли посмотреть, что происходит с запросами на веб-сервер, правильные ли приходят запросы, нормальные ли уходят ответы, если вообще уходят. Для таких целей есть утилита tcpdump, но она больше для работы с уровнем TCP/IP,  а для получения данных о запросах HTTP,- приходится применять определённые ключи и фильтры. Я делаю вот так:

tcpdump -i eth0 -nA -s 0 '(((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)' and port 80

Duna HD: поиск тайных знаний

Некоторое время назад я стал счастливым обладателем медиаплейера Dune HD TV102. Зная, что внутри у этой приставки Linux, естественно мне захотелось посмотреть на это чудо изнутри. Не разобрать на части, конечно, а посмотреть как устроено программное обеспечение и вообще система. Кроме того,  дюна поддерживает подключение плагинов, почему-бы не разработать какое-нибудь полезное расширение для этой приставки?

April1: HTCPCP-TEA и NSA Certificate Extension

Фрагмент логотипа сайта http://www.rfc-editor.org/
В этом году на 1 апреля RFC опубликовал два новых чудесных документа:

Первый из них RFC 7168, озаглавленный The Hyper Text Coffee Pot Control Protocol for Tea Efflux Appliances (HTCPCP-TEA), повествует о нелёгкой судьбе кофейников, предоставляющих сетевые функции приготовления кофе по протоколу HTCPCP, но не умеющих при этом варить чай. К слову сказать, протокол HTCPCP тоже зафиксирован в RFC 2324 ещё 1 апреля 1998 года. Так вот, HTCPCP-TEA определяет дополнительные коды возврата, например, HTTP 300 Multiple Options возвращается кофеваркой, если URL, по которому обратился клиент, может запускать процесс приготовления и того и другого напитка. Кроме того, этот документ стандартизирует новый тип MIME message/teapot на случай, когда клиент, обращающийся по сети к кофеварке хочет непременно чаю (а если ещё да с мягкими французскими булочками,- как быть тогда?)

Второй первоапрельский RFC 2014 года,- RFC 7169 The NSA (No Secrecy Afforded) Certificate Extension,- предлагает добавить в сертификаты новое расширение "Секретность не поддерживается" на тот случай когда владелец сертификата не уверен, сможет ли он сохранить свои приватные ключи действительно приватными, или даже если прямо хочет сообщить, что приватные ключи публично доступны. Вообщем,- секретность,- это сложно.

Сравнить нельзя обновить

Ну, допустим, хочется сделать скрипт проверки и обновления какого либо файла из интернет. Хороший такой скрипт, чтобы лишней нагрузки на сервер не создавал, и лишний трафик не гонял. То есть, необходимо проверять обновление какого-либо ресурса по URL, и, при необходимости, загружать новую версию, или как-то по иначе отреагировать, письмо, например, послать. Тут на помощь приходят заголовки HTTP Last-Modified (в ответе сервера) и If-Modified-Since или If-Unmodified-Since(в запросе). При ближайшем рассмотрении оказывается, что значения в этих полях не имеет смысла из строкового приводить к типу datetime в принципе