我有一个 Mikrotik RB2011 和几个 TP-Links - WR740N,位于不同的地理位置,是我的 ISP MAN 网络的一部分。
我的 ISP 为每个设备提供了一个(静态)地址/掩码和一个网关。例如:
- 路由板 - 192.168.5.10/24 - 门 192.168.5.1
- TPLink1 - 192.168.10.5/24 - 门 192.168.10.1
- TPLink2 - 192.168.20.10/24 - 门 192.168.20.1
- TPLink3 - 192.168.30.15/24 - 门 192.168.30.1
- ETC...
因为路由板有多个 WAN 地址,所以我通过以下方式配置了从上方到网络的路由:
- 访问 TPLink1 - 192.168.10.0/24 -> 192.168.5.1
- 访问 TPLink2 - 192.168.20.0/24 -> 192.168.5.1
- 访问 TPLink3 - 192.168.30.0/24 -> 192.168.5.1
- 等等...
一切顺利。我能够从路由器板访问每个 TPLink。
但是我有一个 TPLinkX,其分配地址为 192.168.5.6/29,并且其网络(5.0/29)在物理上与路由器板的网络(5.0/24)不同。
因此,我添加了一条新路由(routerboard 站点) - 192.168.5.6/32 -> 192.168.5.1,一切正常,但过了一段时间(5-10-15-20 分钟)后,这条路由被忽略了。如果我禁用该路由并再次启用它 - 它又会开始工作(再次工作一小段时间)。顺便说一句,我很惊讶它居然能工作(虽然只是短暂的),因为默认情况下我有一个动态路由 - 192.168.5.0/24 -> 接口,距离为 0(由于静态 WAN 地址而生成)。
有没有办法“绕过”仅针对一个主机的默认路由(或另一种方法)?
提前致谢
编辑
/ip 路由
# jan/22/2015 13:38:30 by RouterOS 6.25
# software id = 8IZ2-4V85
0 A S dst-address=192.168.5.6/32 gateway=192.168.5.1
gateway-status=192.168.5.1 reachable via ether1-gateway distance=1
scope=30 target-scope=10
1 ADS dst-address=0.0.0.0/0 gateway=XXX.XXX.XXX.XXX
gateway-status=XXX.XXX.XXX.XXX reachable via pppoe distance=1
scope=30 target-scope=10
3 ADC dst-address=192.168.1.0/24 pref-src=192.168.1.1 gateway=ether2
gateway-status=ether2 reachable distance=0 scope=10
4 A S dst-address=192.168.8.0/24 gateway=192.168.5.1
gateway-status=192.168.5.1 reachable via ether1-gateway distance=1
scope=30 target-scope=10
14 A S dst-address=192.168.12.0/24 gateway=192.168.5.1
gateway-status=192.168.5.1 reachable via ether1-gateway distance=1
scope=30 target-scope=10
15 A S dst-address=192.168.20.0/24 gateway=192.168.5.1
gateway-status=192.168.5.1 reachable via ether1-gateway distance=1
scope=30 target-scope=10
16 A S dst-address=192.168.24.0/24 gateway=192.168.5.1
gateway-status=192.168.5.1 reachable via ether1-gateway distance=1
scope=30 target-scope=10
17 ADC dst-address=192.168.5.0/22 pref-src=192.168.5.11
gateway=ether1-gateway gateway-status=ether1-gateway reachable
distance=0 scope=10
23 ADC dst-address=XXX.XXX.XXX.XXX/32 pref-src=XXX.XXX.XXX.XXX gateway=pppoe client
gateway-status=pppoe reachable distance=0 scope=10
第一个路线有问题。它能用一段时间,但后来突然被忽略了。
答案1
您可以使用 mikrotik 路由中的规则选项卡来指定特定 IP 的路由,如下所示:
ip route add dst-address=192.168.5.6/32 gateway=192.168.5.1 routing-mark=tplinkx
这会在表 tplinkx 上添加路由
/ip route rule add action=lookup-only-in-table dst-address=192.168.5.6/32 table=tplinkx
此命令检查 dst-address 是否为 5.6,然后查找 tplinkx 标记路由而不是默认路由。