【发布时间】:2011-03-28 22:56:48
【问题描述】:
我想知道 C 中的内置库函数来构建一个完整的数据包(连同帧)并通过网络发送它...任何人都可以上传执行上述内容的 C 代码... :)
【问题讨论】:
标签: c network-programming packets
我想知道 C 中的内置库函数来构建一个完整的数据包(连同帧)并通过网络发送它...任何人都可以上传执行上述内容的 C 代码... :)
【问题讨论】:
标签: c network-programming packets
下面是两个通过 UDP 套接字通信的程序的非常简单的代码示例:一个代码列表创建并发送一个数据包,一个接收它。
http://www.abc.se/~m6695/udp.html
请注意,这些网络函数不是 C 语言本身的一部分,没有网络支持,但它们是标准的(我认为是 POSIX),并且在大多数现代 C 实现中以类似的形式提供。
请注意,使用标准函数,您只需指定数据包负载、地址、端口和一些标志,您无法控制以太网帧、IP 标头等的确切内容,这些是为您创建的由操作系统。如果您需要对低级数据包进行这种级别的控制,我相信您可以为此目的使用 libpcap/winpcap,或者某些操作系统可能具有“原始”套接字,可以让您执行此操作。
【讨论】: