在局域网环境中,网管经常需要查看所有主机名及IP地址,可每一台查不仅浪费时间,而且容易搞错,今天笔者同大家分享如何一键查看局域网内IP地址及主机名,希望对您管理局域网有所帮助。
将以下代码另存为.bat格式文件,具体保存方法,先新建一个txt文档,然后点击另存为,名称可任意指定,后缀名改为.bat即可。
如果您觉得太过麻烦,可直接下载本文档:
一键查看所有主机及IP |
COLOR 0A
CLS
@ECHO Off
Title 查询局域网内在线电脑IP
:send
@ECHO off&setlocal enabledelayedexpansion
@echo off
for /f "tokens=15" %%i in ('ipconfig /all ^| find /i "IP Address"') do set ip=%%i
for /f "tokens=15" %%i in ('ipconfig /all ^| find /i "Subnet Mask"') do set mask=%%i
for /f "tokens=15" %%i in ('ipconfig /all ^| find /i "DNS Servers"') do set dns=%%i
echo 本机IP为:%ip%
echo 本机子网掩码为:%mask%
echo 本机DNS为:%dns%
pauseECHO 正在获取本机的IP地址,请稍等...
for /f "tokens=3 skip=2 delims=: " %%i in ('nbtstat -n') do (
set "IP=%%i"
set IP=!IP:~1,-1!
ECHO 本机IP为:!IP!
goto :next
):next
for /f "delims=. tokens=1,2,3,4" %%i in ("%IP%") do set range=%%i.%%j.%%k
ECHO.&ECHO 正在获取本网段内的其它在线计算机名,请稍等...
ECHO 本网段【%range%.*】内的计算机有:
for /f "delims=" %%i in ('net view') do (
set "var=%%i"
::查询在线计算机名称
if "!var:~0,2!"=="\\" (
set "var=!var:~2!"
ECHO !var!
ping -n 1 !var!>nul
))
ECHO.
ECHO 正在获取本网段内的其它在线计算机IP,请稍等...
for /f "skip=3 tokens=1,* delims= " %%i in ('arp -a') do ECHO IP: %%i 正在使用ECHO.
运行结果:
ECHO 查询完毕,按任意键退出...
pause>nul
本机IP为:192.168.1.254
本机子网掩码为:255.255.0.0
本机DNS为:8.8.8.8
请按任意键继续. . .
正在获取本机的IP地址,请稍等...
本机IP为:192.168.1.254正在获取本网段内的其它在线计算机名,请稍等...
本网段【10.10.1 .*】内的计算机有:
0I3TE1495ZG1L9X
0SXP-02281752
1-3A95A379AED14
1-PC
185ED54E5FE2456
20091223-1144
20101118-0829
20111031-0816
20111230-0957
2012-0424-1039
本文地址:http://www.45fan.com/a/question/1276.html