我已经设置 BGP 为 192.168.1.0/24 范围内的地址子集执行一些自定义路由。
我已经通过在不同子网(在 192.168.2.0/24 范围内)的不同主机上测试 ping/curl 来验证 BGP 是否正常工作,因此我认为路由配置工作正常。我还验证了可以从 pfsense 访问 IP。
但是,no route to host当尝试从同一子网中的主机访问 IP 时,ping 和 curl 会失败并显示一条消息。
curl -v http://192.168.1.11
* Rebuilt URL to: http://192.168.1.11/
* Trying 192.168.1.11...
* connect to 192.168.1.11 port 80 failed: No route to host
* Failed to connect to 192.168.1.11 port 80: No route to host
* Closing connection 0
curl: (7) Failed to connect to 192.168.1.11 port 80: No route to host
Arp 显示(incomplete)路由到的 IP,我虽然很奇怪,但也许是正常的?
arp -n
Address HWtype HWaddress Flags Mask Iface
192.168.1.1 ether 40:62:31:00:52:40 C eth0
...
192.168.1.11 (incomplete) eth0
这是子网中主机的路由。
ip route
default via 192.168.1.1 dev eth0
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.18.0.0/16 dev br-f1b94ce4ec9c proto kernel scope link src 172.18.0.1 linkdown
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.154
我偶然发现了一篇我认为是在描述我的情况的帖子,其中 IP 重定向导致主机不使用路由,但在更新net.inet.ip.redirect和net.inet6.ip6.redirect值(并重新启动 pfsense)后,我仍然遇到同样的问题。有没有办法强制同一子网中的 IP 使用正确的路由?
编辑:更新网络拓扑

