Я ищу, чтобы HTTP работал с инструментом мониторинга сервера системы Linux для каждого протокола. Я знаю, а не будет ли оно в ком или freeware?
Когда, например, я сбрасываю 80 / tcp с помощью монитора пакетов, чтобы быть конкретным
# tethereal -i ppp0 port 80 -x
Capturing on ppp0
1244206390.030474 219.111.xx.xx -> 74.125.xx.xx HTTP GET /search?output=js&num=0&dt=1244206414703&client=pub-3031568651010206&q=Cagliari%20Flight&ad=n3&ie=utf8&oe=utf8&channel=0091594208&adtest=off HTTP/1.1
0000 00 04 02 00 00 00 00 00 00 00 00 00 00 00 08 00 ................
0010 45 00 01 e5 ee 82 40 00 40 06 d2 b5 db 6f 02 5b E.....@.@....o.[
0020 4a 7d 4f 93 d4 29 00 50 3e df 4c 63 4b 6b 42 e0 J}O..).P>.LcKkB
Такой вывод предоставляется, но слишком много ненужной информации, такой как SYN-пакет или заголовок. Что я хочу
Я могу установить фильтр, и я лучший, если только желаемая информация может накапливаться в журнале.
tcpflow TCP Flow Recorder - действительно отличный инструмент для отладки http, синтаксис фильтра такой же, как и для tcpdump, нет необходимости изучать другой синтаксис :)
Пример curl на google.com:
$ tcpflow -c port 80 and host 74.125.43.103
010.190.001.182.55535-074.125.043.103.00080: GET / HTTP/1.1
User-Agent: curl/7.18.2 (i486-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.8g zlib/1.2.3.3 libidn/1.10
Host: 74.125.43.103
Accept: */*
074.125.043.103.00080-010.190.001.182.55535: HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Date: Mon, 08 Jun 2009 06:28:04 GMT
Expires: -1
Content-Type: text/html; charset=ISO-8859-1
Server: gws
Transfer-Encoding: chunked
[....]
Вы можете сделать запись с помощью / tcpdump, а позже получить то, что вам нужно, visa wirehark