gpt4 book ai didi

python - 我如何找到与给定主机的连接将通过哪个接口(interface)路由?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:42:14 25 4
gpt4 key购买 nike

我的脚本需要为多个存在于不同网络的主机配置 SNMP 陷阱目标。因此,重要的是陷阱目标地址是远程节点可访问的接口(interface)。

我真的不想解析 linux 内核路由表,因为它可能很脆弱并且很容易损坏。有没有办法询问内核并让它告诉我数据包的路由方式。

理想情况下会有一个 python 解决方案。我一直在查看 libdnet 的 python 绑定(bind),但它似乎只能返回地址 0.0.0.0 的默认网关。

最佳答案

Linux 命令 ip route get $DEST 给出了所有情况下的最佳答案。这考虑了策略路由(由不同选择器选择的多个路由表)。

语法(来自 ip route help):

       ip route get ADDRESS [ from ADDRESS iif STRING ]
[ oif STRING ] [ tos TOS ]

关于python - 我如何找到与给定主机的连接将通过哪个接口(interface)路由?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5556373/

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