да, это работает, но вот еще один обходной путь с помощью планировщика задач Windows
http://www.dariancabot.com/2010/11/15/automatically-connect-to-vpn-at-windows-startup/
в планировщике задач вы можете заставить его повторяться через часы или минуты и изменять поведение (может понадобиться, так как модемы usb 3g обычно отключаются в ноутбуках для экономии энергии)
Другой подробный метод здесь взят из
http://social.technet.microsoft.com/Forums/en-US/W8ITProPreRel/thread/771eeb9a-77e6-428f-8e23-3433d1421757/
How to setup a Scheduled Task to Trigger on a VPN Disconnect
1. Click Windows8 Start and type Schedule Task (open it under Settings)
2. Click Create Task
3. Apply the following settings in the specified Tabs (italics describes each setting)
General Tab
Name: VPN Redial
For descriptive use, you can use any name you want like My Company VPN Redial....whatever.....
Select: Run whether user is logged on or not
Provided you have a password associated to your login account, this option will prevent the dos window from opening everytime the job runs. If you don't have a password, leave it and see the notes below these steps.
Triggers Tab
Click New button
To create a new trigger we will use to activate the job when the VPN connect disconnects
Begin the task: On an Event
The job will be triggered by an Application event log entry
Select: Custom
Custom gives us the flexibility of creating a more detailed query
Click New Event Filter... button
Here is where we build the query for the trigger
Click the XML tab
This tab allows us to write our own query (even more flexible)
Check Edit query manually
To start a manual edit
Copy the following query
This query will trigger on an Application Event for RasClient with an EventID of 20226 and error codes 829 (Remote Disconnect), 629 (Client Disconnect). Copy from and including <QueryList> to </QueryList>
<QueryList>
<Query Id="0" Path="Application">
<Select Path="Application">*[System[Provider[@Name='RasClient'] and (EventID=20226)]] and *[EventData[Data[4]='829' or '629']]</Select>
</Query>
</QueryList>
Click OK
Ensure Enabled is checked
Check it if it's not checked to make sure the job will be enabled
Click Ok
Actions Tab
Click New
To create an action to be performed when the job is triggered
Action: Start a program
Selection this option will allow us to start rasdial to reestablish the VPN connection
Program/script: rasdial
Should already be in path so just enter rasdial command
Add arguments (optional): "VPN Name" username password
VPN name is the name you defined for your dialup connection. Example, when you click the network icon in the system tray, the name that's listed for your VPN, make sure you enter it in exactly as displayed. Following the connect would be your username and password. Example, "MY VPN Connection" username password
Click Ok
Conditions Tab (not required unless you are using a laptop)
Uncheck: Stop if the computer switches to battery power
Settings TAB
Enable: If the task fails, restart every: 1 minute
In case there is a temporary issue re-establishing the VPN connection. You can specify whatever value you want instead of 1 minute
Attempt to restart up to: 7 times
Again in case there is a temporary issue re-establishing the VPN connection. You can specify whatever value you want instead of 7 times
Click Ok
Notes
1. Haven't really tested this much but I had configured it last night, woke up this morning to find the Event log showing 4 disconnects, and the job redialed all 4 times, VPN connection was still active.
2. In the General Tab we enabled "Run whether user is logged on or not. This is a non issue since there won't be a VPN connection when you're not logged in. What this option does since we are running a dos (rasdial) command, it prevent a dos window from opening every time the job runs so you won't be distracted if you're in the middle of something. This option only works if you have a password (which you should) associated with your account. If you don't and just allow your computer to boot to desktop, the option won't work. What I've done for people in these situations is created a little VBScript wrapper to launch the dos command to avoid the dos prompt. Not really an issue unless you're anal about it like me, you could simply deal with the Dos window opening up.
3. Again the query checks the event log for a new Entry for RasClient with an event id of 20226 containing error codes 820 or 620. you can add additional error codes by repeating the pattern. Example to also trigger on 222 and 333 you would modify the relevant part of the line as such *[EventData[Data[4]='829' or '629' or '222' or '333']]</Select>
4. I'm checking error codes because I don't want the job to be reconnected if I purposely disconnect the VPN which generates a 631 code under Event ID 20226.
Подобный триггер rasdial в Windows входа в систему
In triggers>select>new> in "Begin the task"> select At log on > make sure enabled is checked and press ok Done that's it