解决方案
先决条件
在开始之前,请完成以下任务:
- 检查网络的架构及其所有中间设备,以验证它们是否满足连接要求。
- 确认安全组、网络访问控制列表(网络 ACL)和路由表均配置正确。
- 确认网关负载均衡器的 Amazon Virtual Private Cloud (VPC) 端点可用。
- 确认网关负载均衡器后面有运行状况良好的设备。如果未激活跨区域,则每个可用区中至少有一个活跃且运行状况良好的目标。
- 如果您有 AWS Transit Gateway,请在与您的托管网络的 VPC 关联的 Transit Gateway 连接上激活设备模式。
故障排除提示
如果继续出现连接错误,请使用以下故障排除提示建立连接。
设置 VPC Flow 日志和数据包捕获以进行分析
在网关负载均衡器端点的网络接口上激活 VPC Flow 日志。在设置期间使用以下附加字段:
${pkt-srcaddr}, ${pkt-dstaddr}, ${flow-direction} and ${tcp-flags}
从客户端、服务器和网关负载均衡器后面的目标设备上捕获同步数据包。
使用 Wireshark 或 tcpdump 来捕获数据包。然后,使用 Wireshark 来分析数据包。有关如何使用 Wireshark 的说明,请参阅 Wireshark 网站。
对转发流量进行故障排除
转发流量的示例:
客户端--->GWLBe--->GWLB--->设备--->GWLB--->GWLBe--->服务器
使用诸如 Wireshark 之类的工具,打开客户端的数据包捕获,以查看数据包是否流向服务器的 IP 地址。
检查网关负载均衡器端点上网络接口的 VPC Flow 日志。使用这些日志来验证数据包是否到达网络接口。
打开网关负载均衡器的目标设备的数据包捕获。验证数据包是否进入目标设备并退出至网关负载均衡器。
检查网关负载均衡器端点上网络接口的 VPC Flow 日志。使用这些日志来验证数据包是否从网络接口退出至服务器。
检查服务器的数据包捕获情况,查看数据包是否到达服务器。
对反向流量进行故障排除
反向流量的示例:
服务器--->GWLBe--->GWLB--->设备--->GWLB--->GWLBe--->客户端
检查服务器的数据包捕获情况,查看服务器是否生成响应。
检查网关负载均衡器端点上网络接口的 VPC Flow 日志。使用这些日志来验证响应数据包是否到达端点。确保它是管理转发流量的同一个端点。
打开网关负载均衡器的目标设备的数据包捕获。检查响应数据包是否进入设备并退出至网关负载均衡器。
检查网关负载均衡器端点上网络接口的 VPC Flow 日志。使用这些日志来查看数据包是否从网络接口退出至客户端。
使用 Wireshark 这样的数据包捕获工具来验证响应数据包是否到达了客户端的网络接口。
注意:
VPC Flow 日志不会记录网关负载均衡器的网络接口与其端点的网络接口之间的通信。
网关负载均衡器和设备之间的数据包通过 UDP 进行 GENEVE 封装。因此,您不能使用负载均衡器或目标的网络接口 VPC Flow 日志来跟踪客户端或服务器流量。
记下源端口和失败的 TCP 连接的启动时间。使用源端口和时间,通过网络路径上的后续设备来追踪和跟踪连接。