内网IP自动获取

在寝室上内网真的是很闹心呀~稍微迟点开机,IP 地址就被别人抢去了。昨晚九点放学后,一直等到十点半才连上,实在忍无可忍了!

IP 被抢后解决方法无非就是找一个没被占用的地址,但手工去测试 256 个地址太折磨人了,早些时候我们班的两个同学就分别用 Java 和 C# 来实现过类似的小工具。但解决这样的小问题有点杀鸡用牛刀的感觉,不符合我的性格^_^,我当然还是用批处理来解决。

批处理中核心的两条语句就是:

设置静态IP地址
netsh int ip set address "本地连接" static IP地址 子网掩码 网关 1
设置域名解析器
netsh int ip set dns "本地连接" static 域名解析器地址 primary

程序使用时需要提供一个网关地址,为了方便大家使用,在 XP 和 Vista 系统能自动检测网关地址,如果正确的话直接敲一个回车就可以了。下面是批处理的代码,大家只要将下面的代码复制到记事本里,另存为 sip.bat,双击即可运行。

:: 自动查找可用 IP
:: 适用于浙江工商大学
:: by redraiment
@echo off
setlocal enabledelayedexpansion

if NOT "%1"=="" goto scan

:: 检测可识别的系统版本
:: XP
ver | find "[版本 5"
if NOT ERRORLEVEL 1 (
  set SV=XP
  set CG='"ipconfig|find /I "gate""'
  set TS=13
)

:: VISTA
ver | find "[版本 6"
if NOT ERRORLEVEL 1 (
  set SV=VISTA
  set CG='"ipconfig|find /V "::"|find "网关""'
  set TS=15
)

if NOT "%SV%"=="" (for /F "tokens=%TS%" %%i in (%CG%) do set g=%%i)
echo 您的网关可能是:!g!
set /P gateway=如果不正确请重新输入,否则输入回车:
if "!gateway!"=="" set gateway=!g!
echo %0 !gateway!
pause
exit

:scan
for /l %%d in (2,1,253) do (
  echo 正在验证 %~n1.%%d 是否被占用 ...
  ping -w 10 -n 1 %~n1.%%d | find /I "TTL"
  if ERRORLEVEL 1 (
    echo 设置本地IP ...
    netsh int ip set address "本地连接" static %~n1.%%d 255.255.255.0 %1 1

    echo 测试连接网关 ...
    ping -w 10 -n 1 %1 | find /I "TTL"
    if NOT ERRORLEVEL 1 (
      echo 恭喜,%~n1.%%d 可用!
      echo 设置域名解析器 ...
      netsh int ip set dns "本地连接" static 210.33.88.1 primary
      exit
    )
  )
)

下面是在 XP 环境下运行的效果图,它将本地 IP 设置成 10.230.71.6:

更高效的方法请参见新一篇《内网IP自动获取V2》


版权声明

请尊重原创作品。转载请保持文章完整性,并以超链接形式注明原始作者“redraiment”和主站点地址,方便其他朋友提问和指正。

联系方式

我的邮箱,欢迎来信(redraiment@gmail.com)
我的Blogger(子清行):http://redraiment.blogspot.com/
我的Google Sites(子清行):https://sites.google.com/site/redraiment
我的CSDN博客(梦婷轩):http://blog.csdn.net/redraiment
我的百度空间(梦婷轩):http://hi.baidu.com/redraiment

时间: 2024-10-24 06:38:15

内网IP自动获取的相关文章

内网IP自动获取V2

为解决上内网问题,我需要找一个 DHCP 未分配的 IP 地址来使用,在<内网IP自动获取>一文中的批处理能成功实现自动搜索.原理是逐个尝试地址是否可用,测试方法就是将本地地址设置成指定的静态 IP,然后去 ping 网关,直到找到一个成功的地址.但这种方法有些美中不足: 通过 netsh 设置本地静态 IP 比较耗时间: 如果 IP 已经被分配就会弹出一个消息框需要手工确认,因此并不算真正的自动化. 在前一篇评论里也有朋友在问,能 ping 通的主机就是在线主机,这样只要搜索不能 ping

JS绕过代理、VPN获取真实IP及内网IP,逆向追踪的实现方法_javascript技巧

Firefox 跟 Chrome支持WebRTC可以向STUN服务器请求,返回内外网IP,不同于XMLHttpRequest请求,STUN请求开发者工具当中看不到网络请求的. //get the IP addresses associated with an account function getIPs(callback) { var ip_dups = {}; //compatibility for firefox and chrome var RTCPeerConnection = win

透过F5获取服务器真实内网IP

前言 渗透测试过程中,经常会遇到目标服务器使用F5 LTM做负载均衡. 如果能获取到目标服务器的真实IP地址,会给后续渗透带来一定便利. 本文既是最近渗透遇到的一点点经验分享. F5修改cookie机制 F5 LTM做负载均衡时,有多种机制实现会话保持. 其中用到很多的一种是通过修改cookie来实现的. 具体说来,F5在获取到客户端第一次请求时,会使用set cookie头,给客户端埋入一个特定的cookie. 比如: Set-Cookie: BIGipServerpool_8.29_8030

获取虚机内网ip

问题描述 一个机器多个虚机共用一个外网ip,用java想单独去某个机器的内网ip,但是取出来的是一样的外网ip,求解!! 解决方案

外网访问内网-端口映射,内网ip映射

问题描述 端口映射,内网ip映射 广域网访问局域网的服务器最便捷的办法,除了用花生壳外,还有什么办法? 如果用路由器设置,什么品牌的可以? 解决方案 一般的路由器都有这样的设置的把, 把内网某个内网ip映射到指定的端口 解决方案二: 首先纠正你一点,外网访问内网,花生壳根本办不到.花生壳是ddns,仅仅解决了一个动态ip的自动维护它的dns指向的功能. 外网访问内网的前提是,你的内网通过路由器连接到公网上,这个公网有公网ip,你对路由器有控制能力.你只要做端口映射就可以访问到了.任何品牌基本都可

如何判断自己IP是内网IP还是外网IP

  tcp/ip协议中,专门保留了三个IP地址区域作为私有地址,其地址范围如下: 10.0.0.0/8:10.0.0.0-10.255.255.255  172.16.0.0/12:172.16.0.0-172.31.255.255  192.168.0.0/16:192.168.0.0-192.168.255.255 使用保留地址的网络只能在内部进行通信,而不能与其他网络互连.如果要与外部通信,那么必须通过网关与外部通信,这里使用了NAT, NAPT技术就是用来保证通信的代理机制.      

如何更改本机内网ip地址

问题描述 如何更改本机内网ip地址 这个问题有点弱...如何更改本机内网ip地址,如将ip改为10.0.3.3,访问ip10.0.3.3的共享等同于访问127.0.0.1的共享,要在没有网络(有网卡)的情况下实现(只要本机能用就行)windows8.1系统 解决方案 windows xp和windows 7不太相同 大致你在控制面板-网络分类下找找,适配器里面,点协议,tcp/ip的属性,里面默认是自动分配,修改为你的ip即可. 如果你不愿修改ip造成本机没法上网,也可以开一个虚拟机,在里面设置

bat脚本显示本机IP地址的两种方法(内网ip)_DOS/BAT

实现代码一: 通过 route print 实现 @echo off for /f "tokens=4" %%a in ('route print^|findstr 0.0.0.0.*0.0.0.0') do ( set IP=%%a ) echo %IP% 实现代码二: @echo off for /f "tokens=15" %%i in ('ipconfig ^| find /i "ip address"') do (echo %%i) p

ipconfig-外网怎样访问内网IP上的端口

问题描述 外网怎样访问内网IP上的端口 家里电脑IP地址115.175.233.xx 命令行输入ipconfig看到: 无线局域网适配器 -> IPv4地址是192.168.1.102,子网掩码是255.255.255.0,默认网关192.168.1.1 以太网适配器 -> IPv4地址是192.168.231.1,掩码一样 我用本地端口55321开了个服务器,怎样可以通过外网访问? telnet 155.175.233.xx 55321 连不上.怎样把NAT映射到本机 解决方案 ISP做了N