防火墙上网不稳定(防火墙老是阻止网络)

小编:迷魂冰 更新时间:2022-05-02

某客户的华为防火墙已经工作了十几年,最近有点不正常,每个月总有那么几次断网,接口会自动down,而且每次只能重启了事,但是防火墙重启时间长,次数多了总觉得影响办公。

由于体制原因,申请采购的时间周期会比较长,尤其是在如今这个形势下。

客户问我要个临时的解决方案,于是我就出了个歪招,被客户好好地夸了一番,嘿嘿,本着分享的精神,这事儿也不私藏,说穿了,也很简单。


防火墙上网不稳定(防火墙老是阻止网络)


现场不允许拍照,配置更不允许截图或者导出,所以只能回来用模拟器还原,特此说明。

原来的拓扑大致如此,就是防火墙上面连接光猫,下面则连着核心交换机,我就简化一下了,能达到目的就行。

防火墙是全公司唯一出口网关,一出问题当然全都没网了,大多数单位都是这样,能做防火墙双出口的,毕竟不多。

我的歪招就是:把我们做实验用的华为AR路由器借给他们,和华为防火墙组成VRRP,平时上网流量还走防火墙出去,如果防火墙接口又down,那就自动切换到路由器出去,等防火墙接口恢复后,流量又回到防火墙。

增加路由器后的拓扑图如下:


防火墙上网不稳定(防火墙老是阻止网络)


一、防火墙修改配置

interface Vlanif10

ip address 192.168.10.1 255.255.255.0

vrrp vrid 1 virtual-ip 192.168.10.254 active //创建VRRP组1,并且指定虚拟IP,指定防火墙为主设备

service-manage ping permit

#

interface Vlanif20 //vlan20配置同理

ip address 192.168.20.1 255.255.255.0

vrrp vrid 2 virtual-ip 192.168.20.254 active

service-manage ping permit

#

其他配置没有改动,就不贴出来了,这不是本文的重点。


二、交换机修改配置

interface GigabitEthernet0/0/4

port link-type trunk

port trunk allow-pass vlan 10 20

无非就是找个接口,连接路由器,然后放行两个VLAN,需要说明的是,G0/0/1接口原来也是trunk接口,同样放行了这两个VLAN,原来网关在防火墙上,现在改为用虚拟IP作为网关,所以VLAN的IP地址池,也要做相应的修改:

ip pool vlan10

gateway-list 192.168.10.254

network 192.168.10.0 mask 255.255.255.0

excluded-ip-address 192.168.10.1 192.168.10.10

excluded-ip-address 192.168.10.200 192.168.10.253

dns-list 114.114.114.114

#

ip pool vlan20

gateway-list 192.168.20.254

network 192.168.20.0 mask 255.255.255.0

excluded-ip-address 192.168.20.1 192.168.20.10

excluded-ip-address 192.168.20.200 192.168.20.253

dns-list 114.114.114.114

其实更完美的做法是:不去改变用户已经获取到的网关IP,而是在配置VRRP的时候,就用原来的网关IP作为VRRP的虚拟IP,这样的话,用户就不必执行重新获取IP的操作了。

但是,我们是在晚上配置,所以其实无所谓。


三、路由器的配置:

先配置PPPOE拨号上网,光猫支持多拨,所以防火墙和路由器同时接在光猫上,同时拨号不会有任何问题;

dialer-rule

dialer-rule 1 ip permit

interface Dialer0

link-protocol ppp

ppp chap user bbb //宽带账号

ppp chap password cipher b123456 //宽带密码

ip address ppp-negotiate //IP获取方式

dialer user bbb //拨号用户

dialer-group 1 //将接口放到拨号组1

dialer bundle 1 //指定接口使用Dialer bundle

interface GigabitEthernet0/0/0

pppoe-client dial-bundle-number 1 //通过Dialer bundle将物理接口与拨号接口关联起来

ip route-static 0.0.0.0 0.0.0.0 Dialer0 //配置默认路由,出接口为宽带拨号连接

acl number 3000 //创建一条ACL,用来允许上网

rule 5 permit ip

interface Dialer0

nat outbound 3000 //出口绑定ACL3000,允许用户上网

interface Vlanif10

ip address 192.168.10.2 255.255.255.0

vrrp vrid 1 virtual-ip 192.168.10.254

vrrp vrid 1 priority 80 //优先级默认为100,路由器是backup,所以要小于100

vrrp vrid 1 preempt-mode timer delay 10 //抢占延时10秒

#

interface Vlanif20

ip address 192.168.20.2 255.255.255.0

vrrp vrid 2 virtual-ip 192.168.20.254

vrrp vrid 2 priority 80

vrrp vrid 2 preempt-mode timer delay 10

#

interface Ethernet9/0/0 //连接交换机的接口,允许两个VLAN通过

port link-type trunk

port trunk allow-pass vlan 10 20


四、测试

防火墙的VRRP状态为Master


防火墙上网不稳定(防火墙老是阻止网络)


路由器的VRRP状态为Backup


防火墙上网不稳定(防火墙老是阻止网络)


当前流量是走防火墙出去的


防火墙上网不稳定(防火墙老是阻止网络)


Int g1/0/3

Shutdown //关闭防火墙连接交换机的接口,模拟接口故障

防火墙的VRRP状态切换为initialize


防火墙上网不稳定(防火墙老是阻止网络)


路由器的VRRP状态就切换为Master了


防火墙上网不稳定(防火墙老是阻止网络)


此时测试上网流量,并且在路由器上面接口抓包,显示上网流量已经切换到路由器了。


防火墙上网不稳定(防火墙老是阻止网络)


Int g1/0/3

Undo Shutdown //开户防火墙连接交换机的接口,模拟故障恢复


防火墙上网不稳定(防火墙老是阻止网络)


防火墙VRRP重新回到Master状态,上网流量也回归到防火墙上了,任务完成。