Linux上客戶端向服務器發起大量請求:failed (99: Cannot assign requested address) while connecting to upstream,問題解決


1、查看系統當前tcp端口等待情況:

    netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a,S[a]}'
2.修改以下系統參數:
    (1) 編輯系統配置:

         vim /etc/sysctl.conf 

    (2) 調低端口釋放后的等待時間,默認為60s,修改為15~30s

           sysctl -w net.ipv4.tcp_fin_timeout=30
    (3) 修改tcp/ip協議配置, 通過配置/proc/sys/net/ipv4/tcp_tw_resue, 默認為0,修改為1,釋放TIME_WAIT端口給新連接使用
           sysctl -w net.ipv4.tcp_timestamps=1
    (4) 修改tcp/ip協議配置,快速回收socket資源,默認為0,修改為1
           sysctl -w net.ipv4.tcp_tw_recycle=1
    (5) 客戶端可用端口范圍
           net.ipv4.ip_local_port_range = 10000     65000      -----意味着10000~65000端口可用

    (6) 修改鏈接重利用

        net.ipv4.tcp_tw_reuse=1

 

3、執行以下命令生效:
    /sbin/sysctl -p

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM