gpt4 book ai didi

linux - 为什么路由表中的路由项(通过 netlink 套接字获取)没有网络掩码信息?

转载 作者:太空狗 更新时间:2023-10-29 11:39:43 30 4
gpt4 key购买 nike

我正在编写一个程序来找出哪个网络接口(interface)最适合连接到指定的目标地址。

现在,我可以通过 netlink 套接字 API 获取路由表,但其中似乎没有网络掩码信息。我阅读了rtnetlink的手册,在所有rtattr项中,没有网络掩码信息,只有RTA_DSTRTA_SRC , RTA_GATEWAY...已定义。

那么,如何查看路由表中的网络掩码信息呢?就像我们在 route -n 输出中看到的那样。

非常感谢。

最佳答案

RTA_DST 关联的前缀长度在rtmsgrtm_dst_len 字段中,而不是在rtattr 中. (我猜是因为它是一个固定大小的字段,与 RTA_DST 不同,后者的大小因系列而异。)

关于linux - 为什么路由表中的路由项(通过 netlink 套接字获取)没有网络掩码信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6080438/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com