Linux对外连接端口数限制
这两天做压力测试,发现了一个问题,当模拟TCP client对外发起连接数达到28000左右时,开始大量抛如下异常:
java.net.BindException: Cannot assign requested address
at sun.nio.ch.Net.connect0(Native Method)
at sun.nio.ch.Net.connect(Net.java:364)
at sun.nio.ch.Net.connect(Net.java:356)
at sun.nio.ch.UnixAsynchronousSocketChannelImpl.implConnect(UnixAsynchronousSocketChannelImpl.java:326)
at sun.nio.ch.AsynchronousSocketChannelImpl.connect(AsynchronousSocketChannelImpl.java:195)
at com.aliyun.talk.mon.stack.comm.AsyncConnection.connect(AsyncConnection.java:85)
研究发现,Linux对外的随机分配端口是由一定限制的,理论上单机对外的端口最大值为65535,除去一些保留端口和被占用端口外,也应该在6W左右,但实际上单机建立对外连接时,默认不超过28232个连接。
执行以下命令就很清楚原因了:
$ cat /proc/sys/net/ipv4/ip_local_port_range
输出结果为:
32768 61000
这就是Linux随机分配端口的范围,如果在该范围内有被占用的端口,那么连接数肯定小于28232.如果想更改这个范围,可以执行以下命令:
# echo "10000 65535" > /proc/sys/net/ipv4/ip_local_port_range
转载于:https://blog.51cto.com/tenderrain/1753399
Linux对外连接端口数限制相关推荐
- 修改Linux SSH连接端口和禁用IP,安装DDoS deflate
测试系统:centos7 修改连接端口 修改配置文件 vi /etc/ssh/sshd_config 去掉port 22的注释,添加新的端口配置 port your_port_num 自定义端口选择建 ...
- linux下修改ssh默认的连接端口及禁止root远程连接等
一.背景 还是来源于一篇博客,博主的服务器被入侵者无情入侵,所用的手段就是先获取root的密码,然后远程连接root.那么如果我们修改ssh默认连接的端口,并且禁止root远程连接的话,是不是就稍微安 ...
- linux 开放1701端口,长连接及Linux 查看长连接端口
长连接及Linux 查看长连接端口 [日期:2009-02-10] 来源:Linux公社 作者:Linuxidc [字体:大 中 小] unix 3 [ ] 流 ...
- Linux FTP 21端口始终无法连接的问题
记录一下出现的问题 环境如下 环境如下 软件 版本 Linux Centos7.5 ftp软件 Pure-ftpd 宝塔Panel 6.9.9 安装完下面这个插件之后吧,进行了一系列常规设置 1.首先 ...
- Linux打开端口1521,Linux开放1521端口允许网络连接Oracle Listener
症状: 1. TCP/IP连接是通的.可以用ping 命令测试. 2. 服务器上Oracle Listener已经启动. lsnrctl status 查看listener状态 lsnrct ...
- linux1521端口不通,Linux开放1521端口允许网络连接Oracle Listene
症状: 1. TCP/IP连接是通的.可以用ping 命令测试. 2. 服务器上Oracle Listener已经启动. lsnrctl status 查看listener状态 lsnrctl st ...
- Kali Linux渗透测试之端口扫描(一)——UDP、TCP、隐蔽端口扫描、全连接端口扫描
端口扫描 二.三.四层发现的目的就是发现存活的IP,在存活的IP上面,展开进一步的扫描,及端口扫描,发现存活主机上存在着哪些开放的端口,端口后面就对应着各种各样的应用程序,应用程序的漏洞都是通过端口体 ...
- rabbitmq linux端口,修改rabbitmq的连接端口
rabbitmq的默认连接端口是5672,如果要修改的话,可以通过配置文件修改 当然一般情况下都会遇到坑 默认配置文件地址:安装目录下的etc 就这样一个东东 然后为了怕改错复制一份出来保留,就可以把 ...
- linux删除80端口,linux下解决80端口被占用
安装一个nginx服务,在启动的时候报80端口被占用了,我们来检查一下有哪些服务占用了80端口 首先我们查一下占用80端口的有哪些服务,netstat -lnp|grep 80 查看80端口被那些服务 ...
最新文章
- bitbucket迁移
- 授予数据库账号dba权限_从自建Oracle迁移至云原生数据仓库AnalyticDB PostgreSQL
- mysql一对多代码_MySQL实现一对多查询的代码示例
- (转)CentOs 设置静态IP 方法
- 《MySQL必知必会》读书笔记_3
- python 两两组合
- Java面试复习大纲2.0(持续更新)
- SoapUI接口测试——关联——参数化
- 进程的同步、互斥、通信的区别,进程与线程同步的区别
- H5+springboot(集成ffmpeg)实现前端视频录制以及webm格式转mp4
- iOS 下载和播放 M3U8
- mysql 磁盘已满_记一次 mysql 磁盘满解决过程
- Mac 上的系统监控工具,可以实时监控系统的 CPU 使用率、内存使用率、硬盘使用、网速、电池等信息
- Ubuntu系统下 .7z 文件压缩解压命令
- iOS开发之观察者模式
- 计算机配置更新太慢,电脑更新速度慢怎么办
- 一、Composer下载安装
- 使用docker安装zookeeper
- 把xml数据集 转为 BDD100K 的json数据格式
- Echarts 根据页面宽度自适应