【问题标题】:Does sendto() dst_addr arg matters if used on a raw socket with IP_HDRINCL set?如果在设置了 IP_HDRINCL 的原始套接字上使用 sendto() dst_addr arg 是否重要?
【发布时间】:2011-05-12 03:49:08
【问题描述】:

问题几乎都在标题中。

我想知道,鉴于: - 我使用原始套接字(在 GNU/Linux 上); - 设置了选项 IP_HDRINCL,以便我自己制作 IP 标头。

由于在精心制作的 IP 标头中提供了 dest IP 地址,dst_addr 参数是否仍然起作用,还是完全没用&仅在这里因为函数原型是这样的?

【问题讨论】:

    标签: c linux sockets network-programming raw-sockets


    【解决方案1】:

    目标地址用于路由数据包 - 它将是用于路由表查找以确定将其发送到的下一跳地址的键。它通常应该与您在标头中设置的目标地址相同。

    【讨论】:

      【解决方案2】:

      不,没关系。

      您在标头中输入的是数据包的去向。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-06-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-02-02
        • 2020-02-20
        • 2014-01-04
        相关资源
        最近更新 更多