0

我在一个三角形中有 3 个 linux 盒子。所有子网都是/24。

A有两个接口:1.1.1.1、2.2.2.1

B有两个接口:1.1.1.2、3.3.3.2

C有两个接口:3.3.3.1、2.2.2.2

没有路由协议正在运行,所以我在每个节点上添加了一个静态路由。

当 ping A(1.1.1.1)-->C(3.3.3.1) 时,当 A 有一条通过 B 到 3.3.3.0 的静态路由并且C 有一条通过 B 到 1.1.1.0 的静态路由时,一切正常。所以对称路由有效美好的。

当我通过 2.2.2.1 在 C 上设置返回路径时会出现问题。ICMP 请求到达接口 3.3.3.1(我在 tcpdump 中看到),但 C 根本不做任何事情,也没有通过任何接口发送 ICMP 回复。

关于正在发生的事情有什么想法吗?

4

1 回答 1

1

您的发行版可能启用了“反向路径过滤器”,它可以防止不对称路由。在每台机器上,执行

sysctl -a | grep '\.rp_filter'

并检查所有接口是否已禁用它。

于 2014-10-10T13:00:59.583 回答