赞
踩
因为高格没有ipv6,作为主路由在一些特殊场景下不太好,所以将其设置成旁路由充当网关发挥流控作用是不错的。但经过实验发现,高格的流控只有对其LAN网段的客户端才起作用。所以使用双机热备实现即使关闭高格也可以正常上网。
详细的过程就不演示了,其他教程有很多。
重点是要设置两个网卡,我这里是设置了连接相同的网络,这里也可以设置两个不同的网络。
因为高格的限制,必须要有两个网卡,不然就没有WAN,从而不能启用最核心的流控功能。
我主路由的IP是192.168.204.1/24。
则设置高格WAN口为固定ip:192.168.204.3,而且网关指向主路由。
接下来设置内网口IP。由于WAN和LAN网段不能相同,因此设置LAN IP:192.168.214.1
接口设置-高级设置中可以更改WAN的模式:路由模式和NAT模式。
路由模式不会对内网地址进行转换后发出,少一层NAT的损耗,但路由模式需要主路由需要配置静态路由来使数据包能正确流会对应主机。目标是高格LAN口网段,网关是高格的WAN IP,类型是unicast,如下图:
现在192.168.214.0/24网段的客户端应当可以正常上网了。
高格中的双机热备,本质上是实现了VRRP协议,即虚拟路由器冗余协议。简单来说,该协议通过设定一个虚拟的IP地址作为网关,并互相检测VRRP主机组中的存活及优先级,将流向虚拟IP的流量流向优先级最大的主机。当优先级最高的主机失效时,流量就会自动流向到下一个优先级最大的主机,这样就避免了网关失效后,客户端流量无法转发导致断网的问题。
在高级功能中可以找到双机热备,进行设置。
参数说明:
名称:任意取,仅本地区分 虚拟路由ID:这个用于区分VRRP组,默认即可
优先级:高格仅有主机和从机之分。实际上优先级从0~255。高格中的主机对应150,从机对应120且不可更改。
认证类型:这个为VRRP的认证方式,可以用密码认证也可以不认证,防止别的VRRP设备连进来抢占主要的虚拟网关。本例不认证。
虚拟IP:虚拟IP,后续作为客户端的网关地址 外网检测:这个可以开可以不开,用来检测设备是否能上网
Openwrt中的keepalived软件包实现了VRRP协议,因此我们先安装它。
由于keepalived每次运行都会生成新的配置文件,导致重启后老的配置就被刷掉了。(不知道是否为普遍现象)
于是,我编写了一个脚本keepalivedConfig.sh
,该脚本作用是杀掉原来的keepalived,以另外的配置文件进行启动。
# keepalivedConfig.sh
killall keepalived
/usr/sbin/keepalived -n -f /etc/config/keepalived&
所以,真正的配置是在/etc/config/keepalived
中。
#/etc/config/keepalived
global_defs {
script_user root
enable_script_security
}
static_ipaddress {
}
static_routes {
}
vrrp_instance VI_1 {
interface br-lan
state MASTER
virtual_router_id 128
priority 130
advert_int 1
virtual_ipaddress {
192.168.214.100/24 dev br-lan
}
}
重点是vrrp_instance 块
参数说明:
Router_id :这个和高恪的名称一样,也只是本地用来标识这个设备名称的
VI_1 :只是名字,可任意
State : 表示VRRP设为什么状态,只作为vrrp的状态表示,并无实际意义
Interface :这个就是你用哪个接口运行vrrp协议,也是哪个接口发送vrrp报文,这里设置为lan
Virtual_router_id :虚拟路由ID,要和高格的一致,保证Openwrt和高恪的VRRP是一个组
Priority :优先级,根据高恪的来设定,如果要设定成备机,则要低于高格主机的150
advert_int 1 :这个为是否启动VRRP报文的发送,默认为1就行
Virtual_ipaddress : 虚拟IP,要和高恪的一致,dev 后面跟上的就是你的lan地址网卡的名称
将脚本keepalivedConfig.sh
放到/etc/keepalived/
中,并赋予可执行权限(使用chown命令)。执行脚本。
sh /etc/keepalived/keepalivedConfig.sh
将其放入/etc/rc.local
或Openwrt启动项的本地启动脚本的exit 0
之前,来实现开机启动。
如果VRRP设置成功,浏览器访问设置的虚拟IP,此处是:192.168.214.100
。此时,显示的应该是高格的管理界面,将高格关机之后,则应该显示的Openwrt的管理界面。
高格中也可以查看对应的状态。
由于高格流控要使用其LAN段IP,我们要进行配合VRRP设置的话要注意以下几点点:
192.168.214.100
属于192.168.214.0/24网段。192.168.214.100
整体网络拓扑图:
VRRP设置成功后,我们需要将DHCP的网关设置成虚拟IP,此处是:192.168.214.100
。并让分配地址池避开该IP避免发生冲突。由于openwrt原生的dhcp好像不支持更改地址池到其他网段,所以使用了ADG的DHCP服务器
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。