• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

SR6604路由器和U200防火墙建立IPSec VPN部分网段不通的问题

2016-01-26 发表
  • 0关注
  • 0收藏 1274浏览
粉丝: 关注:

客户这边有8U200防火墙,作为分支和中心的SR6604路由器做IPSec VPN。在一次运营商链路中断恢复以后,其中一台U200,出现了部分IPSec保护网段从该U200SR6604路由器不通的问题。具体表现为:IPSec VPN SAIKE SA正常,U200下的10.26.108.1PING部分网段,如192.168.0.207/24网段不通。


U200防火墙上,通过debug IP packet 查看防火墙将数据包已经发出,debug ipsec packet 提示已经进入隧道,但是没有收到SR6604路由器的回应报文。在U200PING 对端192.168.0.207 测试时发现,出方向统计的ACL3000 命中数增长,入方向统计ACL 3010 的命中数不变,这也说明进入了隧道。

从目前的分析情况看,问题可能出在了中间链路或者SR6604路由器设备上。

由于SR6604路由器上打开debug ipsec packet cpu100%,长时间收集信息,担心会影响业务,而且信息量非常大,不便于分析,所以只开了一分钟的debug,但是没有抓到相关有用的信息。

通过下面的信息分析,从U200防火墙上PING -c 10 -a 10.26.108.1 192.168.0.207

display ipsec statistics

  the security packet statistics:

    input/output security packets: 25172172445/31796989123

    input/output security bytes: 3997629875568/5772012932920

    input/output dropped security packets: 7519790/655691PING包期间,数值没有增加)

    dropped security packet detail:

      not enough memory: 228

      can't find SA: 3252553

      queue is full: 0

      authentication has failed: 159064

      wrong length: 0

      replay packet: 483429

      packet too long: 639371

      wrong SA: 0

      decrypt/encrypt failed: 0

      ACL check failure: 3640836

 

PING -c 10 -a 10.26.108.1 192.168.0.207

  PING 192.168.0.207: 56  data bytes, press CTRL_C to break(全部都丢了)

    Request time out

    Request time out

    Request time out

    Request time out

    Request time out

    Request time out

    Request time out

    Request time out

    Request time out

Request time out

 

*Jan 14 12:24:14:953 2016 SR6604-1 DPIPFWD/7/debug_case: -Slot=3;    

Receiving, interface = GigabitEthernet3/1/7, version = 4, headlen = 20, tos = 0,

pktlen = 84, pktid = 41917, offset = 0, ttl = 255, protocol = 1,

checksum = 57432, s = 10.26.108.1, d = 192.168.0.207

prompt: Receiving IP packet

 

*Jan 14 12:24:14:954 2016 SR6604-1 DPIPFWD/7/debug_case: -Slot=3;

Delivering, interface = GigabitEthernet3/1/7, version = 4, headlen = 20, tos = 0,

pktlen = 84, pktid = 41917, offset = 0, ttl = 255, protocol = 1,

checksum = 57432, s = 10.26.108.1, d = 192.168.0.207

prompt: IP packet is delivering up!

 

*Jan 14 12:24:14:955 2016 SR6604-1 ADDR/7/debug_case: -Slot=3;

Delivering, interface = GigabitEthernet3/1/7, version = 4, headlen = 20, tos = 0,

pktlen = 84, pktid = 41917, offset = 0, ttl = 255, protocol = 1,

checksum = 57432, s = 10.26.108.1, d = 192.168.0.207

prompt: IP packet is delivering up!

 

*Jan 14 12:24:14:955 2016 SR6604-1 DPIPFWD/7/debug_case: -Slot=3;

Sending, interface = GigabitEthernet3/1/7, version = 4, headlen = 20, tos = 0,

pktlen = 84, pktid = 32330, offset = 0, ttl = 255, protocol = 1,

checksum = 57432, s = 192.168.0.207, d = 10.26.108.1

prompt: Sending the packet from local

 

*Jan 14 12:24:17:155 2016 SR6604-1 DPIPFWD/7/debug_case: -Slot=3;

Receiving, interface = GigabitEthernet3/1/7, version = 4, headlen = 20, tos = 0,

pktlen = 84, pktid = 41929, offset = 0, ttl = 255, protocol = 1,

checksum = 57420, s = 10.26.108.1, d = 192.168.0.207

prompt: Receiving IP packet

 

*Jan 14 12:24:17:155 2016 SR6604-1 DPIPFWD/7/debug_case: -Slot=3;

Delivering, interface = GigabitEthernet3/1/7, version = 4, headlen = 20, tos = 0,

pktlen = 84, pktid = 41929, offset = 0, ttl = 255, protocol = 1,

checksum = 57420, s = 10.26.108.1, d = 192.168.0.207

prompt: IP packet is delivering up!

 

*Jan 14 12:24:17:156 2016 SR6604-1 ADDR/7/debug_case: -Slot=3;

Delivering, interface = GigabitEthernet3/1/7, version = 4, headlen = 20, tos = 0,

pktlen = 84, pktid = 41929, offset = 0, ttl = 255, protocol = 1,

checksum = 57420, s = 10.26.108.1, d = 192.168.0.207

prompt: IP packet is delivering up!

 

*Jan 14 12:24:17:156 2016 SR6604-1 DPIPFWD/7/debug_case: -Slot=3;

Sending, interface = GigabitEthernet3/1/7, version = 4, headlen = 20, tos = 0,

pktlen = 84, pktid = 32392, offset = 0, ttl = 255, protocol = 1,

checksum = 57420, s = 192.168.0.207, d = 10.26.108.1

prompt: Sending the packet from local

 

IP层面看SR6604路由器都回复了,现在重点排查SR6604路由器IPSec模块处理是否正常。

排查过程如下:

为了避免其他报文影响,内部测试使用字节1400报文。

SR6604路由器  ping -s 1400   -c 100 -t 0 -a  192.168.0.207 10.26.108.1192.168.0.207SR6604路由器LOPBACK接口地址, 10.26.108.1为对端U200 防火墙LOOPBACK地址)。

PING 之前:

      sa remaining duration (kilobytes/sec): 1837640/2978       
 PING
之后:

     sa remaining duration(kilobytes/sec):1837500/2949      

1837640-1837500=140*1000=140000  正好对应100  ----说明IPSEC加密正常

 

  PFS: N, DH group: none                                                      

    tunnel:                                                                    

        local  address: 202.107.222.153                                        

        remote address: 122.228.178.206                                         

    flow:                                                                      

        sour addr: 192.168.0.0/255.255.0.0  port: 0  protocol: IP              

        dest addr: 10.26.0.0/255.255.0.0  port: 0  protocol: IP     

 [outbound ESP SAs]                                                         

      spi: 0xC7F64900(3354806528)                                              

      transform: ESP-ENCRYPT-DES ESP-AUTH-MD5                                  

      in use setting: Tunnel                                                   

      connection id: 6366922                                                   

      sa duration (kilobytes/sec): 1843200/3600                                

      sa remaining duration (kilobytes/sec): 1837640/2978                      

      anti-replay detection: Enabled                                           

        anti-replay window size(counter based): 32                             

      udp encapsulation used for nat traversal: N           

 

原始IP--------原始ICMP报文发送正常 

*Jan 15 17:50:36:208 2016 SR6604-1 DPIPFWD/7/debug_case: -Slot=3;        

Sending, interface = GigabitEthernet3/1/7, version = 4, headlen = 20, tos

pktlen = 1428, pktid = 5524, offset = 0, ttl = 255, protocol = 1,        

checksum = 0, s = 192.168.0.207, d = 10.26.108.1                         

prompt: Sending the packet from local                                    

 

IPSec加密后报文----------------------加密后封装隧道头ICMP发送正常   

   

*Jan 15 17:50:36:208 2016 SR6604-1 DPIPFWD/7/debug_case: -Slot=3;        

Sending, interface = GigabitEthernet3/1/7, version = 4, headlen = 20, tos

pktlen = 1480, pktid = 30552, offset = 0, ttl = 255, protocol = 50,      

checksum = 0, s = 202.107.222.153, d = 122.228.178.206                    

prompt: Sending the packet from local                                    

                                             

驱动--------------------驱动正确发送

 

*Jan 15 17:50:42:444 2016 SR6604-1 DRVDBG/7/debugging: -Slot=3;          

(GigabitEthernet3/1/7)PHY/PKT:                                           

Packet Output, Packet Len =1494,Partial data as follows:     

 

-----------加上12字节以太头以及2字节前导码     

      

    00 E0 FC A4 B0 CD 70 F9 6D 1A 6B 4F 08 00 45 00                 

    05 C8 92 64 00 00 FF 32 4C E7 CA 6B DE 99 7A E4                      

    B2 CE CB 7C B6 3F 00 00 1B AD 86 BA 48 42 90 C5                      

    72 85 9C FB D0 90 68 67 24 6C 8A 01 CD 32 07 D3    

DIP CA 6B DE 99  SIP7A E4 B2 CE

 

SR6604路由器上查看,加密数据的saremote address 122.228.178.206,并非是U200上的任何接口地址。也就是说,从U200PING -c 10 -a 10.26.108.1 192.168.0.207 的回报文是转发给了122.228.178.206这个设备,经过确认,为Juniper路由器。

 

display ipsec tunnel | begin 10.26.

Dest addr :10.26.0.0/255.255.0.0 port:0 protocol: IP

Current Encrypt-card:

Connection id :139432

Perfect forward secrecy:

    SA's SPI:

        inbound:  187199087 (0xb286e6f) [ESP]

        outbound: 3562274487 (0xd453feb7) [ESP]

    tunnel:

        local  address:  202.107.222.153

        remote address : 122.228.178.206

    flow:

        sour addr : 192.168.0.0/255.255.0.0  port: 0  protocol : IP

        dest addr : 10.26.0.0/255.255.0.0  port: 0  protocol : IP

current Encrypt-card:

 

至此问题似乎已经比较明确了,但是,为什么到U200的流量,转发到了122.228.178.206 这台设备呢?再次确认后发现:

 

sour addr : 192.168.0.0/255.255.0.0  port: 0  protocol : IP

dest addr : 10.26.0.0/255.255.0.0  port: 0  protocol : IP------16位掩码,应该是32位才对。SR6604路由器IPSec采用的是模板方式,掩码信息是由IKE PEER协商出来的,也就是说,应该是Juniper发送的掩码信息是错误的。

最终确认是客户更改了Juniper设备的IPSec 安全ACL的网段掩码导致这次故障。


修改Juniper设备的IPSec安全ACL的网段掩码配置。


若您有关于案例的建议,请反馈:

作者在2019-06-11对此案例进行了修订
0 个评论

该案例暂时没有网友评论

编辑评论

举报

×

侵犯我的权益 >
对根叔知了社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔知了社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作