刘耀文

刘耀文

java开发者
github

VSCODE SSH 智能路由配置方法

配置模板#

# 基礎配置:定義別名和默認認證方式
Host custom-alias
    User your-username
    PreferredAuthentications publickey
    IdentityFile "path/to/your/private_key"

# 內網路由:通過 ping 檢測內網可達性
Match host custom-alias exec "ping -n 1 -w 100 internal.ip >nul 2>&1"
    HostName internal.ip
    Port internal_port

# 外網路由:內網不通時的備選方案
Match host custom-alias
    HostName external.ip
    Port external_port

使用步驟#

  1. 替換配置項

    • custom-alias: 設置便於記憶的別名
    • your-username: 替換為登錄用戶名
    • path/to/your/private_key: 替換為私鑰文件路徑
    • internal.ip: 替換為內網 IP
    • internal_port: 替換為內網端口
    • external.ip: 替換為外網 IP
    • external_port: 替換為外網端口
  2. 連接命令

ssh custom-alias

工作原理#

  1. SSH 客戶端收到 custom-alias 連接請求
  2. 按順序檢查 Match 條件:
    • 先執行 ping 命令檢測內網連通性
    • 如果內網可達,使用內網配置
    • 如果內網不可達,使用外網配置
  3. 使用對應配置進行連接

注意事項#

  • Windows 系統路徑使用反斜杠 \
  • Linux/Mac 系統路徑使用正斜杠 /
  • ping 命令參數:
    • Windows: ping -n 1 -w 100
    • Linux/Mac: ping -c 1 -W 1
  • 確保配置文件權限正確(Linux/Mac 建議 600)

此文由 Mix Space 同步更新至 xLog
原始鏈接為 https://liuyaowen.cn/posts/default/202501021


載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。