找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 8616|回复: 10

[pppoe] pppoe客户端自动拨号原理及实现(申精)

[复制链接]
发表于 2008-12-3 10:46:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
家庭上网大多采用ADSL拨号上网,很多人使用ADSL网络提供商的拨号软件,可这些软件广告太多,并且还公窃取你的上网习惯等信息,所以可以使用XP自带的拨号软件。一般的XP下ADSL拨号操作如下:开始-附件-通讯-新建连接向导-连接到Internet-手动设置我的连接-用要求用户名和密码的宽带连接来连接,ISP名称随便填写,用户名和密码填写网络服务提供商提供的信息,连接建立好后会在桌面上建立上一个拨号的快捷方式,上网前双击它即可上网。
    对于一个家庭用户来说,双击桌面上的连接快捷方式上网并不感觉很麻烦。可是对于小区宽带管理员来说,经常给用户解释怎么新建立ADSL连接还是不方便。可不可以建立一个文件代替上面建立连接的冗长的过程呢?确实可以。
    实际上,拨号的过程是由XP中的rasphone.exe程序调用rasphone.pbk配置文件来完成的,我们上面建立连接的过程就是修改rasphone.pbk配置文件的过程。根据这个原理,我们完全可以由管理员建立一个rasphone.pbk文件,然后用户拷回去后直接双击并填写用户名和密码即可拨号,从而避免了建立拨号连接的冗长的过程。
    下面就是一个典型的rasphone.pbk配置文件的内容:
-------------不含此分割线--------------------
[adsl]
Encoding=1
Type=5
AutoLogon=0
UseRasCredentials=0
DialParamsUID=35169031
Guid=634FB3A1DDF5D14F9A87795DF822D9D0
BaseProtocol=1
VpnStrategy=0
ExcludedProtocols=3
LcpExtensions=1
DataEncryption=8
SwCompression=1
NegotiateMultilinkAlways=0
SkipNwcWarning=0
SkipDownLevelDialog=0
SkipDoubleDialDialog=0
DialMode=1
DialPercent=75
DialSeconds=120
HangUpPercent=10
HangUpSeconds=120
OverridePref=15
RedialAttempts=3
RedialSeconds=60
IdleDisconnectSeconds=0
RedialOnLinkFailure=1
CallbackMode=0
CustomDialDll=
CustomDialFunc=
CustomRasDialDll=
AuthenticateServer=0
ShareMsFilePrint=0
BindMsNetClient=0
SharedPhoneNumbers=0
GlobalDeviceSettings=0
PrerequisiteEntry=
PrerequisitePbk=
PreferredPort=
PreferredDevice=
PreferredBps=0
PreferredHwFlow=0
PreferredProtocol=0
PreferredCompression=0
PreferredSpeaker=0
PreferredMdmProtocol=0
PreviewUserPw=1
PreviewDomain=0
PreviewPhoneNumber=0
ShowDialingProgress=1
ShowMonitorIconInTaskBar=1
CustomAuthKey=-1
AuthRestrictions=632
TypicalAuth=1
IpPrioritizeRemote=1
IpHeaderCompression=0
IpAddress=0.0.0.0
IpDnsAddress=0.0.0.0
IpDns2Address=0.0.0.0
IpWinsAddress=0.0.0.0
IpWins2Address=0.0.0.0
IpAssign=1
IpNameAssign=1
IpFrameSize=1006
IpDnsFlags=0
IpNBTFlags=0
TcpWindowSize=0
UseFlags=1
IpSecFlags=0
IpDnsSuffix=

NETCOMPONENTS=
ms_server=0
ms_msclient=0

MEDIA=rastapi
Port=PPPoE6-0
Device=WAN 微型端口 (PPPOE)

DEVICE=PPPoE
PhoneNumber=
AreaCode=
CountryCode=1
CountryID=1
UseDialingRules=0
Comment=
LastSelectedPhone=0
PromoteAlternates=0
TryNextAlternateOnFail=1

-------------不含此分割线--------------------
    说到这里我们怎么让拨号自动完成呢,也就是不用人为双击拨号不用填写用户名和密码,让拨号随系统启动而自动完成呢?
    这里又要说到另一个XP自带的拨号程序rasdial.exe程序,这个程序和rasphone.exe的都是用来拨号的,并且都是调用读取rasphone.pbk配置文件,但rasdial是命令行拨号工具,而rasphone是图形化拨号工具。为了完成自动拨号,我们还是使用命令行拨号工具rasdial比较方便。
    下面这行命令就是命令行下的拨号命令,把这个命令写入rasphone.bat脚本文件,并把rasphone.bat和上面提到的rasphone.pbk文件放到同一个目录中,并让rasphone.bat随系统自启动,即可实现拨号的自动实现。
-------------不含此分割线--------------------
rasdial adsl pppuser001 ppppassword001 /phonebook:rasphone.pbk
-------------不含此分割线--------------------
命令中“adsl”是拨号连接名称,此名称要与rasphone.pbk中的第一行中标识的连接名称相同。pppuser001和ppppassword001分别是拨号的用户名和密码,各用户要做适当修改。

    总结:自动拨号的实现需要3个文件,其中rasdial.exe、rasphone.pbk、rasphone.bat,其中rasdial.exe由XP自带。管理员只需要建立两个文件rasphone.pbk和rasphone.bat,各文件内容见上文详述。把rasphone.pbk和rasphone.bat放在同目录中,并让rasphone.bat自启动即可。

[ 本帖最后由 jibaowang 于 2008-12-3 11:26 编辑 ]
routeros
发表于 2008-12-3 20:19:02 | 显示全部楼层
和和,没有这么麻烦的!
routeros
回复

使用道具 举报

发表于 2008-12-3 22:17:27 | 显示全部楼层
这个拨号配置文件很有用处的~~

用这个

可以用批处理的方式来拨号
不仅是pppoe 可以拨
vpn也是可以播的
routeros
回复

使用道具 举报

发表于 2008-12-4 18:59:03 | 显示全部楼层
我还以为只要脚本就可以了,还要其它文件,这个不太好。
routeros
回复

使用道具 举报

发表于 2008-12-13 00:48:40 | 显示全部楼层

回复 4# 的帖子

XP 上面这几个文件都有的,怎么不好,至少是一种思路
routeros
回复

使用道具 举报

发表于 2008-12-13 11:50:01 | 显示全部楼层
不错,不过就是在拨号完成以后,怎么不见拨号的连接状态呢?
routeros
回复

使用道具 举报

 楼主| 发表于 2009-2-6 14:51:08 | 显示全部楼层
6# admini

只是建立连接,没有在建立连接过程中修改注册表,所以没有显示连接状态。
如果通连接向导建立连接,注册表会相应修改以显示连接状态图标。
routeros
回复

使用道具 举报

发表于 2009-2-9 00:04:40 | 显示全部楼层
支持.收下了,謝謝樓主.
routeros
回复

使用道具 举报

发表于 2009-2-9 16:08:31 | 显示全部楼层
简单的事情搞复杂了
简单两步
1.PNG
2.PNG
routeros
回复

使用道具 举报

发表于 2009-2-17 00:32:48 | 显示全部楼层
这个帖子开的不错,技术派和实用派都各得其所。
顶一下,建议加精
routeros
回复

使用道具 举报

发表于 2009-11-23 00:39:05 | 显示全部楼层
mark,学习。
routeros
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|软路由 ( 渝ICP备15001194号-1|渝公网安备 50011602500124号 )

GMT+8, 2024-5-20 20:21 , Processed in 0.075351 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表