中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-03 17:09
48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » [已结]如何用批处理获得PPP拨号连接的IP地址
可打印版本  2,162 / 10
第1楼 Macadd 发表于 2006-10-01 10:12
高级用户 发帖 168 积分 638
[已结]如何用批处理获得PPP拨号连接的IP地址
如何用批处理获得PPP拨号连接的IP地址?

[ Last edited by HAT on 2008-10-15 at 20:44 ]
第2楼 namejm 发表于 2006-10-01 11:22
荣誉版主 发帖 1,737 积分 5,226 来自 成都
  不知道你获得PPP拨号连接的IP地址做何用途,以"IP"为关键字搜索了一下相关的讨论,贴上几条搜索结果,楼主可以去看看:

  1、怎么用BAT文件设置IP地址和DNS?
  2、批处理如何获得本机的IP和MAC地址然后进行绑定?
  3、转贴:如何在命令行下更改ip地址
  4、请教如何写BAT获取计算机名、工作组名和IP地址
  ……
第3楼 redtek 发表于 2006-10-01 11:33
金牌会员 发帖 1,147 积分 2,902
dos提示符下键入 IPCONFIG    回车,就可以看到向下面类似的IP地址以及其它信息。

IPCONFIG 是看当前IP地址信息的命令

第4楼 3742668 发表于 2006-10-01 11:36
荣誉版主 发帖 718 积分 2,013
1.WMIC

在命令行中输入应该就可以看到PPP拨号的IP了。
2.netsh

一般来说,netsh显示IP会把PPP拨号的IP显示在前,所以show ip 1应该能够实现目的,同样的,如果用show ip 2则会显示网卡的IP。(若有哪位的IP排列和我的相反请吱一声,我这没条件测试。)
3.ipconfig

和netsh相反,ipconfig在显示IP的时候会把网卡IP显示在前面,所以只要获得后面的IP就可以得到我们需要的IP。
第5楼 electronixtar 发表于 2006-10-01 11:40
铂金会员 发帖 2,672 积分 7,493
%appdata%\Microsoft\Network\Connections\Pbk\rasphone.pbk
%systemroot%\System32\Ras
这两个文件夹里有很关键的文件,可以用for来分析
第6楼 Macadd 发表于 2006-10-02 10:50
高级用户 发帖 168 积分 638
谢谢3742668 版主

不过

wmic nicconfig where Description="WAN (PPP/SLIP) Interface" get ipaddress
'wmic' 不是内部或外部命令,也不是可运行的程序或批处理文件。

netsh diag show ip 1
下列命令没有找到: diag show ip 1。

在登录时选择拨号连接时ipconfig在显示IP的时候会把 PPP拨号连接的 IP显示在前面

请指教!!


namejm 版主 介绍的帖子都看过,帮助不大。
第7楼 pengfei 发表于 2006-10-02 10:55
银牌会员 发帖 485 积分 1,218 来自 湖南.娄底
楼主把ipconfig的显示贴出来看看.
第8楼 3742668 发表于 2006-10-02 11:09
荣誉版主 发帖 718 积分 2,013
莫非你装的是home版的XP?home版的XP是没有WMI组件的,也就没有WMIC了,或许netsh命令的执行不成功也与它有关。
我的测试环境为专业版 SP2,请说明你的系统环境。
第9楼 Macadd 发表于 2006-10-03 09:06
高级用户 发帖 168 积分 638
谢谢了,我用其他办法吧
第10楼 jastyg 发表于 2006-10-07 03:18
中级用户 发帖 82 积分 219
我的环境:3片网卡,2个PPPOE连接,也就是5个连接,上次给朋友做ADSL双线(网通,电信同时上网)的部分脚本:
@echo off
ipconfig/all >>iptable.txt
for /f "skip=48 tokens=2 delims=:" %%i in (iptable.txt) do echo %%i >>2.txt
set /p ip=<2.txt
echo %ip%
pause
del *.txt >nul

如果你要用的话要根据你的实际情况改一下就可以的,你只需要把skip=48,这个数值改为你需要IP在iptable.txt里的行数就可以了。

[ Last edited by jastyg on 2006-10-7 at 03:21 ]
第11楼 amtf15 发表于 2008-10-15 20:35
初级用户 发帖 17 积分 26
路过,学习了
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023