在单播下发送以太网数据包

在单播下发送以太网数据包

我正在尝试创建这种类型的以太网框架:

目标地址(第一位为零)+源地址+源 IP 地址+目标 IP 地址+数据

但我不知道是否需要 IpV4 08 00 类型或其他什么。

我想在以太网协议下进行成对通信,因此我想使用单播数据包帧,但我该如何使用它。我该如何在单播下准备以太网帧?我在谷歌上搜索但没有找到任何有用的东西我该如何继续?我有一个 stm32 lwip 和以太网交换机用于此目的。

我如何创建单播点对点以太网数据包,请帮帮我

答案1

以太网的常用帧结构是:

dest-MAC source-MAC type/length source-ip dest-ip data ...

(如果类型/长度字段为 1536 或更大,则将其解释为以太网类型代码,否则为帧长度。)

如果您不使用 ethertype 字段来指定类型,它可能会被解释为长度字段(如果小于 1536)。

在同一交换机上或通过电缆直接连接两个设备时,无需正确使用 ethertype 字段(以 ethertype 或 length 的形式)即可进行通信,这可能是可行的。但如果我假设您想在第 3 层或以上进行通信(因此在您的帧中包含 IP 地址),您可能会遇到路由器对数据包进行分段/截断/拒绝,而您将源 IP 地址的开头放在它期望帧长度/类型的位置。

您可以在 Wikepedia 页面上看到“以太网帧“。

相关内容