windows下如何查看本机所在局域网内所有可以访问的IP

胡说八道

局域网内一个网段,共有155个IP地址。比如局域网的网关是192.168.0.1,那么这个网段的所有IP就是192.168.0.100到192.168.0.254,共有155个IP地址。

windows下如何查看本机所在局域网内所有可以访问的IP

我们如何知道一个ip是否可以访问呢?当然是ping啊。但是,在不知道对方主机的IP的情况下,255个地址一个个试,相信你一定会敲到手抖的。那么接下来,我就简单的介绍几种方法,我们来一个个地看吧,总有一种是你能看对眼的

方法一:

第一步:点击电脑左下角的“开始”,然后再点击“运行…”。
第二步:在运行窗口里填入“cmd”,然后点击确定。
前面这两步当然也有程序员专用打开方式-------直接【win】+【r】,运行框里输入“cmd”,霸气地敲下回车即可
在这里插入图片描述
第三步:在cmd命令窗口输入“ipconfig/ALL”命令,回车。
第四步:这时会在cmd命令窗口看见自己电脑的IP地址,记下自己的IP,这一步主要是确定自己所在局域网的网段。比如我的,就是192.168.1这个网段的

第五步:这时候在cmd命令窗口输入“for /L %i IN (1,1,254) DO ping -w 2 -n 1 192.168.1.%i”,点击键盘上的回车键(注意:我这里的192.168.0.*是根据自己电脑的ip网段来填写的)。
第六步:等待几分钟命令处理完成,然后在cmd命令窗口输入“arp -a”,回车
第七步:这时候就可以看见局域网内正在使用的电脑的IP地址和物理地址了。
在这里插入图片描述

方法二:

同样【win】+【r】,然后cmd回车,输入下面代码回车

for /L %i in (1,1,255) do ping -n 1 -w 60 192.168.1.%i | find "回复" >>d:\pingall.txt

然后去d盘根目录下找到pingall.txt,打开即可看到可以ping通的IP
在这里插入图片描述

下面详细解释上面的这条命令:
用到了for、ping和find命令,并且把运行的结果输出到文本。
for命令的详细说明

C:\Users\Administrator>for /?
对一组文件中的每一个文件执行某个特定命令。

FOR %variable IN (set) DO command [command-parameters]

  %variable  指定一个单一字母可替换的参数。
  (set)      指定一个或一组文件。可以使用通配符。
  command    指定对每个文件执行的命令。
  command-parameters
             为特定命令指定参数或命令行开关。

在批处理程序中使用 FOR 命令时,指定变量请使用 %%variable
而不要用 %variable。变量名称是区分大小写的,所以 %i 不同于 %I.

如果启用命令扩展,则会支持下列 FOR 命令的其他格式:

FOR /D %variable IN (set) DO command [command-parameters]

    如果集中包含通配符,则指定与目录名匹配,而不与文件名匹配。

FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters]

    检查以 [drive:]path 为根的目录树,指向每个目录中的 FOR 语句。
    如果在 /R 后没有指定目录规范,则使用当前目录。如果集仅为一个单点(.)字符,
    则枚举该目录树。

FOR /L %variable IN (start,step,end) DO command [command-parameters]

    该集表示以增量形式从开始到结束的一个数字序列。因此,(1,1,5)将产生序列

ping命令
参数-n 1,表示只发送一个数据包 -w 60 参数表示超时时间60ms

C:\Users\Administrator>ping /?

用法: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
            [-r count] [-s count] [[-j host-list] | [-k host-list]]
            [-w timeout] [-R] [-S srcaddr] [-c compartment] [-p]
            [-4] [-6] target_name

选项:
    -t             Ping 指定的主机,直到停止。
                   若要查看统计信息并继续操作,请键入 Ctrl+Break;
                   若要停止,请键入 Ctrl+C。
    -a             将地址解析为主机名。
    -n count       要发送的回显请求数。
    -l size        发送缓冲区大小。
    -f             在数据包中设置“不分段”标记(仅适用于 IPv4)。
    -i TTL         生存时间。
    -v TOS         服务类型(仅适用于 IPv4。该设置已被弃用,
                   对 IP 标头中的服务类型字段没有任何
                   影响)。
    -r count       记录计数跃点的路由(仅适用于 IPv4)。
    -s count       计数跃点的时间戳(仅适用于 IPv4)。
    -j host-list   与主机列表一起使用的松散源路由(仅适用于 IPv4)。
    -k host-list    与主机列表一起使用的严格源路由(仅适用于 IPv4)。
    -w timeout     等待每次回复的超时时间(毫秒)。
    -R             同样使用路由标头测试反向路由(仅适用于 IPv6)。
                   根据 RFC 5095,已弃用此路由标头。
                   如果使用此标头,某些系统可能丢弃
                   回显请求。
    -S srcaddr     要使用的源地址。
    -c compartment 路由隔离舱标识符。
    -p             Ping Hyper-V 网络虚拟化提供程序地址。
    -4             强制使用 IPv4。
    -6             强制使用 IPv6。

find命令:
刚刚那条语句里find指令搜索的范围是ping产生的文本。利用find搜索含有“回复”这两个字的字符串,并把搜索结果显示出来,然后通过“>>”命令追加到pingall.txt文件里

方法三:

桌面新建文本文档,复制以下内容粘贴进去

@echo off
echo **********************************我是分割线**********************************
echo 要输入的文本内容如下:
echo 执行中,请稍后...
echo ping日期:%date% > pingall.txt
echo ping时间:%time% >> pingall.txt
echo.>>pingall.txt
echo 具体数据:>>pingall.txt
@echo on
for /L %i in (1,1,255) do ping -n 1 -w 60 192.168.1.%i | find "回复" >> pingall.txt
%for /L %i in (1,1,255) do  echo %~i%
@echo off
echo -------------------------------------------------------------------------------
echo ----------------------------------------------------------->> pingall.txt
@echo on
echo 执行结束,请双击打开pingall.txt查看。

echo **********************************我是分割线**********************************
pause
pause

文件另存为,格式选bat,名称随意
然后双击运行,桌面会生成一个pingall.txt,打开即可看到可以ping通的IP

查看同一个局域网内电脑IP的方法

按组合键(win+R)打开运行窗口,接着输入“cmd”,回车确认
输入“net view”,回车确认即可看到局域网中所有正在运行的电脑
在这里插入图片描述
接着继续输入“ping 计算机名称”,比如要找的是“DESKTOP-QC31LIJ”的IP,然后按回车键确认即可查看到这台电脑的IP地址了,不过这是ipv6地址
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Running_free/article/details/107687196