HTTP 트래픽을 파일의 포트 8007로 보낸 다음 나중에 보려고 합니다.
# tcpdump -i eth0 -s0 -n -w /tmp/capture port 8007 &
# tcpdump -r /tmp/capture -A | grep '10.2.1.50'
패킷 데이터를 ASCII 형식으로 볼 것으로 예상했지만 그렇지 않습니다. 내가 얻는 것은 이것이다:
23:03:16.819935 IP 10.2.1.50.8007 > 10.2.1.120.57469: . ack 1369 win 272 <nop,nop,timestamp 188139705 215355175>
23:03:16.819943 IP 10.2.1.120.57469 > 10.2.1.50.8007: P 1369:1592(223) ack 1 win 12 <nop,nop,timestamp 215355175 188139703>
23:03:16.819947 IP 10.2.1.50.8007 > 10.2.1.120.57469: . ack 1592 win 272 <nop,nop,timestamp 188139705 215355175>
23:03:17.029587 IP 10.2.1.50.8007 > 10.2.1.120.57469: P 1:780(779) ack 1592 win 272 <nop,nop,timestamp 188139758 215355175>
23:03:17.029736 IP 10.2.1.50.8007 > 10.2.1.153.49989: F 822:822(0) ack 3494 win 272 <nop,nop,timestamp 188139758 1641992210>
23:03:17.040759 IP 10.2.1.120.57469 > 10.2.1.50.8007: . ack 780 win 15 <nop,nop,timestamp 215355396 188139758>
23:03:17.079305 IP 10.2.1.153.49989 > 10.2.1.50.8007: . ack 823 win 15 <nop,nop,timestamp 1642053303 188139758>
실제 내용을 보려면 쓰기나 읽기를 어떻게 수정해야 합니까? -v와 같은 다른 옵션을 시도했지만 콘텐츠에서는 작동하지 않습니다. SLES 11 SP2를 사용하고 있습니다. 이것이 tcpdump
올바른 도구입니까?
감사합니다.
- 편집하다
# tcpdump --version
tcpdump version 3.9.8
libpcap version 0.9-PRE-CVS
-X 옵션도 사용해 보았지만 여전히 페이로드 데이터를 볼 수 없습니다.
답변1
출력을 grep으로 파이프하기 때문에 헤더만 볼 수 있고 패킷 내용은 볼 수 없습니다. 따라서 IP 주소가 있는 행만 가져옵니다.
-A
옵션은 tcpdump
패킷 내용도 제공합니다.
답변2
사용tcpdump -X
예를 들어(제가 사용하는 Fedora/Centos의 경우):
sudo tcpdump -nvvvXi br0
13:29:20.311228 00:1c:73:86:12:f9 > 01:00:5e:00:01:81, ethertype IPv4 (0x0800), length 86: (tos 0x0, ttl 5, id 0, offset 0, flags [none], proto UDP (17), length 72)
10.134.245.1.ptp-general > 224.0.1.129.ptp-general: Ptp MessageType: Follow_Up, SequenceId: 8208
0x0000: 4500 0048 0000 0000 0511 d49c 0a86 f501 E..H............
0x0010: e000 0181 0140 0140 0034 0cd0 0802 002c .....@[email protected].....,
0x0020: 0100 0000 0000 0000 0000 0000 0000 0000 ................
0x0030: 444c a8ff ffc7 1f6b 0236 2010 0200 0000 DL.....k.6......
0x0040: 5f2a b430 0d5e b480 _*.0.^..
답변3
이것이 내용입니다. 콘텐츠를 필터링하는 데 사용한 몇 가지 명령이 있습니다.
답변4
OP가 IP 10.2.1.50에서 오는 패킷의 내용을 보고 싶어하는 것 같습니다.
방금 이 기사를 우연히 발견해서 업데이트하고 싶었습니다. tcpdump에서 스위치 사용하기
저는 저장된 pcap 파일을 스위치와 함께 사용한 적이 없지만 작동할 수 있기를 바랍니다. 라이브 tcpdump에서 예제를 사용하는 방법 - 10.2.1.50의 "들어오고 나가는" 트래픽을 확인하거나 네트워크의 결과를 확인하거나 10.2.1.50에서 발생하는 트래픽을 확인하세요. 도움이 되기를 바랍니다.
host
tcpdump -nnA host 10.2.1.50
tcpdump -nnA net 10.2.1.0/24
tcpdump -nnA src 10.2.1.50
편집하다또한 올바르게 grep하려면 -A 스위치를 사용하십시오
tcpdump -r /tmp/capture -A | grep -A5 '10.2.1.50'
. A5 스위치는 10.2.1.50과 일치하는 행 다음에 다음 5개 행을 표시합니다.