I have the Shrew client installed in order to connect to a cisco VPN.

(side note: anyconnect royally blows and I spent several hours trying to get it to work; I had shrew running within 2 minutes of installing it.)

Anyway, I can connect just fine and it works.

What I need to do is schedule the connection. For example, once a day I want a process to start shrew, auto connect to the vpn then run a SQL script. Once the script is finished I want shrew to disconnect from the VPN.

So far I have the following:

"C:\Program Files\ShrewSoft\VPN Client\ipsecc.exe" -r ClientSite -u MyUser -p MyPassword -a

When this runs, Shrew connects and starts the VPN interface. However, that line doesn't return until someone clicks the "disconnect" button.




ShrewSoft VPN doesn't have any command line parameters to disconnect. The only simple alternative is to send a taskkill to the process to close, e.g;

taskkill.exe /IM ipsecc.exe

Of course, this will affect all ipsecc processes should you have multiple VPNs active.

Non Blocking Start

You may want to use something like the "start" command to run the ipsecc command without blocking the batch process.

C:\Windows\system32>start /?
Starts a separate window to run a specified program or command.

I've open sourced some code which manages shrew connections and re-connections. UI is well isolated from the core so it would be easily modifiable to do whatever you need.

Check it out at https://github.com/CamW/shrew-reconnect if you're interested.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.