我想获取每个收到的TCP数据包的TCP头(发往特定程序,即一个端口) 似乎不可能使用recv()或recvfrom()来使用常规套接字来获取TCP头。
所以,我想使用原始套接字 使用raw socket,我可以使用recvfrom()来接收发往主机的所有IP数据包 如果主机收到很多数据包, 我需要检查每个数据包的端口号,看看是否需要它。 那么它可能是时间和CPU消耗吗?
while()
{
recvfrom();
check_port_number();
}
有没有什么好方法可以获取收到的tcp数据包的tcp头? 我正在使用linux c,所以THE解决方案应该是基于linux c的。谢谢!