如何实现路由器的负载均衡

通过在 /ip route 使用逗号“,”间隔添加多个网关就可以实现负载均衡功能,如:由两个网关 192.168.1.1 和 192.168.2.1 ,在路由器中设置为 /ip route add gateway 192.168.1.1,192.168.2.1 这即可实现负载均衡。

如何实现路由器的策略路由

RouterOS 允许管理多个路由表,当你在使用多条 ISP 线路实,通过多个路由表可以为内网用户分配访问不同外网的线路,同时也可以指定访问端口的线路。策略路由设置具体如下:

Main 表总是存在的,这个表是不能被删除和更改名称的。 Main 表管理着 /ip route 目录选项:

 
[admin@MikroTik] ip policy-routing> table main
[admin@MikroTik] ip policy-routing table main> print

Flags: X - disabled, I - invalid, D - dynamic, R - rejected

#TYPEDST-ADDRESSGGATEWAYDISTANCEINTERFACE
0static192.168.1.0/24r192.168.0.501Local
1static0.0.0 .0/0r10.0.0.11Public
2 Dconnect192.168.0.0/24r0.0.0 .00Local
3 Dconnect10.0.0 .0/24r0.0.0 .00Public

[admin@MikroTik] ip policy-routing table main>

[admin@MikroTik] ip policy-routing table main> /ip route print

Flags: X - disabled, I - invalid, D - dynamic, J - rejected,

C - connect, S - static, R - rip, O - ospf, B - bgp

#DST-ADDRESS
G
GATEWAY
DISTANCE
INTERFACE
0 S192.168.1.0/24
r
192.168.0.50
1
Local
1 S0.0.0 .0/0
r
10.0.0.1
1
Public
2 DC192.168.0.0/24
r
0.0.0 .0
0
Local
3 DC10.0.0 .0/24
r
0.0.0 .0
0
Public

[admin@MikroTik] ip policy-routing table main>

添加一个新的路由表,命名为 mt

 

[admin@MikroTik] ip policy-routing> add name=mt

[admin@MikroTik] ip policy-routing> print

Flags: D - dynamic

Flags: X - disabled, I - invalid, D - dynamic, R - rejected

#

NAME

0mt

1      D         main

[admin@MikroTik] ip policy-routing>

在 mt 表中添加路由访问 10.5.5 .0/24 的网络,经过的网关 10.0.0.22

 

[admin@MikroTik] ip policy-routing> table mt

[admin@MikroTik] ip policy-routing table mt> add dst-address= 10.5.5 .0/24 \

\... gateway= 10.0.0 .22

[admin@MikroTik] ip policy-routing table mt> print

Flags: X - disabled, I - invalid, D - dynamic, R - rejected

#

TYPE

DST-ADDRESSGGATEWAYDISTANCEINTERFACE
0static10.5.5 .0/24r10.0.0.221Public

[admin@MikroTik] ip policy-routing table mt>

定义策略路由的规则

如添加一条指定源地址为 10.0.0 .144 主机的所有数据进入 mt 的路由表中查询路由:

 

[admin@MikroTik] ip policy-routing rule> add src-address= 10.0.0 .144/32 \

\... table=mt action=lookup

[admin@MikroTik] ip policy-routing rule> print

Flags: X - disabled, I - invalid

#SRC-ADDRESSDST-ADDRESSINTE...FLOWACTIONTABLE
00.0.0 .0/00.0.0 .0/0all lookupmain
110.0.0 .144/320.0.0 .0/0all lookupmt
[admin@MikroTik] ip policy-routing rule>

当添加完后,要把添加的策略移动到默认路由规则(即在下面表中看到的第 0 条规则,此规则不能删除)之上,才能有效。

 
[admin@MikroTik] ip policy-routing rule> add flow=CQ action=lookup
[admin@MikroTik] ip policy-routing rule> print
Flags: X - disabled, I - invalid
#SRC-ADDRESSDST-ADDRESSINTE...FLOWACTIONTABLE
010.0.0 .144/320.0.0 .0/0all lookupmt
10.0.0 .0/00.0.0 .0/0all lookupmain
[admin@MikroTik] ip policy-routing rule>

如何定义游戏端口通过策略路由选择线路

假定传奇端口是 7000 ,先在 /ip firewall manlge 中定义一个 flow 名为 CQ ,然后在设定 dst-port 的端口为 7000 。具体如: /ip firewall manlge add dst-port=7000 flow-mark=CQ ,当定义完端口进入路由表,指定线路传奇的线路在 mt 表中查询。

 
[admin@MikroTik] ip policy-routing rule> add flow=CQ action=lookup
[admin@MikroTik] ip policy-routing rule> print
Flags: X - disabled, I - invalid
#SRC-ADDRESSDST-ADDRESSINTE...FLOWACTIONTABLE
00.0.0 .0/00.0.0 .0/0all lookupmain
10.0.0 .0/00.0.0 .0/0allCQlookupmt
[admin@MikroTik] ip policy-routing rule>

同样如上面所诉,要将该规则移动到 main 规则上:

 
[admin@MikroTik] ip policy-routing rule> add flow=CQ action=lookup
[admin@MikroTik] ip policy-routing rule> print
Flags: X - disabled, I - invalid
#SRC-ADDRESSDST-ADDRESSINTE...FLOWACTIONTABLE
00.0.0 .0/00.0.0 .0/0allCQlookupmt
10.0.0 .0/00.0.0 .0/0all lookupmain
[admin@MikroTik] ip policy-routing rule>