aria2連接網站出現handshake failure問題的分析與解決方法


  aria2是一款輕量級的,支持多協議,跨平台的命令行下載工具,是筆者目前在使用的下載工具,結合uget使用基本上能媲美window下的迅雷工具。在筆者使用過程中,遇到了aria2連接部分網站時出現handshake failure問題,通過網上搜集資料以及分析aria2執行日志后,發現aria2默認使用gnutls作為TLS,SSL以及DTLS協議的庫,而筆者機器的gnutls版本比較低,不支持新的握手算法。現有兩種解決方案:

  1. 將機器的gnutls庫升級至較新版本。

  2. 下載aria2源碼重新編譯安裝,使用open-ssl庫而不使用gnults庫

  本文采用第二種解決方案。aria2源碼安裝過程如下:

獲取源碼

從 https://github.com/aria2/aria2/releases 中下載aria2的源碼包

編譯安裝

解壓到某一目錄並切換到該目錄下執行以下命令

./configure --without-gnutls --with-openssl
make && make install

若編譯時提示缺少openssl庫,則根據對應的平台執行以下命令安裝openssl庫

1. RedHat Fedora 平台

yum -y install openssl-devel

2. Debian ,ubunu 平台

apt-get install libssl-dev

 


免責聲明!

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



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