我正在 Ubuntu 上使用 StrongSwan 尝试建立与远程 IKEv2 IPSec VPN 服务器的站点到站点 VPN 连接,但似乎我的连接请求没有到达远程服务器。
我是否可以使用我的服务器来检查我尝试连接的端口是否被远程服务器的防火墙丢弃?
尝试telnet <remote-ip> 500
在已知可以正常工作的 VPN 服务器上使用,但此命令超时了。我无法访问远程 VPN 服务器。
谢谢你!
StrongSwan 日志
initiating IKE_SA remoteServer[3] to 2.2.2.2
generating IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) V ]
sending packet: from 10.150.0.33[500] to 2.2.2.2[500] (1256 bytes)
retransmit 1 of request with message ID 0
sending packet: from 10.150.0.33[500] to 2.2.2.2[500] (1256 bytes)
retransmit 2 of request with message ID 0
sending packet: from 10.150.0.33[500] to 2.2.2.2[500] (1256 bytes)
retransmit 3 of request with message ID 0
sending packet: from 10.150.0.33[500] to 2.2.2.2[500] (1256 bytes)
retransmit 4 of request with message ID 0
sending packet: from 10.150.0.33[500] to 2.2.2.2[500] (1256 bytes)
retransmit 5 of request with message ID 0
sending packet: from 10.150.0.33[500] to 2.2.2.2[500] (1256 bytes)
giving up after 5 retransmits
establishing IKE_SA failed, peer not responding
establishing connection 'remoteServer' failed
sudo tcpdump udp 端口 500(客户端捕获)
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens4, link-type EN10MB (Ethernet), capture size 262144 bytes
13:14:25.475539 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
13:14:29.475878 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
13:14:36.676279 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
13:14:49.636657 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
13:15:12.965064 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
13:15:54.955428 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
答案1
要确定您的流量是否到达远程 VPN 服务器,您必须询问该服务器的管理员。
但是使用 tcpdump,您可以查找表明您的流量目的地无法到达的 ICMP 流量。例如,您可以像这样检查:
sudo tcpdump -w vpn.pcap 'host 2.2.2.2 or icmp[0] = 3'
这可能会捕获比您想要的更多的 ICMP 流量。
最后,您可以通过检查以下方法检查服务器发送的 IKE 第 1 阶段参数VPN连接工具使用 Wireshark。第一个 IKE 消息始终是未加密的,并且 Wireshark 具有适合它的数据包解析器。
如果初始 IKE_SA_INIT 请求不包含正确的参数,某些 VPN 服务器根本不会响应。
关于 NAT,当设置适当的选项时,IKEv2 可以处理这个问题。