我想知道如何使用 C程序(不使用IP地址)仅使用MAC地址在两个系统之间进行通信。我认为这是原始的以太网通信。我的要求是仅使用MAC地址将数据从客户端发送到服务器。也许这可以通过创建我们自己的原始以太网帧来完成。
请帮我解决这个问题。如果有人用C编写代码,请分享。
此链接可以为您提供帮助,http://aschauf.landshut.org/fh/linux/udp_vs_raw/ch01s03.html
答案 0 :(得分:3)
libpcap库允许您组装原始以太网数据包并将它们直接发送到适配器:最难的部分是发现正确的适配器。这是为大多数平台上的C / C ++使用而设计的(Win PCAP等)。
请确保这是您想要的:我已经看过几个项目,其中使用了原始以太网数据包接口,只有越来越多的协议用于重新传输和窗口等,直到你最终您自己的TCP / IP版本(只有未经数百万人使用Windows / Linux或任何平台测试的版本)。目前,大多数以太网芯片都具有加速TCP / IP堆栈的功能:所以你也会错过它。
答案 1 :(得分:0)
Here是C#的示例,也许您可以利用它。正确的代码取决于操作系统,甚至是微控制器编程时使用的芯片。