从 mikrotik 两个 IP 地址路由到同一个网关

eri*_*eri 3 routing wide-area-network mikrotik routeros

我在和接口上有 2 个静态地址(a.b.c.72/24a.b.c.128/24)。ISP 有一个网关 。我只能在 上使用,只能在 上使用。gateway1gateway2a.b.c.1a.b.c.72gateway1a.b.c.128gateway2

如何让 abc128 工作?我想通过第二个接口路由一些本地机器。我知道一些通过 mikrotik 中不同网关进行路由的方法。在 linux 中,我可以指定dev参数进行路由。

我添加了路由表和规则,但它仍然通过 gateway2 路由。

 /ip dhcp-client print
Flags: X - disabled, I - invalid 
 #   INTERFACE           USE ADD-DEFAULT-ROUTE STATUS        ADDRESS           
 0   gateway1            yes no                bound         X.Y.164.72/24  
 1   gateway2            yes no                bound         X.Y.164.128/24 



/ip route
add distance=51 gateway=X.Y.164.1 pref-src=X.Y.164.128 routing-mark=gate2
add distance=1 dst-address=X.Y.164.0/24 gateway=gateway2 pref-src=X.Y.164.128 routing-mark=gate2
add distance=52 gateway=X.Y.164.1 pref-src=X.Y.164.72 routing-mark=gate1
add distance=1 dst-address=X.Y.164.0/24 gateway=gateway1 pref-src=X.Y.164.72 routing-mark=gate1
add distance=52 gateway=X.Y.164.1
add distance=10 dst-address=10.0.0.0/8 gateway=center
Run Code Online (Sandbox Code Playgroud)

在选定的线路上,我需要等效于 iproute,ip route add default via 109.60.164.1 dev gateway2 table gate2但它通过 gateway1 接口路由 路由

网络地址转换

/ip firewall nat
add action=masquerade chain=srcnat out-interface=gateway1
add action=masquerade chain=srcnat out-interface=gateway2
Run Code Online (Sandbox Code Playgroud)

Mangle 现在很干净。它标记了来自选定客户端的连接和路由。这不是问题,并且适用于不同的网关。

小智 5

由于两条链路具有相同的 IP 网关这一事实,您必须以某种方式设置要在路由表中使用的接口。语法如下: gateway=[ip]%[interface] + 特定首选源;鉴于此事实,在您的路由器中,这些路由应如下所示:

/ip route gateway=109.60.164.1%gateway1 pref-src 109.60.164.72 distance=1 
/ip route gateway=109.60.164.1%gateway2 pref-src 109.60.164.128 distance=2 

/ip route gateway=109.60.164.1%gateway1 pref-src 109.60.164.72 routing-mark=gate1 distance=1 
/ip route gateway=109.60.164.1%gateway2 pref-src 109.60.164.128 routing-mark=gate1 distance=2 

/ip route gateway=109.60.164.1%gateway2 pref-src 109.60.164.128 routing-mark=gate2 distance=1 
/ip route gateway=109.60.164.1%gateway1 pref-src 109.60.164.72 routing-mark=gate2 distance=2
Run Code Online (Sandbox Code Playgroud)