如何在Windows启动时(登录前)自动进行PPPoE拨号

作者: lesca 分类: FAQ,Tutorials,Windows 发布时间: 2012-07-10 14:39

如果计算机能在Windows启动时自动登录进行拨号,并且在Windows关机时自动断开连接,岂不是很好?本文就介绍在Windows上实现这一机制的方法。该方法可以在各个Windows版本上使用。

1.新建“可自动拨号的PPPoE连接”

  • 新建一个“PPPoE拨号连接”,连接名称为ct
  • 输入PPPoE用户名及密码,允许其他用户使用,并记住密码
  • 在“网络连接”中找到刚刚新建的连接ct,右击“属性”
  • 切换到“选项”选项卡,去掉“提示输入用户名、密码等”的选项,单击“确定”保存

2.用cmd脚本实现“连接”与“断开连接”

我们将脚本保存在C:\Scripts\目录下。
新建一个名为pppoe.bat的拨号脚本:

@echo off
set output="C:\Scripts\output.txt"

echo Connecting... >> %output%
:loop
ping localhost
echo %date% %time% >> %output%
"c:\windows\system32\rasdial.exe" ct pppoe_user pppoe_pass >> %output%
echo. >> %output%
if not %errorlevel% == 0 (goto loop)

exit 0

其中:

  • ct是刚刚新建的连接名称
  • pppoe_userpppoe_pass是ISP提供给你的连接用户名和密码,应该和之前建立连接时的一致

新建一个名为disconnect.bat的断开连接脚本:

@echo off
set output="C:\Scripts\output.txt"
echo %date% %time% >> %output%
echo Disconnecting... >> %output%
"c:\windows\system32\rasdial.exe" ct /disconnect >> %output%
echo. >> %output%
ping localhost
exit 0

3.配置Windows启动时自动连接PPPoE

此处以Win7为例进行介绍,XP的设置方法请参考《Windows: 在系统启动时运行程序》中第1节。

  • 进入“管理员工具”,选择“任务计划”
  • 在右边“动作”面板中选择“创建任务”,任务名称为pppoe
  • 在下面“安全选项”中选择“无论用户是否登录”,并勾选“以最高权限运行”
  • 切换到“触发”选项卡,单击“新建”按钮,任务开始时间设置为启动时
  • 切换到“动作”选项卡,选择刚刚创建的pppoe.bat作为运行脚本
  • 切换到“条件”选项卡,去除所有选项
  • 切换到“设置”选项卡,去除所有选项
  • 单击“确定”按钮,输入当前用户密码,创建完成

4.配置Windows关机时自动断开PPPoE连接

Windows关机时不会通知当前PPPoE连接断开,这会造成重启后无法立即成功连接。虽然连接脚本会反复尝试,但是如果能让系统关机时自动断开连接岂不更好?下面介绍用组策略的方法配置自动断开连接:

  • 启动“组策略”(gpedit.msc)
  • 切换到“本地计算机策略” – “计算机配置” – “Windows设置” – “脚本”
  • 双击“关机”(Shutdown)策略,单击“添加”按钮,选择之前创建的disconnect.bat脚本
  • 单击“确定”完成设置

版权声明

本文出自 Lesca 技术宅,转载时请注明出处及相应链接。

本文永久链接: https://www.lesca.cn/archives/start-pppoe-connection-before-windows-logon.html

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!