[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络连接] 批处理完美判断内网外网+思路

搜了一下 没有发现完美的批处理

现在有一个 思路 可以完美的判断 自己是否属于内网 还是外网

简单的来说就是 通过访问 ip查询网站 读取ip数值再通过命令 “ipconfig /all”进行对比

如果发现通过ip查询网站获得的ip和自己的 通过命令获得的ip相匹配 那就可以确认 自己绝对是外网

不知道坛子里的朋友是否 还有其他更好的 思路和方法

我能想到的只有这个了

获得ip信息的网站 比较好用的有  http://pv.sohu.com/cityjson http://whois.pconline.com.cn/

在做对比的时候 可以只对比 a.b.c 部分 因为有些查询外网ip d段可能会有变动

比如 通过本命令查询的外网ip是123.123.123.123

但是通过网站获得的ip 也许会是 123.123.123.111

还有要考虑到多个外网ip的情况

只要一组ip 对比正确 就可以判断为外网

第一个版本 此版本问题是系统必须支持wmic命令
  1. @echo off
  2. >Getip.vbs echo Set oDOM=WScript.GetObject("http://pv.sohu.com/cityjson"):Do Until oDOM.readyState="complete":WScript.sleep 200:Loop:WScript.echo oDOM.documentElement.outerText:Set oDOM=nothing
  3. for /f "tokens=1 delims=[]" %%i in ('"cscript //nologo Getip.vbs"') do echo %%i>ip.txt
  4. for /f "tokens=2 delims={,}" %%i in ('wmic nicconfig get ipaddress /value') do set IP=%%~i
  5. echo %IP%
  6. type ip.txt | findstr /i "%ip%" >nul
  7. if %errorlevel%==0 ( echo 外网 &pause ) else (
  8. echo 内外 &pause
  9. )
  10. pause
复制代码

  1. tracert www.baidu.com
复制代码

TOP

回复 1# zll855


    xp系统,运行后显示:
192.168.1.2
内外

这表示啥意思呢?

TOP

在我大天朝,绝大部分电脑是没有公网IP的。

TOP

回复 4# GNU


    我就是外网

TOP

回复 3# ygqiang


    说明你是内网呗

TOP

0.0.0.0
内外
请按任意键继续. . .

我乐了

TOP

0.0.0.0
内外
请按任意键继续. . .

我乐了
ShenMian 发表于 2016-11-14 21:48


这个我也是醉了

TOP

"完美"我也醉了
1

评分人数

TOP

返回列表