問題描述: java建立socket鏈接,建立的隨機客戶端端口占用了其它服務的端口,致使該服務沒法啓動java
解決:linux
一、linux系統爲java或其它程序提供隨機端口配置項服務器
查看端口範圍:sysctl -a | grep rangesocket
隨機分配的端口範圍爲10000-65535,因爲其它服務端口也在這個範圍之間,可修改這個範圍blog
配置文件:vi /etc/sysctl.confip
修改配置項如:net.ipv4.ip_local_port_range=32788 60000配置
二、若不修改該範圍,則配置預留端口,服務器在範圍內自動過濾該配置的端口號grep
net.ipv4.ip_local_reserved_ports = 1986, 11211-11220程序
分配中不包含1986端口,及11211到11220中的端口im
三、使配置生效
#sysctl -p
無需重啓服務器