如何查看局域网里面没有被占用的空闲IP

来源:互联网 发布:mac写java web 编辑:程序博客网 时间:2024/04/29 22:59

在局域网内如何查看空闲的没有被占用的ip
局域网内的电脑比较多,50--160台,有时候其他人的电脑上不去网,原因是他的电脑是后开机的,他的ip被别人占用了
 
方法1:
直接在CMD命令行窗口调用以下命令:
for /l %a in (2,1,224) do (ping -n 1 -l 1 172.19.72.%%a|find "Reply from">nul 2>nul&&echo 172.19.72.%%a)
 
方法2:
编写bat脚本:
::code by youxi
@echo off &setlocal enabledelayedexpansion
title 局域网空闲IP查询
Rem '/*========获取本机的IP地址(局域网)=========*/
echo 正在获取本机的IP地址,请稍等...
for /f "tokens=3 skip=2 delims=: " %%i in ('nbtstat -n') do (
set "IP_addr=%%i"
set IP_addr=!IP_addr:~1,-1!
echo 本机IP为:!IP_addr!
goto :next
)
:next
for /f "delims=. tokens=1,2,3,4" %%i in ("%IP_addr%") do set IP_fd=%%i.%%j.%%k
Rem '/*========获取计算机名============*/
echo.&echo 正在获取局域网内计算机名,请稍等...
echo 处于网段 %IP_fd%.* 的计算机有:&echo.
for /f "delims=" %%i in ('net view') do (
set "var=%%i"
rem ----------获取计算机名称------------
if "!var:~0,2!"=="\\" (
set "var=!var:~2!"
echo !var!
Rem ----------ping计算机名--------------
ping -n 1 !var!>nul
)
)
echo.&echo -----------------------------
Rem '/*========提取arp缓存=========*/
echo.&echo 正在获取局域网内计算机IP,请稍等...& echo.
for /f "skip=3 tokens=1,* delims= " %%i in ('arp -a') do echo IP: %%i 已经使用
echo.&echo -----------------------------
echo 程序完成,谢谢使用!
pause>nul
0 0