我想查看在Linux机器中从Apache(在端口80上侦听)发送到Tomcat(在端口4080上)的HTTP标头。
根据维基百科,
标头字段是用冒号分隔的明文字符串格式的名称/值对。
我尝试了以下tcpdump
命令的一些变体:
$ sudo tcpdump -lnX dst port 4080 -c 10
11:29:28.605894 IP SOME_IP.33273 > SOME_IP.4080: P 0:49(49) ack 1 win 23 <nop,nop,timestamp 1191760962 509391143>
0x0000: 4500 0065 3a9f 4000 3f06 0084 628a 9ec4 E..e:.@.?...b...
0x0010: 628a 9c97 81f9 0ff0 9e87 eee0 144b 90e1 b............K..
0x0020: 8018 0017 fb43 0000 0101 080a 4708 d442 .....C......G..B
0x0030: 1e5c b127 4845 4144 202f 6461 7070 6572 .\.'HEAD./dapper
0x0040: 5f73 6572 7669 6e67 2f41 644d 6f6e 6b65 _serving/AdMonke
0x0050: 793f y?
结果始终是相同的-乱七八糟的英文单词(例如HEAD
)混合在一起。
如何以人类可读的格式查看标题?
Tcpdump显示整个数据包。这包括IP和TCP标头。AFAIK,您不能仅显示TCP有效负载。
—
Zoredache