作者 颖奇L'Amore
==================
百度百科:
状态检测防火墙在网络层有一个检查引擎截获数据包并抽取出与应用层状态有关的信息,并以此为依据决定对该连接是接受还是拒绝。这种技术提供了高度安全的解决方案,同时具有较好的适应性和扩展性。状态检测防火墙一般也包括一些代理级的服务,它们提供附加的对特定应用程序数据内容的支持。状态检测技术最适合提供对UDP协议的有限支持。它将所有通过防火墙的UDP分组均视为一个虚连接,当反向应答分组送达时,就认为一个虚拟连接已经建立。状态检测防火墙克服了包过滤防火墙和应用代理服务器的局限性,不仅仅检测“to”和“from”的地址,而且不要求每个访问的应用都有代理。
华为ppt:
但是状态监测机制开启的情况下会造成一个问题,就是当来回路径不一致时,防火墙无法建立session表,syn+ack不是首包所以drop,这种情况应关闭状态检测机制。
所以,这篇文章来尝试做一下这个实验
本次实验保证Client1去往外部Server时走AR,server回包被AR重定向到FW
基础配置略。
AR2上配置流量转发讲server去client流量重定向到FW:
acl number 3000
rule 5 permit ip source 10.1.40.0 0.0.0.255 destination 10.1.30.0 0.0.0.255
#
traffic classifier http_traffic
if-match acl 3000
#匹配acl
#
traffic behavior next_hop
redirect ip-nexthop 10.1.20.254
#行为是重定向下一跳
#
traffic policy redirect_next_hop
classifier http_traffic behavior next_hop
#匹配classifler和behavior
#
interface GigabitEthernet2/0/0
ip address 10.1.40.254 255.255.255.0
traffic-policy redirect_next_hop inbound
#接口入方向调用traffic-policy
FW上首先配置策略允许流量通过:
#
security-policy
rule name p_untrust_trust_http
source-zone untrust
destination-zone trust
source-address 10.1.40.0 0.0.0.255
destination-address 10.1.30.1 32
service http
profile ips web_server
action permit
#
FW上需要转发 可以选择PBR或者路由 简单点直接路由:
[FW1]dis ip routing-table protocol ospf
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : OSPF
Destinations : 2 Routes : 4
OSPF routing table status : <Active>
Destinations : 2 Routes : 4
Destination/Mask Proto Pre Cost Flags NextHop Interface
10.1.30.0/24 OSPF 10 2 D 10.1.20.1 GigabitEthernet
1/0/2
OSPF 10 2 D 10.1.10.1 GigabitEthernet
1/0/1
10.1.40.0/24 OSPF 10 2 D 10.1.20.1 GigabitEthernet
1/0/2
OSPF 10 2 D 10.1.10.1 GigabitEthernet
1/0/1
OSPF routing table status : <Inactive>
Destinations : 0 Routes : 0
查看防火墙丢包信息
[FW1]display firewall statistic system discard
Discard statistic information:
TCP SESSION MISS :23
PACKET DEFAULT FILTER :28
ARP MISS :63
IPv6 FIB MISS :43
L3 OTHER ETH TYPE :11
L3 UNSUPPORT ETH TYPE :165
L3 PROTOCOL DOWN :511
DISPATCH DROP :574
NO SMBUF :10
多次测试client连接server的http连接 发现 TCP SESSION MISS 持续增加,说明非手包的http流量造成由于状态监测不通过而丢包
所以需要关闭防火墙状态监测机制
[FW1]undo firewall session link-state check
通了,查看防火墙Session表:
[FW1]dis firewall session table
Current Total Sessions : 2
tcp VPN: public --> public 10.1.40.1:80 --> 10.1.30.1:2070
最后再看一下ppt:
完。