我正在尝试创建一个小型 PPPoE 访问集中器来学习 PPPoE 的内部工作原理。这需要我发送非 IP 数据包,我需要能够设置 ETHER_TYPE 并最终在以太网帧头中设置目标 mac 字段,但据我所知,原始 WinSock 套接字使我能够提供自己的IP 标头,但不是以太网标头。
这是真的?如果是这样,有没有办法规避这个?
我很了解 WinPcap,并且仅将其用作最后的手段。
我正在尝试创建一个小型 PPPoE 访问集中器来学习 PPPoE 的内部工作原理。这需要我发送非 IP 数据包,我需要能够设置 ETHER_TYPE 并最终在以太网帧头中设置目标 mac 字段,但据我所知,原始 WinSock 套接字使我能够提供自己的IP 标头,但不是以太网标头。
这是真的?如果是这样,有没有办法规避这个?
我很了解 WinPcap,并且仅将其用作最后的手段。
我相信你是对的。Winsock 将允许原始 IP 套接字,但不允许您进入第 3 层并发送非 IP 数据包。为此,我相信您需要选择 WinPcap/TDI 选项。更多信息。