TcpRoute2 - TCP 層的路由器
TcpRoute, TCP 層的路由器。對于 TCP 連接自動從多個線路(允許任意嵌套)、多個域名解析結果中選擇最優線路。TcpRoute2 是 golang 重寫的版本。
通過 socks5 代理協議對外提供服務。
代理功能拆分成了獨立的庫,詳細代理url格式級選項請參見 ProxyClient,目前支持直連、socks4、socks4a、socks5、http、https、ss 代理線路。
安裝
在 releases 頁面有二進制發布的可執行文件。根據系統下載對應的文件,并在同一目錄創建 config.toml 配置文件即可。
配置
默認使用當前目錄下的 config.toml 文件。
# TcpRoute2 配置文件 # https://github.com/GameXG/TcpRoute2 # 監聽地址 # 目前只對外提供 socks5 協議 addr="127.0.0.1:7070" # 可以使用的線路列表 # 連接網絡時會自動選擇最快的線路。 # 注意,直連線路也需要提供,否則不會通過直連訪問網絡。 [[UpStreams]] Name="direct" ProxyUrl="direct://0.0.0.0:0000" # 是否執行本地dns解析 DnsResolve=true [[UpStreams]] Name="https-proxy.com" # 代理地址 # 通過 https://github.com/GameXG/ProxyClient 實現的代理功能 # 目前支持以下格式 # http 代理 http://123.123.123.123:8088 # https 代理 https://123.123.123.123:8088 # socks4 代理 socks4://123.123.123.123:5050 socks4 協議不支持遠端 dns 解析 # socks4a 代理 socks4a://123.123.123.123:5050 # socks5 代理 socks5://123.123.123.123:5050?upProxy=http://145.2.1.3:8080 # ss 代理 ss://method:passowd@123.123.123:5050 # 直連 direct://0.0.0.0:0000/?LocalAddr=123.123.123.123:0 ProxyUrl="https://www.proxy.com:443" DnsResolve=false # 線路的信譽度,不會通過信譽度低于0的代理建立明文協議的連接(http、ftp、stmp等) Credit=0 # 使用本線路前等待的時間(單位毫秒) # 國內 baidu、qq tcping一般是30ms,這里設置為80ms(0.08秒)。 # 可以使得大部分國內站點不會嘗試通過代理訪問,降低上游代理的負擔。 # 0.08秒的延遲很低,并且建立連接后會緩存最快連接記錄,不會再次延遲,所以不建議刪除。 Sleep=80 # 修正延遲 # ss 協議并不會報告是否連接到了目標網站,所以無法獲得真實的到目標網站的 tcpping。 # 目前只能通過 ss 服務器 tcpping + CorrectDelay 來估算。 # 非 ss 協議不用設置,ss 協議建議設置為50-100. CorrectDelay=0
信譽度功能
增加了代理信譽度、dns信譽度的功能,對于信譽度低的代理將只允許 https 、smtp ssl 等本身支持服務器認證的協議。這樣即使使用他人的代理也能比較安全了。
具體細節
-
對 DNS 解析獲得的多個IP同時嘗試連接,最終使用最快建立的連接。
-
同時使用直連及代理建立連接(可設置延遲),最終使用最快建立的連接。
-
緩存10分鐘上次檢測到的最快線路方便以后使用。
-
解析不存在域名獲得域名糾錯IP,并添加到 IP黑名單
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!