如何為 Windows 10 中的特定應用程序自動連接到 VPN


Windows 10 PowerShell cmdlet 可以輕鬆添加在啟動時自動觸發 VPN 連接的應用程序。通過自動執行此任務,您甚至不必在使用某些應用程序時考慮連接到 VPN。

要在 PowerShell 中利用此功能,您必須首先將 VPN 服務添加到您的計算機(如果您尚未這樣做)。

如何在 Windows 上連接到 VPN

如何添加 VPN 自動觸發

在 Windows 10 上設置 VPN 連接後,您需要打開提升的 PowerShell 實例。去做這個,[スタート]單擊按鈕並鍵入“Powershell”。[Windows PowerShell]並從菜單中[管理者として実行]選擇。

在出現的提示下[はい]單擊以允許訪問您的計算機。

在 PowerShell 窗口中,鍵入並替換: <VPNConnection> 什麼時候 <AppPath> 每個都採用 VPN 連接的名稱和要使用的應用程序的文件路徑。

Add-VpnConnectionTriggerApplication -Name "<VPNConnection>" –ApplicationID "<AppPath>"

“ – 應用程序 ID”” 命令。’ 寬度=”650” 高度=”115” onload=”pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);” onerror=”this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);”>


請務必在命令中包含引號。

按 Enter 運行命令。 PowerShell 警告默認情況下禁用拆分隧道。要繼續,您必須在自動觸發之前確認並啟用該功能.

出現提示時鍵入 Y,然後再次按 Enter 退出。

默認情況下檢查拆分隧道

要在沒有人工干預的情況下連接到 VPN,必須啟用自動觸發的拆分隧道。

拆分隧道可防止 Windows 在應用程序觸發它啟動時通過 VPN 路由所有網絡流量。相反,它會拆分流量,只有來自列出的應用程序的數據通過 VPN。

類型 Set-VpnConnection -Name "<VPNConnection>" -SplitTunneling $True 轉到 PowerShell 並替換 <VPNConnection> 使用您的 VPN 名稱(同樣,用引號括起來)並按 Enter。

“-SplitTunneling $True”命令。 ‘ 寬度=”650” 高度=”136” onload=”pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);” onerror=”this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);”>


然後,如果您不小心關閉了應用程序並且不想結束連接,您可以設置一個超時緩衝區並重新啟動您的應用程序。

類型 Set-VpnConnection -Name "<VPNConnection>" -IdleDisconnectSeconds <IdleSeconds> 轉到 PowerShell 並按 Enter。交換 <VPNConnection> 使用連接名稱, <IdleSeconds> 等待連接關閉的秒數。

-IdleDisconnectSeconds ” 命令。’ width=”650” height=”100” onload=”pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);” onerror=”this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);”>

現在,當應用程序關閉時,Windows 將在終止 VPN 連接之前等待 10 秒。這個數字取決於你,或者你可以完全跳過這一步。

如何查看哪些應用程序自動觸發 VPN

有幾種方法可以檢查您已設置哪些應用程序來啟動 VPN 連接。 您可以在 PowerShell 中使用 cmdlet 或在文件資源管理器中編輯電話簿文件。

PowerShell 和 Windows 命令提示符之間的差異

如果您的 VPN 突然啟動並且您不知道為什麼,您可以使用以下方法之一來查找觸發它的應用程序。

使用 PowerShell cmdlet

要使用這種方法,[スタート]單擊按鈕並鍵入“Powershell”。[Windows PowerShell]並從菜單中[管理者として実行]選擇。

在搜索欄中輸入“PowerShell”,[Windows PowerShell]右鍵點擊[管理者として実行]點擊。


在出現的提示下[はい]單擊以允許訪問您的計算機。

在 PowerShell 窗口中,輸入以下命令。 <VPNConnection > 使用您的 VPN 連接名稱,然後按 Enter。

Get-VpnConnectionTrigger -ConnectionName <VPNConnection>

“command.’ width=”645” height=”171” onload=”pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);” onerror=”this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);”>

在此示例中,該命令獲取 VPN 連接“VPN Canada”的觸發器屬性並在下方顯示它們。

使用文件資源管理器

另一種選擇是跟踪錶盤 電話簿文件 在文件資源管理器中。在文本編輯器中打開它,您將看到觸發 VPN 的應用程序列表。

電話簿文件為 Windows 提供了一種標準方式來收集和指定建立遠程訪問連接 (RAS) 所需的信息。此文件包含 IP 地址、端口、調製解調器設置和触發連接的應用程序等信息。

首先,打開文件資源管理器並將以下目錄粘貼到地址欄中, <User> 使用您當前的用戶名,然後按 Enter。

C:Users<User>AppDataRoamingMicrosoftNetworkConnectionsPbk

將文件路徑粘貼到地址欄中。


右鍵單擊“rasphone.pbk”並選擇文本編輯器以打開文件。

此文件包含您計算機上的所有 VPN 連接,因此如果您有多個 VPN,您可能需要進行大量過濾才能找到所需的應用程序。它存儲在“ClassicApplicationIDs”函數下作為其直接文件路徑。

在文本編輯器中

幸運的是,如果您不想滾動瀏覽所有應用程序,大多數文本編輯器都有搜索功能。 按 Ctrl+F,在文本字段中鍵入“ClassicApplicationIds”,然後按 Enter。

在文本框中找到“ClassicApplicationIds”。

如何刪除 VPN 自動觸發

如果您不小心添加了錯誤的應用程序,或者您不再希望在特定應用程序啟動時觸發 VPN,您可以在 PowerShell 中使用類似的 cmdlet 將其刪除。

極客學校:了解如何在 PowerShell 中使用 cmdlet

要刪除 VPN 自動觸發器,[スタート]單擊按鈕並鍵入“Powershell”。[Windows PowerShell]並從菜單中[管理者として実行]選擇。

在搜索欄中輸入“PowerShell”,[Windows PowerShell]右鍵點擊[管理者として実行]點擊。

在出現的提示下[はい]單擊以允許訪問您的計算機。


在 PowerShell 窗口中,鍵入: <VPNConnection> 什麼時候 <AppPath> 分別使用您的 VPN 連接的名稱和應用程序的路徑。

Remove-VpnConnectionTriggerApplication -Name "<VPNConnection>" –ApplicationID "<AppPath>"

PowerShell 將要求您確認是否要從自動觸發列表中刪除該應用程序。 鍵入 Y 並按 Enter。

對要從列表中刪除的每個應用程序重複此步驟。

當您啟動指定的應用程序時,Windows 將啟動 VPN 連接並通過它發送流量。無需第三方軟件。