https://github.com/bsclifton/winvpntool
Simple Windows VPN configuration tool (using RAS API)
https://github.com/bsclifton/winvpntool
Last synced: 3 months ago
JSON representation
Simple Windows VPN configuration tool (using RAS API)
- Host: GitHub
- URL: https://github.com/bsclifton/winvpntool
- Owner: bsclifton
- License: mit
- Created: 2021-05-10T19:57:31.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-06-20T20:36:58.000Z (over 2 years ago)
- Last Synced: 2025-07-01T22:05:01.712Z (3 months ago)
- Language: C++
- Homepage:
- Size: 72.3 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# winvpntool
Simple Windows VPN configuration tool (using RAS API)This repo was put together to demonstrate the Windows API calls needed to enum entries/devices/connections and also create/remove/connect to entries.
I tried to link back to the MSDN documentation where possible and document non-obvious findings. The compiled binary does function as a standalone executable.On Windows 10, you can view your VPNs by opening Settings (bottom right corner of screen) and opening the VPN control panel. The calls here will update the status there in realtime.
For creating entries, this code is defaulting to a policy which works on an IKEv2 connection and has a hard-coded policy in place.## Command line usage
### Print details about existing entries and connections
- `winvpntool.exe --connections`
- `winvpntool.exe --devices`
- `winvpntool.exe --entries`### Create, connect to, and remove a VPN entry
- `winvpntool.exe --create MYVPN1 test.domain-name-here.com bubba Password1!`
- `winvpntool.exe --connect MYVPN1`
- `winvpntool.exe --remove MYVPN1`