sendto函数我们必须传递目标结构体sockaddr或sockaddr_in,但目的是什么?如果我们使用原始Socket,我们会创建自己的头,这意味着我们将直接在头中指定地址,而不是在sockaddr_in结构体中。这是否意味着我们在原始套接字上使用sendto是为了确定使用哪个接口?
8zzbczxx1#
原始IP套接字仅包含网络层信息作为目标,即IP地址。为了在本地网络中传递数据包,还需要具有较低层的信息,即使用哪个网络接口进行发送,在链路层将哪个MAC地址作为目标等。sendto中给出的目标IP地址用于确定这些信息。
sendto
1条答案
按热度按时间8zzbczxx1#
原始IP套接字仅包含网络层信息作为目标,即IP地址。为了在本地网络中传递数据包,还需要具有较低层的信息,即使用哪个网络接口进行发送,在链路层将哪个MAC地址作为目标等。
sendto
中给出的目标IP地址用于确定这些信息。