硬件配置
硬路由ax86u 50.1 按道理来说这里是软路由也行
软路由istore 50.2 这里它做的旁路由模式
浮动网关:50.4
如果宝哥看到的话也可以指导指导我这样做对不对
目标:当你的软路由可能会掉线或者他们之间是分离的时候,你害怕旁路由短线掉网
替代品就是那个浮动网关的插件,但是它有个缺点,就是你手动配置的网关或者你用脚本在dnsmasq.d那个目录下下发给你目标设备的浮动网关,它在你设备本地有arp缓存,所以路由器之间协商好了是一回事,你自己的设备识别到浮动网关的mac是最新的一边的mac是另一回事。
成果:
瞬间秒切,就是我配置在硬路由上的开机启动不太会,用了好多办法才能开机激活keepalived用我那个指定的配置文件
实现原理:
也就是用vrrp这个协议,旁路由用主的,主路由用辅的,一旦旁路由在线就直接滑动过去,一旦掉线这边就滑动过来,无缝连接,不需要ping和url检测
实现工具keepalived
实现过程:
旁路由端
软路由和硬路由安装keepalived,ax86u用那个entware
给它写一个配置文件,如果你的浮动网关不是50.4,自己看着改
cat > /etc/keepalived/keepalived-vip50.conf << ‘EOF’
global_defs {
router_id ISTORE_VRRP
}
vrrp_instance VI_50 {
state MASTER
interface br-lan
virtual_router_id 50
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 50vip
}
virtual_ipaddress {
192.168.50.4/24 dev br-lan
}
garp_master_delay 1
garp_master_repeat 3
garp_master_refresh 10
garp_master_refresh_repeat 1
}
EOF
sed -i 's/\r$//' /etc/keepalived/keepalived-vip50.conf #去除换行符
#测试命令跑前台
keepalived -n -l -f /etc/keepalived/keepalived-vip50.conf
#如果不报错
keepalived -D -f /etc/keepalived/keepalived-vip50.conf
#杀死程序
killall keepalived 2>/dev/null
#查询程序
ps | grep -E '[k]eepalived'
#开机启动
# 路由界面有一个系统项,里面的那个启动项添加如果不行自己添加核心的命令进去就行
#!/bin/sh
(
sleep 5
killall keepalived 2>/dev/null
/usr/sbin/keepalived -D -f /etc/keepalived/keepalived-vip50.conf
) &
exit 0
主路由端
ax86u为例
安装entware
opkg install keepalived
它的默认配置文件在/opt/etc/init.d/S数字keepalived.conf这个默认的就是
不动它,如果对你的配置文件启动有影响把它的S改为K之类的
新建一个自己的配置文件 和上面一样自己根据自己的浮动网关,以及还有那个interface br0,你如果不是我这个硬路由应该是br-lan,具体不清楚,反正我的硬路由是br0的网桥,双方的那个auth_pass好像就是互相通信密码
cat > /opt/etc/keepalived/keepalived-vip50.conf << 'EOF'
vrrp_instance VI_50 {
state BACKUP
interface br0
virtual_router_id 50
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 50vip
}
virtual_ipaddress {
192.168.50.4/24 dev br0
}
garp_master_delay 1
garp_master_repeat 3
garp_master_refresh 10
garp_master_refresh_repeat 1
}
EOF
#手动启动前端显示调试命令
/opt/sbin/keepalived -n -l -f /opt/etc/keepalived/keepalived-vip50.conf
#核心启动命令
/opt/sbin/keepalived -D -f /opt/etc/keepalived/keepalived-vip50.conf
#你想办法自己在/jffs/scripts/或者/opt/etc/init.d/这些目录下面开机启动即可
win11 cmd监测
arp -a | findstr /i “192.168.50.1 192.168.50.2 192.168.50.4”
你启动或者关闭istore你会发现切换丝滑无缝转变50.4的mac