ค้นหาเว็บไซต์

เพิ่มเส้นทางคงที่โดยอัตโนมัติหลังจากเชื่อมต่อกับ VPN


ในรุ่นล่าสุดของ Windows 10 คุณสามารถเพิ่มเส้นทางคงที่โดยอัตโนมัติเมื่อสร้างการเชื่อมต่อ VPN เมื่อการเชื่อมต่อ VPN สิ้นสุดลง เส้นทางจะถูกลบออกจากตารางเส้นทางของ Windows โดยอัตโนมัติ ในการเพิ่มเส้นทาง IPv4 หรือ IPv6 สำหรับการเชื่อมต่อ VPN จะใช้ PowerShell cmdlet Add-VpnConnectionRoute

แน่นอน คุณสามารถเพิ่มเส้นทางสำหรับการเชื่อมต่อ VPN ด้วยตนเองผ่านทางพรอมต์คำสั่ง แต่เส้นทางเหล่านั้นจะถูกล้างหลังจากยกเลิกการเชื่อมต่อจาก VPN ดังนั้นครั้งต่อไปที่คุณเชื่อมต่อกับ VPN คุณจะต้องเพิ่มเส้นทางด้วยตนเองอีกครั้ง

สมมติว่าคุณต้องการทราฟฟิกเฉพาะสองเครือข่ายย่อย (

192.168.11.0/24

และ

10.1.0.0/16

) เพื่อกำหนดเส้นทางผ่านการเชื่อมต่อ VPN ของคุณ และการรับส่งข้อมูลอื่นๆ ผ่านผู้ให้บริการของคุณ (ISP)

เปิดคอนโซล PowerShell และแสดงรายการการเชื่อมต่อ VPN ที่กำหนดค่าใน Windows:

Get-VpnConnection

ก่อนอื่น ให้ยกเลิกการเลือกตัวเลือก ใช้เกตเวย์เริ่มต้นในเครือข่ายระยะไกล คุณสามารถทำได้ในคุณสมบัติการเชื่อมต่อ VPN ในแผงควบคุมหรือใช้คำสั่ง PowerShell Set-VpnConnection:

Set-VpnConnection -Name workVPN -SplitTunneling $True

เรียนรู้เพิ่มเติมเกี่ยวกับ SplitTunneling ในบทความ ไม่มีการเชื่อมต่ออินเทอร์เน็ตหลังจากเชื่อมต่อกับ VPN

มาเพิ่มเส้นทางคงที่สองเส้นทางสำหรับการเชื่อมต่อ VPN ของเรา:

Add-VpnConnectionRoute -ConnectionName workVPN -DestinationPrefix 192.168.11.0/24 -PassThru
Add-VpnConnectionRoute -ConnectionName workVPN -DestinationPrefix 10.1.0.0/16 -PassThru

ในตัวเลือก DestinationPrefix ให้ระบุเครือข่ายย่อยหรือที่อยู่ IP ของโฮสต์ที่คุณต้องการกำหนดเส้นทางการรับส่งข้อมูลผ่าน VPN หากต้องการเพิ่มโฮสต์เดียวตามที่อยู่ IP ให้ใช้รูปแบบต่อไปนี้:

10.1.1.26/32

DestinationPrefix : 192.168.11.0/24
InterfaceIndex :
InterfaceAlias : workVPN
AddressFamily : IPv4
NextHop : 0.0.0.0
Publish : 0
RouteMetric : 1

หากการเชื่อมต่อ VPN ของคุณทำงานอยู่ คุณจะต้องเชื่อมต่อใหม่เพื่อให้เส้นทางใหม่ถูกเพิ่มไปยังตารางเส้นทาง

เส้นทางใหม่เชื่อมโยงกับการเชื่อมต่อ VPN และจะเพิ่มเมื่อสร้างการเชื่อมต่อแล้วเท่านั้น เมื่อคุณยกเลิกการเชื่อมต่อจากเซิร์ฟเวอร์ VPN เส้นทางจะถูกลบออกโดยอัตโนมัติ

ตัดการเชื่อมต่อจาก VPN และตรวจสอบตารางเส้นทาง เส้นทางไปยังเครือข่ายระยะไกลของคุณถูกลบออกโดยอัตโนมัติ และ

Get-NetRoute

ส่งคืนว่าไม่พบเส้นทาง:

Get-NetRoute : No MSFT_NetRoute objects found with property 'DestinationPrefix' equal to '192.168.11.0/24'. Verify the value of the property and retry. CmdletizationQuery_NotFound_DestinationPrefix,Get-NetRoute

หากต้องการลบเส้นทางคงที่สำหรับการเชื่อมต่อ VPN ให้ใช้คำสั่ง:

Remove-VpnConnectionRoute -ConnectionName workVPN -DestinationPrefix 192.168.111.0/24 -PassThru

หากคุณต้องการเปลี่ยนลำดับของการจำแนกชื่อ DNS ด้วยการเชื่อมต่อ VPN ที่ใช้งาน โปรดอ่านบทความนี้

ใน Windows รุ่นก่อนหน้า (Windows 7/ Windows Server 2008R2) หากต้องการเพิ่มเส้นทางแบบไดนามิกหลังจากสร้างการเชื่อมต่อ VPN คุณจะต้องใช้ CMAK และสคริปต์ต่างๆ พร้อมคำสั่งเพิ่มเส้นทาง

ตัวอย่างเช่น คุณสามารถสร้างแบตช์ไฟล์ vpn_route.netsh เพื่อเพิ่มเส้นทางแบบคงที่

interface ipv4
add route prefix=192.168.11.24 interface="workVPN" store=active
add route prefix=10.1.0.0/16 interface="workVPN" store=active
exit

คุณสามารถเรียกใช้ไฟล์นี้โดยใช้ Task Scheduler ที่ทริกเกอร์หลังจากสร้างการเชื่อมต่อ VPN แล้ว (เหตุการณ์ RasMan 20225 ใน Event Viewer)

schtasks /create /F /TN "Add VPN routes" /TR "netsh -f C:\PS\vpn_route.netsh" /SC ONEVENT /EC Application /RL HIGHEST /MO "*[System[(Level=4 or Level=0) and (EventID=20225)]] and *[EventData[Data='My VPN']]"

บทความที่เกี่ยวข้อง