PCC 的负载均衡
<互联网共享 人人为我 我为人人>
这是 ros 最基本最重要的应用,网络上很多教程都比较笼统,新手基本看不懂!
此教程,详细图文+脚本, 新手老手都可以借鉴.
通分组源地址和源端口实现负载平衡,这里我们建立 2 个 WAN 出口分别是 wan1 和 wan2,内
网接口是 lan1
网络环境如下:
ISP1 地址 10.200.15.99/24,网关:10.200.15.1;
ISP2 地址 10.200.100.99/24,网关:10.200.100.2;
内网 IP 地址 192.168.100.1/24;
启用 DNS 缓存功能,用 192.168.100.1 作内网 DNS 解析;
基本配置
首先进入 ip address 配置 IP 地址:
在 ip dns setting 中配置好 DNS 缓存,DNS 为:61.139.2.69
Mangle 标记配置
接下来我们进入 ip firewall mangle 标记连接和路由,我们使用
per-connection-classifier 双向地址进行分类做连接分类标记。
首先我们需要将进入路由的的链接进行标记
如下图,我们进入一条 mangle 规则,中的 advanced 标签内容可以看到
per-connection-classifier 分类器,选择 both-addresses 的分类:
然后选择 dst-address-type=!local,即除了目标地址是本地以前的地址:
注:2 条线的分类代码定义是第一条线为 2/0,第二条为 2/1
同样选择一下地址类型:
下面命令是提取走第一条线路的连接标记取名位 1st_conn,并从连接里提取路
由标记名位 1st_route,设置:
per-connection-classifier=both-addresses:2/0, 设置 in-interface=lan
/ip firewall mangle
add action=mark-connection chain=prerouting comment=""
disabled=no \
in-interface=lan new-connection-mark=1st_conn
passthrough=yes \
per-connection-classifier=both-addresses:2/0
add action=mark-routing chain=prerouting comment=""
connection-mark=1st_conn \
disabled=no in-interface=lan new-routing-mark=1st_route
passthrough=yes
提取走第二条线路的连接标记取名位 2nd_conn,并从连接里提取路由标记名位
2nd_route,设置:per-connection-classifier=both-addresses:2/1,设置
in-interface=lan:
/ip firewall mangle
add action=mark-connection chain=prerouting comment=""
disabled=no \
in-interface=lan new-connection-mark=2nd_conn
passthrough=yes \
per-connection-classifier=both-addresses:2/1
add action=mark-routing chain=prerouting comment=""
connection-mark=2nd_conn \
disabled=no in-interface=lan new-routing-mark=2nd_route
passthrough=yes
在 winbox 在 mangle 中设置完成后如下:
回程路由设置
我们需要将从那个口进入就从相应的口回去,即保证每个外网口的数据能得到正
确的路由
/ip firewall mangle
add chain=input in-interface=wan1 action=mark-connection
new-connection-mark=1st_conn
add chain=input in-interface=wan2 action=mark-connection
new-connection-mark=2nd_conn
winbox 设置
标记完进入接口的链接后,将这些链接指定到相应的路由标记上:
add chain=output connection-mark=1st_conn action=mark-routing
new-routing-mark=1st_route
add chain=output connection-mark=2nd_conn action=mark-routing
new-routing-mark=2nd_route
winbox 设置
路由配置