ECMP-“Equal-Cost Multi-Path Routing”即等价多路径路由是三层路由标准协议,在华为、H3C和思科等路由器中ECMP路由配置是很常见的静态路由负载均衡,也是运营商和IDC网络常见路由配置,但不能用于nat网络下的路由负载均衡。

Equal-Cost Multi-Path Routing(等价多路径路由)均衡策略是每10分钟后,会重新计算均衡线路,非nat网络的三层路由目标和源地址是没有隐藏的,目标和源IP是相互能识别的,虽然线路改变了,但目标和源地址IP地址未改变,连接不会受到影响。但nat网络下私网IP到出口IP是做了隐藏的,ECMP重新计算线路路径,目标IP虽然不变,但多线路出口的IP改变了,源出口IP改变后,连接到目标IP会认为是非法连接,导致目标IP无响应出现频繁掉线情况,所以当基于nat的负载均衡时“Equal-Cost Multi-Path Routing”是不能选择的,在nat网络的负载均衡请选择PCC策略(PCC配置参考),当然PCC也可以实现ECMP,而且还能实现按照线路不同带宽比例调整路由权重

  • Equal-Cost Multi-Path Routing的操作,通过在ip route添加多网关的静态路由(格式如:gateway=x.x.x.x,y.y.y.y)路由协议会建立动态的多路路由。

假设路由网络中有两条网关到10.1.12.0/24,一个网关是192.168.0.253,一个是192.168.1.253,我们配置ECMP负载均衡规则:

[admin@MikroTik] ip route> add dst-address=10.1.12.0/24 gateway=192.168.0.253,192.168.1.253
[admin@MikroTik] ip route> print
Flags: X – disabled, A – active, D – dynamic,

C – connect, S – static, r – rip, b – bgp, o – ospf, m – mme,
B – blackhole, U – unreachable, P – prohibit
 #      DST-ADDRESS        PREF-SRC       GATEWAY            DISTANCE
 0 A S  0.0.0.0/0                             10.5.8.1                  1
 1 A S  10.1.12.0/24                         192.168.0.253            1
                                                           192.168.1.253    
 2 ADC  10.5.8.0/24        10.5.8.2          ether1                    0
 3 ADC  192.168.0.0/24     192.168.0.2     ether2                    0
 4 ADC  192.168.1.0/24     192.168.1.2     ether3                    0

[admin@MikroTik] ip route>

使用winbox配置:

当有多个默认网关时,也可以配置为

[admin@MikroTik] ip route> add  gateway=192.168.0.253,192.168.1.253