我想知道如何使用C 程序仅使用MAC 地址在两个系统之间进行通信(不使用IP 地址)。我认为这是原始的以太网通信。我的要求是仅使用 MAC 地址从客户端向服务器发送数据。也许这可以通过创建我们自己的原始以太网框架来完成。
请帮我解决这个问题。如果有人用 C 编写过代码,请分享。
此链接可能对您有帮助,http://aschauf.landshut.org/fh/linux/udp_vs_raw/ch01s03.html
最佳答案
libpcap 库允许您组装原始以太网数据包并将它们直接发送到适配器:最困难的部分是发现正确的适配器。这是专为大多数平台(Win PCAP 等)上的 C/C++ 使用而设计的。
请确保这就是您想要的:我见过几个使用原始以太网数据包接口(interface)的项目,只是为了重新传输和窗口化等而采用越来越多的协议(protocol),直到您最终得到您自己的 TCP/IP 版本(只有一个尚未经过数百万人使用 Windows/Linux 或任何您的平台进行测试的版本)。如今,大多数以太网芯片也具有加速 TCP/IP 堆栈的功能:因此您也会错过这一点。
关于仅使用 MAC 地址在两个系统之间进行通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6686256/