问题描述

在win10/win11系统中遇到一种情况,网络明明是通的,但是无法建立TCP连接,比如:用浏览器访问网站打不开,用telnet连接已知开放的目标端口也连不上。但是ping命令测试网络是正常的。

原因分析:

系统发起TCP连接时,会分配一个临时端口用于该连接。建立的并发连接越多,占用系统端口就越多。那系统到底能建立多少并发连接?
你以为是65535个吗?No! No! No!

这主要取决于系统对TCPIP的参数配置。:
win2008 server 默认使用从1025开始的64510个临时端口;
win10/win11 默认使用从49152开始的16384个临时端口;(别问我为什么,问微软去!)

在以上范围内的临时端口被占用后要等TCP连接完全关闭才会释放,因此还有一个TCP time wait超时时间的设置也会影响到端口的重新可用状态,进而影响建立新连接的频率和数量。

综上所述,若在win10/win11系统中使用nmap、masscan等工具对大范围的IP段进行扫描,其实是很有可能用完临时端口的,导致后续无法再建立新的连接。此时windows系统日志中也会有警告,如图:

解决方案:

修改Windows系统的相关参数,可以用netsh命令来操作,如下:

netsh int ipv4 set dynamicport tcp start=30000 num=35535

以上命令意思是将系统的ipv4建立TCP连接的可用临时端口范围设置为从30000开始,共35535个端口可用。注意,端口范围最大不能超出65535,最低起始值建议不要低于1025,因为1024以下的端口通常是windows系统自身常用的端口范围或者一些软件常用的端口范围。

Windows临时端口不够用导致TCP连接失败的问题相关推荐

  1. 记录一次net.ipv4.tcp_tw_recycl快速回收机制导致的tcp连接失败问题

    背景: 公司业务为长连接业务,然后部分用户反馈至客服为连接失败(登录),通过分析日志和抓包看是有请求包到达服务端的,但是没有回包,然后联系云厂商查看后台针对cvm的实例监控,发现有部分客户端的syn包 ...

  2. windows下用XShell远程ubuntu时连接失败

    现象描述:Ubuntu能Ping通主机,主机也能ping通虚拟机.但是windows下用XShell远程ubuntu时连接失败. 解决方案: 步骤: 1.查看一下防火墙状态:sudo ufw disa ...

  3. netstat -s TCP连接失败 相关统计 解释

    针对问题:TCP连接失败 分析:netstat -s输出中和连接失败相关的参数 202270382 invalid SYN cookies received 解释:三次握手ack包,syncookie ...

  4. 【案例分析】Linux和Windows在TCP数据包上的差异+网闸兼容问题引发的TCP连接失败故障分析

    1.前言 出于项目保密原因,本文所提及的IP地址并非真实IP地址,其余技术细节均与案例实际环境相同,供学习交流参考. 2.案例背景 我们前段时间接到项目现场工程师电话,对方称他们新上架了一台Linux ...

  5. 同时访问nlb和nlb后端机器导致TCP连接超时

    问题现象 在使用nlb的过程中,同一个客户端IP使用同一个源端口,同时请求nlb vip的端口和nlb后端机器的端口,会出现TCP Port numbers reused端口重用,并且一直重传SYN导 ...

  6. win2008 查询 tcp连接失败_TCP详解(转)

    一直以来写过好些TCP连接的程序,各种情况都处理过,但是对具体的TCP协议却缺少完整性的学习.在网上找了一篇觉得特别棒的文章,这里做下搬运工,保存下来,方便以后自己翻阅. 通过阅读发现一个有意思的事情 ...

  7. sqlserver服务启动失败_条码打印软件连接SQL数据库出现TCP连接失败解决办法

    小编今天用条码打印软件连接SQL 数据库遇到了一个问题:通过端口1433连接到主机localhost的TCP/IP连接失败.错误:"Connection refused:connect.请验 ...

  8. Android用模拟器测试TCP连接失败问题

    最近做app用mumu做的TCP测试但是就是连不上电脑,查了一下发现是电脑和模拟器的通信问题.具体转载一位大佬的博客: https://www.cnblogs.com/ioter/articles/3 ...

  9. GNS3 cloud 连接错误_条码打印软件连接SQLServer出现TCP连接失败解决办法

    小编今天用条码打印软件连接SQL Server数据库遇到了一个问题:通过端口1433连接到主机localhost的TCP/IP连接失败.错误:"Connection refused:conn ...

最新文章

  1. 用Tcl定制Vivado设计实现流程
  2. KS012基于SSM实现个人记账管理系统
  3. 交通运输部部长李小鹏谈及自动驾驶:包容失败、反对垄断,力争在国家层面出台指导意见...
  4. Android使用Application总结
  5. spring 之 import标签、alias标签、beans标签 解析
  6. Windows Live Writer 配置报407 Proxy Authentication Required错误
  7. HDFS分布式文件系统设计原理
  8. Android官方开发文档Training系列课程中文版:电池续航时间优化之按需开启广播接收器
  9. Effective Java~58. for-each 循环优先于传统的for 循环
  10. python现在的时间是几点_Python 的日期和时间处理
  11. matlab 工具函数 —— logdet(A)
  12. _软件园三期西片区F地块举行招商推介会 超300家企业意向落户 - 本网原创
  13. 针式打印机风格英文字体_可爱漂亮的圣诞节和新年贺卡艺术字体推荐!
  14. 信息安全-网络安全应急响应技术原理与应用(一)
  15. 舞蹈课(2020NOIP)
  16. 陈强教授《机器学习及R应用》课程 第七章作业
  17. 华为紧盯Android专利战: 置身事外几无可能
  18. tecplot无法处理高版本fluent导出的Ensight格式
  19. luna sea - I For You,“我想为你拭去降临在你身上的所有痛楚I For You 。。。”
  20. 旋转体的体积和表面积

热门文章

  1. 【论文分享】Clothes-Changing Person Re-identification with RGB Modality Only
  2. response.sendError
  3. socket 端口复用 linux,socket 端口复用
  4. CocosCreator项目实战(14):功能-分享
  5. 【狂神Vue】Vue,ElmentUI
  6. 【C语言】字符变量间的减法
  7. maven打包jar到本地仓库
  8. linux的 /home ,home/ ,/home/ 的区别
  9. 27款开源图片相册管理系统
  10. python简单好玩的代码_只需要9步100行Python代码就可以实现一个简单又好玩的弹球游戏...