【问题标题】:Why I can't capture UDP packets sent by my Java application with wireshark?为什么我无法使用wireshark 捕获Java 应用程序发送的UDP 数据包?
【发布时间】:2013-04-27 08:38:59
【问题描述】:

我正在开发一个使用 UDP 进行通信的应用程序,我有一个“监听服务器”和一个“发送者”。我可以接收数据包并将它们打印到控制台,但我无法使用wireshark 捕获数据包。我需要验证发送的 UDP 标头和数据,但我不能,因为我没有使用wireshark 捕获任何内容。

侦听服务器(接收方)和发送方在同一台计算机上运行,​​但我正在我的外部 IP 地址(66.55.44.33:1234)上执行操作(发送数据包)。

【问题讨论】:

    标签: java udp wireshark


    【解决方案1】:

    监听服务器(接收方)和发送方在同一台计算机上运行

    然后:

    • 如果您在 Linux 上运行,请在名为“lo”的接口上捕获;
    • 如果您在另一个 UN*X 上运行,请尝试在名为“lo0”的接口上进行捕获;
    • 如果您是在 Windows 上运行,那么您就不走运了。

    正如 EJP 所指出的,您的数据包在内部循环,因此您必须侦听“环回”接口,如果操作系统有一个并让您捕获它。

    【讨论】:

    • Wireshark 绝对可以捕获相关接口,就像 tcpdump 和其他捕获程序一样。 Wireshark 的任何内容都不需要数据包“在线上”。
    【解决方案2】:

    因为 Wireshark 会捕获在线上的数据包。您正在使用内部环回,即使您不这么认为。

    【讨论】:

      猜你喜欢
      • 2011-12-20
      • 2014-09-05
      • 1970-01-01
      • 1970-01-01
      • 2017-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多