我需要从文件中读取IP地址和子网掩码,并以状态显示所有适当的ip地址。此命令可以显示地址列表:
New-Object System.Net.Networkinformation.Ping.send("ip.$_")但它只需要IP地址。如何制作也能使用口罩?
文件示例:
192.168.0.10
255.255.255.0发布于 2015-12-20 13:52:35
Warren写了这个伟大的实用程序,是根据Shay和Boe的工作编写的,名为调用-Ping。您可以提供如下一组IP地址:
Invoke-Ping -ComputerName 192.186.0.1,192.168.0.2马克·戈萨编写了一个实用程序来计算给定子网掩码的有效IP,使用以下语法:
Get-IPs -Subnets "10.0.2.0/24","10.0.4.0/24" 如果我们把两者结合起来..。
invoke-ping -ComputerName (get-ips -Subnets "192.168.0.10/24") 这将返回该范围内所有计算机的可单击状态。这对你来说应该是个很好的起跳点。而且,Warren已经完成了在一系列IP上传播ping的工作,这意味着您可以在大约10秒的时间内将1000台PC进行ping。
如果将-Quiet添加到Invoke-Ping中,则会得到运行时有效(在线) it的列表。
192.168.0.1
192.168.0.11
192.168.0.12
192.168.0.13
192.168.0.15
192.168.0.16
192.168.0.18
192.168.0.21
192.168.0.22
192.168.0.9看上去是这样的:

发布于 2017-05-23 11:26:36
请尝试这个脚本,它可以用来平多个主机,你会得到每个主机的状态。
根据您的要求更改脚本中的IP地址范围。
$ping =新对象System.Net.Networkinformation.Ping 1.254\x%{ $ping.send("192.168.100.$_") \x选择地址,状态}
发布于 2015-12-20 07:25:32
由于ping协议的限制,您不能在单个ping请求中ping地址范围。
为了实现您想要的结果,您需要将范围转换为IP地址列表,并逐个(可能并行)对它们进行平分。
https://stackoverflow.com/questions/34378793
复制相似问题