Uniq wireshark中的特定字段

时间:2018-06-16 08:41:17

标签: ubuntu dns wireshark uniq tshark

假设我捕获了以下数据包:

  • DNS响应答案:192.168.14.258
  • DNS响应答案:192.168.14.258,15.36.88.1(有时在dns respone中返回多个IP)
  • DNS响应答案:192.168.14.258
  • DNS响应答案:15.36.88.1

我如何解决这个问题?我希望得到以下结果:

  • 192.168.14.258
  • 15.36.88.1

这对我来说都是新手,所以请尽可能地解释你的答案。

感谢帮助者。

1 个答案:

答案 0 :(得分:2)

以下应该可以解决问题(如果您只想要IPv4地址):

tshark  -r input.pcap -Y dns.a -T fields -e dns.a | grep -Po "\d+\.\d+\.\d+\.\d+" | sort -u

<强>说明

  1. -Y dns.a仅选择具有DNS A记录的数据包。
  2. -T fields -e dns.a显示DNS A记录的地址字段。
  3. tshark命令将输出每个数据包的地址列表。 grep -Po "\d+\.\d+\.\d+\.\d+"将提取每个IP,每个IP都在一个新行上。
  4. | sort -ugrep命令的输出中排序和删除重复项。