不使用system()命令就能在C中读取/写入路由表吗?

| 我有用C编写的代码。我想使用存储在路由表中的C代码信息。可能吗?     
已邀请:
        您可以打开一个netlink套接字并发送路由更新消息。有一篇有关如何执行此操作的文章。     
        您也可以运行\“ strace route add ... \”来查看
route
命令的执行方式。 在我的系统上,它使用
ioctl
SIOCADDRT
。稍作搜索就会得到一些示例代码。 奇怪的是,我发现的最佳文档来自IBM的AS400手册页。 如果您只想阅读路由表,则可以打开并阅读
/proc/net/route
。 (同样,
strace
表示
route
命令是这样做的。)十六进制数是机器尾数形式的32位IP地址。试试
cat /proc/net/route
。     
        如果只想查询路由表,请尝试读取文件“ 3”。它在我的系统中有效。     

要回复问题请先登录注册