gpt4 book ai didi

linux - 如何从内核空间读取路由表信息?

转载 作者:太空宇宙 更新时间:2023-11-04 03:35:55 29 4
gpt4 key购买 nike

我希望能够从内核空间读取路由表...

在用户空间中,这些信息在/proc/net/route中是可读的,但我不知道如何从内核空间读取相同的信息..

我不想修改,只想阅读..

有什么想法吗?

最佳答案

要获取路由表,您需要发送 RTM_GETROUTE 类型的消息使用 AF_NETLINK 的套接字连接到内核家庭 — 这是 rtnetlink(7) interface .

为了方便起见,您可以使用libnetlink(3) library,而不是通过套接字发送消息。 ,并调用int rtnl_wilddump_request(<em>struct rtnl_handle *rth</em>, <em>int family</em>, RTM_GETROUTE) .

对于更简单的跨平台抽象,您可以使用 libdnet library ,它有一个函数 int route_get(<em>route_t *r</em>, <em>struct route_entry *entry</em>) .

关于linux - 如何从内核空间读取路由表信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31584092/

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