이것은 작동합니다:
tethereal -i eth0 -w /root/mycapture.pcap
하지만 모든 패킷을 캡처합니다. DNS 요청만 캡처하면 됩니다. 이것이 가능한가? 서버는 리눅스입니다.
다른 점은 네트워크를 통해 파일을 다른 컴퓨터에 저장할 수 있다는 것입니다. 서버에는 캡처 파일을 저장할 만큼 크지 않은 작은 하드 드라이브만 있습니다.
감사해요.
답변1
다음을 사용하여 캡처 필터를 지정합니다.-f "port 53"
.
참고 사항: tshark
지금은 tethereal
더 이상 아닙니다.
로컬로 캡처하지만 데이터를 원격 서버에 저장하려면 -
또는 /dev/stdout
출력 파일로 사용하고 명령을 다음으로 파이프하십시오 ssh
.
tshark -i eth0 -f "port 53" -l -w - | ssh otherhost "cat > foo.pcap"
tcpdump -i eth0 -f "port 53" -l -w - | ssh otherhost "cat > foo.pcap"
반대의 경우도 있습니다. 즉, 원격 서버에서 캡처하고 데이터를 로컬에 저장할 수도 있습니다.
ssh otherhost "tshark -i eth0 -f "port 53" -l -w -" > foo.pcap
ssh otherhost "tcpdump -i eth0 -f "port 53" -l -w -" > foo.pcap
메모:언제나이와 같은 데이터를 저장할 때 캡처 필터를 지정하십시오. 그렇지 않으면 각 패킷이 무한 루프를 발생시킵니다.