問題描述: 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
無需重啟服務器