收到的UDP数据包是否会传递给原始套接字,以及我们是否可以使用原始套接字打印UDP报头

时间:2014-04-06 19:09:29

标签: sockets unix networking

此问题与 RAW SOCKETS 有关。在书中给出了收到的UDP和TCP数据包永远不会传递到原始套接字,我们无法读取RAW SOCKETS中的UDP和TCP头并读取UDP和TCP头,我们应该在“数据链接层读取它“。

我使用“ sfd = socket(AF_INET,SOCK_RAW,IPPROTO_UDP)”创建了一个原始套接字来测试它是否会接收UDP数据包并尝试打印成员的源端口和目标端口udp标题。程序打印出两个端口,即它接收UDP数据包,并且可以读取udp标头。

我不明白哪本书真的说什么,以及什么程序打印出来。 plzz帮助我,我错了。

我正在研究ubuntu os。

1 个答案:

答案 0 :(得分:0)

socket(AF_INET,SOCK_RAW,IPPROTO_UDP)创建的套接字将接收传入的UDP数据包。我应该通知这种方法不会收到一些数据包(参见here)。