【发布时间】:2021-09-29 13:47:20
【问题描述】:
Linux 中有获取以太网头、IP 头和 UDP 头之类的函数
udp_hdr(skb)
ip_hdr
skb_push(skb, ETH_HLEN)
但是我找不到任何函数来获取有效负载,例如数据包的主体,例如包含主体的数据包,因此我可以编写 HTTP 或其他协议数据。在 Linux Device Driver book 或搜索后找不到它。那么问题是如何在内核中用以太网、IP、UDP 标头和有效负载组成 UDP 数据包?
【问题讨论】:
-
skb 是套接字缓冲区的对象
-
你没看到skb->data吗?
-
@user253751 所以我只需要使用 skb->data 作为有效载荷?
=左侧的变量将是什么数据类型,例如char *payloadhtml=skb->data会起作用吗? -
标签: c linux networking linux-kernel udp