找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 26089|回复: 8

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

[复制链接]
发表于 2016-11-9 00:37:54 | 显示全部楼层 |阅读模式
搜了一下 没有发现完美的批处理

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

简单的来说就是 通过访问 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
复制代码
发表于 2016-11-9 04:24:23 | 显示全部楼层
  1. tracert www.baidu.com
复制代码
发表于 2016-11-9 08:59:14 | 显示全部楼层
回复 1# zll855


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

这表示啥意思呢?
发表于 2016-11-10 09:27:07 | 显示全部楼层
在我大天朝,绝大部分电脑是没有公网IP的。
 楼主| 发表于 2016-11-10 15:49:45 | 显示全部楼层
回复 4# GNU


    我就是外网
 楼主| 发表于 2016-11-10 15:50:19 | 显示全部楼层
回复 3# ygqiang


    说明你是内网呗
发表于 2016-11-14 21:48:43 | 显示全部楼层
0.0.0.0
内外
请按任意键继续. . .

我乐了
 楼主| 发表于 2016-11-17 01:23:34 | 显示全部楼层
0.0.0.0
内外
请按任意键继续. . .

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


这个我也是醉了
发表于 2016-11-17 09:05:54 | 显示全部楼层
"完美"我也醉了

评分

参与人数 1技术 +1 收起 理由
codegay + 1 1

查看全部评分

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

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 12:43 , Processed in 0.018903 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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