业务遇到这个情况,在启动服务时,出现8049端口被占用而无法启动。
8049端口被该服务器上的客户端随机选取源端口给占用掉了。
net.ipv4.ip_local_port_range是系统设置了随机使用的端口范围 例如1024 65000
这时想用8049就得更改它的范围,改为8050 65000 显然这就减少了很多随机端口,如果需要大量端口就会有瓶颈。
所有最好的方法是net.ipv4.ip_local_port_range范围不变 1024 65000
最好是将服务监听的端口以逗号分隔全部添加到ip_local_reserved_ports中,TCP/IP协议栈从ip_local_port_range中随机选取源端口时,会排除ip_local_reserved_ports中定义的端口,因此就不会出现端口被占用了服务无法启动。