![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 02:20 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 怎么样才能获取公网IP |
| 可打印版本 1,536 / 12 |
| 第1楼 radem | 发表于 2008-07-07 17:51 |
| 高级用户 发帖 383 积分 691 | |
|
怎么样才能获取公网IP 通过路由拨号上网,用ipconfig /all命令得不到公网IP,只得到“Windows IP Configuration”和“Ethernet adapter 本地连接”两大项;如果不通过路由,就可以得到ADSL公网IP了
通过路由时真的不能用ipconfig命令获取公网IP吗? |
|
| 第2楼 bat-zw | 发表于 2008-07-07 17:58 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
用tracert命令可以获得如:
tracert www.cn-dos.net |
|
| 第3楼 radem | 发表于 2008-07-07 19:26 |
| 高级用户 发帖 383 积分 691 | |
|
谢谢ZW兄
不过速度有点慢 加了2个参数好点: |
|
| 第4楼 pusofalse | 发表于 2008-07-07 22:59 |
| 银牌会员 发帖 646 积分 1,604 | |
|
tracert 的第一跳应该是网关的IP吧,不是本机的公网IP
|
|
| 第5楼 radem | 发表于 2008-07-08 02:07 |
| 高级用户 发帖 383 积分 691 | |
Originally posted by pusofalse at 2008-7-7 10:59 PM: 是啊~ tracert www.cn-dos.net 只是获取域名www.cn-dos.net的服务器IP 那我的这个问题还是没有解决 ![]() |
|
| 第6楼 pusofalse | 发表于 2008-07-08 08:53 |
| 银牌会员 发帖 646 积分 1,604 | |
|
强大的wmic 果真有对IP的管理。。
wmic nicconfig get ipaddress /value |
|
| 第7楼 HAT | 发表于 2008-07-08 09:10 |
| 版主 发帖 5,017 积分 9,023 | |
|
5楼 tracert只是获取域名www.cn-dos.net的服务器IP?是你没有等到tracert执行完毕吧:)
|
|
| 第8楼 radem | 发表于 2008-07-08 13:25 |
| 高级用户 发帖 383 积分 691 | |
Originally posted by HAT at 2008-7-8 09:10 AM: Tracing route to www.cn-dos.net 58.215.64.130不是我本机的公网IP,而是www.cn-dos.net的服务器IP啊? |
|
| 第9楼 HAT | 发表于 2008-07-08 14:19 |
| 版主 发帖 5,017 积分 9,023 | |
|
汗水,全都是timed out
|
|
| 第10楼 tvzml | 发表于 2008-07-08 23:42 |
| 初级用户 发帖 67 积分 157 | |
|
@echo off
echo On Error Resume next >checkip.vbs echo Url="http://www.ip138.com/ip2city.asp" >>checkip.vbs echo Set NP = Createobject("Microsoft.XMLHTTP") >>checkip.vbs echo NP.Open "GET", url, False >>checkip.vbs echo NP.Send >>checkip.vbs echo Data=NP.responsebody >>checkip.vbs echo Set NP = Nothing >>checkip.vbs echo Data = bytes2BSTR(Data) >>checkip.vbs echo Here = InstrRev(Data, "您的IP地址是:", -1,0) >>checkip.vbs echo Data = Mid(Data,Here+9,13) >>checkip.vbs echo Hers = InstrRev(data, "<",-1,0) >>checkip.vbs echo Set ICEhack = CreateObject("InternetExplorer.Application") >>checkip.vbs echo ICEhack.Navigate("about:blank") >>checkip.vbs echo If Hers ^<^> 0 Then >>checkip.vbs echo ICEhack.document.parentwindow.clipboardData.SetData "text", Mid(Data,1,Hers-1) >>checkip.vbs echo Set WshSHell = WScript.CreateObject("WScript.Shell") >>checkip.vbs echo Set FSO = CreateObject("Scripting.FileSystemObject") >>checkip.vbs echo Set SCF = FSO.OpenTextFile(FSO.BuildPath(FSO.GetSpecialFolder(0),"ip.txt"),2,True) >>checkip.vbs echo SCF.Write(Data) >>checkip.vbs echo SCF.Close >>checkip.vbs echo Else >>checkip.vbs echo ICEhack.document.parentwindow.clipboardData.SetData "text", Data >>checkip.vbs echo Set WshSHell = WScript.CreateObject("WScript.Shell") >>checkip.vbs echo Set FSO = CreateObject("Scripting.FileSystemObject") >>checkip.vbs echo Set SCF = FSO.OpenTextFile(FSO.BuildPath(FSO.GetSpecialFolder(0),"ip.txt"),2,True) >>checkip.vbs echo SCF.Write(Data) >>checkip.vbs echo SCF.Close >>checkip.vbs echo End If >>checkip.vbs echo ICEhack.Quit >>checkip.vbs echo fso.DeleteFile(WScript.ScriptName) >>checkip.vbs echo Function bytes2BSTR(vIn) >>checkip.vbs echo strReturn = "" >>checkip.vbs echo For i = 1 To LenB(vIn) >>checkip.vbs echo ThisCharCode = AscB(MidB(vIn,i,1)) >>checkip.vbs echo If ThisCharCode ^< ^&H80 Then >>checkip.vbs echo strReturn = strReturn ^& Chr(ThisCharCode) >>checkip.vbs echo Else >>checkip.vbs echo NextCharCode = AscB(MidB(vIn,i+1,1)) >>checkip.vbs echo strReturn = strReturn ^& Chr(CLng(ThisCharCode) * ^&H100 + CInt(NextCharCode)) >>checkip.vbs echo i = i + 1 >>checkip.vbs echo End If >>checkip.vbs echo Next >>checkip.vbs echo bytes2BSTR = strReturn >>checkip.vbs echo End Function >>checkip.vbs checkip.vbs set/p n=<%windir%\ip.txt&cls echo 外网IP:%n% pause>nul |
|
| 第11楼 radem | 发表于 2008-07-09 00:06 |
| 高级用户 发帖 383 积分 691 | |
|
谢谢十楼
那么复杂倒不如用第3方的wget |
|
| 第12楼 pusofalse | 发表于 2008-07-09 00:30 |
| 银牌会员 发帖 646 积分 1,604 | |
|
@echo off
wget www.ip138.com/ips.asp&cls for /f "tokens=3 delims=: " %%a in ('findstr "您的IP地址是" ips.asp') do echo 外网IP:%%a pause 本版应该有wget.exe 搜索下。。。 |
|
| 第13楼 HAT | 发表于 2008-07-09 01:14 |
| 版主 发帖 5,017 积分 9,023 | |
|
wget.exe
http://upload.cn-dos.net/img/575.zip |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |