【问题标题】:pcap_open_dead to simulate full UDP packets capturepcap_open_dead 模拟完整的 UDP 数据包捕获
【发布时间】:2012-04-24 06:39:37
【问题描述】:

在我的question 关于 pcap 文件创建的后续工作中,我现在想模拟保存完整的 UDP 数据包,包括以太网、IP 和 UDP 标头。

我应该使用哪种 DLT_XXX 类型?我相信 pcap_dump() skips 使用 pcap_open_dead(DLT_RAW, 65535) 时的以太网标头。

【问题讨论】:

    标签: c linux udp pcap libpcap


    【解决方案1】:

    如果要模拟完整的 UDP-over-IP-over-Ethernet 数据包,则需要 DLT_EN10MB(名称中的“10MB”是历史性的;DLT_EN10MB 真正的意思是“所有类型的以太网”)。

    (DLT_RAW 用于最低级别标头用于 IP 的数据包;它不会跳过以太网标头,这意味着您不必提供以太网标头,事实上,它要求你提供一个 - 如果你提供一个,它将被写入文件,这会混淆读取文件的程序,因为他们会期望数据包以 IPv4 或 IPv6 标头开头,而不是以太网标头。)

    【讨论】:

      猜你喜欢
      • 2012-08-05
      • 1970-01-01
      • 1970-01-01
      • 2011-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-09
      • 1970-01-01
      相关资源
      最近更新 更多