使用tcping命令测试端口时出现异常

使用tcping命令测试端口时出现异常

更新时间:2018-10-18 10:12:44

问题描述

以下情况中,会造成使用tcping命令测试服务器15005和9701端口,没有响应的现象。
  • 登录系统。
  • 重连系统。
  • 新设备登录。
该情况会持续时间2分钟左右,然后自动恢复正常,如下图所示。

问题原因

开启内核相关参数导致。

解决方案

  1. 客户端的机器测试ECS的15005端口没有发现异常,但从阿里云其他ECS中测试该ECS的15005端口会出现异常。
  2. 在客户端Windows主机端使用Wireshark工具,ECS实例使用Tcpdump工具。两端同时抓包会发现,一端机器开启了大量的55261~55285端口与另一端的15005端口进行TCP连接,发起的请求超时后,有大量的SYN请求包无响应,情况持续一段时间后,会自动恢复正常,如下图所示。
  3. 在文件/etc/sysctl.conf中做修改,关闭该参数。
    net.ipv4.tcp_tw_recycle = 0 
    
    注:如果启用net.ipv4.tcp_tw_recycle参数,则有些情况下,会导致系统连接不稳定。
  4. 执行如下命令,使修改的配置生效。
    sysctl -p
    

适用于

  • 云服务器ECS