问题描述: java创建socket连接,创建的随机客户端端口占用了其它服务的端口,导致该服务无法启动
解决:
1、linux系统为java或其它程序提供随机端口配置项
查看端口范围:sysctl -a | grep range
随机分配的端口范围为10000-65535,由于其它服务端口也在这个范围之间,可修改这个范围
配置文件:vi /etc/sysctl.conf
修改配置项如:net.ipv4.ip_local_port_range=32788 60000
2、若不修改该范围,则配置预留端口,服务器在范围内自动过滤该配置的端口号
net.ipv4.ip_local_reserved_ports = 1986, 11211-11220
分配中不包含1986端口,及11211到11220中的端口
3、使配置生效
#sysctl -p
无需重启服务器