这个问题很常见,已经有很多答案了,但我还是不明白。该路由是否配置为"ip路由添加.“是表流的一部分吗?“路由决策”是否如下图所示,路由表配置了"ip路由“?
发布于 2023-03-31 01:03:39
我并不声称知道Linux内核网络和Netfilter的源代码,但我是这样理解的。
该路由是否配置为"ip路由添加.“是表流的一部分吗?简短的回答是肯定的。更长的答案见下文。
“路由决策”是否如下图所示,路由表配置了"ip路由“?简短的回答是肯定的。更长的答案见下文。
我认为" iptables“是一个配置Netfilter及其挂钩的命令,所以我将讨论Netfilter而不是iptables。
配置有"ip路由添加“的路由进入内核网络路由表(S),图表中的”路由决策“使用内核网络路由表。如果您在下面的链接中查看该图表,您会发现您发布的图表的更详细的版本。如图中所示,“路由决策”出现在流中,因此似乎是Netfilter流的一部分。但是,如果您想获得技术,您可能会注意到,根据图例中的颜色编码,“路由决定”实际上是“其他网络”的一部分,而实际上不是NF (Netfilter)的一部分。我让你决定你是否还认为它是“流”的一部分。
注意,内核网络路由表中的内容不仅仅是"ip路由添加“所添加的内容,例如在配置接口时自动创建的本地路由。ip route show table all
可能会向您展示其中的一些附加路线。
我相信“路由决定”与您从ip route get
命令获得的路由答案有关。假设您对命令的参数使用了适当的值(基于您在NF流中的位置,因为某些网络值可能已经更改(例如,目标地址被DNAT条目更改)。
ip route get ROUTE\_GET\_FLAGS ADDRESS [ from ADDRESS iif STRING ] [ oif STRING ] [ mark MARK ] [ tos TOS ] [ vrf NAME ] [ ipproto PRO‐ TOCOL ] [ sport NUMBER ] [ dport NUMBER ]
请注意,网络名称空间可以影响所使用的内核网络表和所遍历的Netfilter规则。
https://unix.stackexchange.com/questions/741476
复制相似问题