【发布时间】:2022-11-16 05:43:32
【问题描述】:
是否可以使用 tshark 检查一个或多个 ip 地址是否出现在 pcap 文件中?我知道我可以用 tshark -r infile -w outfile ip.addr==172.26.29.2 || ip.addr==172.26.31.21 显示所有出现的事件,但是是否有一个选项可以不显示所有事件(也许只显示第一次出现的事件。)?
【问题讨论】:
是否可以使用 tshark 检查一个或多个 ip 地址是否出现在 pcap 文件中?我知道我可以用 tshark -r infile -w outfile ip.addr==172.26.29.2 || ip.addr==172.26.31.21 显示所有出现的事件,但是是否有一个选项可以不显示所有事件(也许只显示第一次出现的事件。)?
【问题讨论】:
您应该能够通过以下几个步骤实现这一目标:
获取所有源 IP 地址的列表:
tshark -r infile -Y "ip" -T fields -e ip.src > infile_ips.txt
附加所有目标 IP 地址的列表:
tshark -r infile -Y "ip" -T fields -e ip.dst >> infile_ips.txt
确保所有 IP 都列在单独的行中,在隧道 IP 或 ICMP 错误的情况下它们可能不是这样,然后对列表进行排序并消除重复项:
cat infile_ips.txt | tr , '
' | sort -u
或者使用这一步更容易一些:
tshark -r infile -Y "ip" -T fields -e ip.addr | tr , '
' | sort -u
一旦您获得了捕获文件中所有唯一 IP 地址的列表,您就可以使用 grep 或您想要的任何其他方式在该列表中搜索您感兴趣的任何 IP 地址。
有关我在上面使用的选项的更多信息,请参阅tshark man page。
【讨论】: