我使用Debian和Racoon连接到思科VPN网关。 我们有两个相同的端点之间的隧道。 不知何故,有时候,数据包会进入错误的隧道。
这是来自远程思科系统的日志消息:
8月13日17:55:01 XXXXX%ASA-4-402116:IPSEC:从MY_PUBLIC_IP_ADDRESS(user = MY_PUBLIC_IP_ADDRESS)到REMOTE_PUBLIC_IP_ADDRESS收到一个ESP数据包(SPI = 0x5CAAB58E,序号= 0x6)。 解封装后的内层报文与SA协商的策略不匹配。 数据包将其目标指定为REMOTE_INNER_HOST_PRIVATE_IP_2 ,其源为MY_INNER_HOST_PRIVATE_IP,其协议为icmp。 SA将其本地代理指定为REMOTE_INNER_HOST_PRIVATE_IP_1 /255.255.255.255/ip/0,将其remote_proxy指定为MY_INNER_HOST_NETWORK / 255.255.255.0 / ip / 0。
当我试图从MY_INNER_HOST_PRIVATE_IP“ping”REMOTE_INNER_HOST_PRIVATE_IP_2时出现这条消息。 (我replace了IP地址。)
这是setkey -D -P |的输出 grep REMOTE_INNER_HOST_PRIVATE_IP_1 | 2:
REMOTE_INNER_HOST_PRIVATE_IP_2 [任何] MY_INNER_HOST_NETWORK [任何] 255 REMOTE_INNER_HOST_PRIVATE_IP_2 [任何] MY_INNER_HOST_NETWORK [任何] 255 MY_INNER_HOST_NETWORK [任何] REMOTE_INNER_HOST_PRIVATE_IP_2 [任何] 255 REMOTE_INNER_HOST_PRIVATE_IP_1 [任何] MY_INNER_HOST_NETWORK [任何] 255 REMOTE_INNER_HOST_PRIVATE_IP_1 [任何] MY_INNER_HOST_NETWORK [任何] 255 MY_INNER_HOST_NETWORK [任何] REMOTE_INNER_HOST_PRIVATE_IP_1 [任何] 255
在我看来,这表明/etc/ipsec-tools.conf文件被成功读入。 这里是这个文件的相关部分:
spdadd MY_INNER_HOST_NETWORK / 24 REMOTE_INNER_HOST_PRIVATE_IP_1 / 32 any -P out ipsec esp / tunnel / MY_PUBLIC_IP_ADDRESS-REMOTE_PUBLIC_IP_ADDRESS / require;
spdadd REMOTE_INNER_HOST_PRIVATE_IP_1 / 32 MY_INNER_HOST_NETWORK / 24 ipsec esp / tunnel / REMOTE_PUBLIC_IP_ADDRESS-MY_PUBLIC_IP_ADDRESS / require中的任何-P;
spdadd MY_INNER_HOST_NETWORK / 24 REMOTE_INNER_HOST_PRIVATE_IP_2 / 32 any -P out ipsec esp / tunnel / MY_PUBLIC_IP_ADDRESS-REMOTE_PUBLIC_IP_ADDRESS / require;
spdadd REMOTE_INNER_HOST_PRIVATE_IP_2 / 32 MY_INNER_HOST_NETWORK / 24 ipsec esp / tunnel / REMOTE_PUBLIC_IP_ADDRESS-MY_PUBLIC_IP_ADDRESS / require中的任何-P;
最后,这是/etc/racoon/racoon.conf中的相关部分(/var/log/racoon.log中没有可疑的日志行):
remote REMOTE_PUBLIC_IP_ADDRESS { exchange_mode main; proposal_check obey; my_identifier address MY_PUBLIC_IP_ADDRESS; lifetime time 86400 sec; proposal { encryption_algorithm aes 256; hash_algorithm sha1; authentication_method pre_shared_key; dh_group 2; lifetime time 86400 sec; } } sainfo address MY_INNER_HOST_NETWORK/24 any address REMOTE_INNER_HOST_PRIVATE_IP_1/32 any { pfs_group 2; lifetime time 3600 sec; encryption_algorithm aes 256; authentication_algorithm hmac_sha1; compression_algorithm deflate; } sainfo address MY_INNER_HOST_NETWORK/24 any address REMOTE_INNER_HOST_PRIVATE_IP_2/32 any { pfs_group 2; lifetime time 3600 sec; encryption_algorithm aes 256; authentication_algorithm hmac_sha1; compression_algorithm deflate; }
有标识符冲突吗? 我能做些什么来解决这个问题? 非常感谢!
我学会了我需要使用
spdadd xxxx/32 yyyy/32 any -P out ipsec esp/tunnel/aaaa-bbbb/unique;
注意:“唯一”而不是“要求”。