使用Packet.Net和SharpPcap发送IP数据包,但生成以太网帧

时间:2012-01-30 02:10:32

标签: c# ethernet sharppcap packet.net

我正在尝试使用Packet.Net发送原始UDP数据包,但device.SendPacket()函数似乎只接受链路级PDU,这意味着我必须自己弄清楚源和目标MAC地址。 (使用ARP等)

如何使用Packet.Net创建IP数据包,但是为我生成了正确的以太网帧?

1 个答案:

答案 0 :(得分:1)

您必须知道目标mac地址。正如您所建议的那样,最好的方法是使用arp来发现mac地址。您可以从适配器本身获取的源地址。在sharppcap和packet.net的源代码版本中,有arp和构建数据包的示例。

克里斯

sharppcap / packet.net的作者