【问题标题】:Why is the Wireshark not detecting DNS packet?为什么 Wireshark 检测不到 DNS 数据包?
【发布时间】:2016-07-13 08:11:20
【问题描述】:

我正在用 JAVA 模拟一个简单的 DNS 服务器(使用 UDP)。我已经完成了 DNS 请求解析并将响应发送回客户端。我在 shell 中使用 DIG 命令进行测试。我这里有这个问题:

在 Wireshark 中,当我开始监视 Loopback 上的数据包时,它会将 DNS 请求和响应数据包检测为格式错误的 ENIP 数据包。我是初学者,请指导如何解决此问题。 提前致谢。

【问题讨论】:

  • 为什么你在端口 2222 而不是端口 53 上运行 DNS?
  • 它是一个简单的 UDP 服务器,这就是我使用端口号 >1023 的原因。有什么区别吗?
  • 尝试在 53 上运行:连接错误:权限被拒绝

标签: java dns wireshark dig


【解决方案1】:

为什么 Wireshark 没有检测到 DNS 数据包?

因为您没有使用标准的 DNS 端口,而 Wireshark 仅通过端口号识别 DNS​​。您必须使用“分析”菜单中的“解码为...”菜单项来告诉它将端口 2222 流量解码为 DNS。您还需要禁用 ENIP 解析器,因为它会解析进出端口 2222 的流量。

【讨论】:

  • 我已经尝试过了,它没有改变。一直将数据包显示为 ENIP 包。
  • 如果设置了 UDP 首选项“首先尝试启发式子解析器”,请尝试取消设置。
  • 那么你需要禁用ENIP解析器。
猜你喜欢
  • 2012-01-05
  • 2017-02-09
  • 2013-11-20
  • 1970-01-01
  • 1970-01-01
  • 2012-12-10
  • 2022-12-05
  • 1970-01-01
  • 2020-11-03
相关资源
最近更新 更多