返回
PowerPing V2022 免费版

PowerPing

立即下载

小编提示:PC版不适合移动端,如下载有问题点击反馈!

软件介绍

PowerPing是一款专业的ICMP ping软件。编程人员必备的ping工具PowerPing。它可以替代所有Windows版本中包含的著名ping程序;主要优点是用户可以在ping中使用相同的功能,以及使用其他软件可能需要的一些其他功能,支持您的工作流自动化,并管理相同的代码位置在所需的位置构建,测试,部署和运行CI / CD从任何ping事件到任何可用的API触发操作,您都可以使用管理员选择的语言来构建自己的操作,也可以使用社区创建的数千个工作流来选择操作和操作;该程序具有自己的ICMP实现,并发送自定义的ICMP / Ping数据包。要发送这些自定义数据包,只需要使用Raw套接字并创建Raw套接字即可;需要它的用户可以下载体验PS:要运行此程序,您将需要以管理员身份运行它,并使用其他命令格式,例如--help而不是-help;。

新的功能:

新的和改进的图形模式(更好的超时显示效果,图形轴的自动缩放,更清晰的条形图)

重做无输入(/ ni或/ noinput)并添加所需的输入(/ ri或/ requireinput)

这些命令的功能仍然与noinput相同。

在命令中使用“命令”将意味着命令完成后不需要输入。

更改之后,这些命令现在将保留在PowerPing中。

因此,如果您一次使用noinput,即使您不包括/ noinput,下次运行PowerPing时也不会提示您输入。

这也适用于/ requireinput,这仍然是PowerPing的默认行为

添加了完整时间戳参数(/ fts或/ fulltimestamp)

与--timestamp相似,但是在/ fulltimestamp和/ timestamp命令中添加了完整的本地时间和日期,并添加了'utc'选项

为了使用/ timestamp utc或/ fulltimestamp utc)在UTC中显示任何时间戳

在--version和`--help``命令中添加了版本检查

为--symbols命令添加了替代主题(使用/ sym 0或1选择替代主题)

在--listen命令中添加了侦听特定地址的选项(使用/ listen 127.0.0.1指定地址)

如果未指定地址,默认情况下/ listen命令现在将侦听所有本地适配器地址

向原始套接字创建错误消息添加了更多信息

改进了地址查找和参数解析,改进了构建和测试过程

软件特色:

该程序为用户提供了基本的ping功能

支持颜色输出,程序使用几种颜色

提供显示选项,自定义检索的信息)

ICMP数据包定制,支持扫描

泛洪,向该地址发送大量ping命令

ICMP数据包捕获(/监视器)

支持IP位置查询,Whois查询,绘图

使用说明:

可以在ICMP.cs中找到此ICMP实现。在运行时,我们打开一个原始套接字,并通过该套接字以字节为单位发送ICMP数据包。

PowerPing

原始套接字使我们能够发送具有必需的ICMP或IP属性的自定义Ping数据包。

PowerPing

为什么原始套接字需要管理权限

在Windows上,由于Windows XP中的安全问题,Microsoft限制了对Raw套接字的访问,此后,要求用户具有创建它们的管理权限:

原始套接字提供了操作基本传输的功能,因此它们可用于构成安全威胁的恶意目的。因此,只有Administrators组的成员才能在Windows 2000及更高版本上创建SOCK_RAW类型的套接字。 (来自Microsoft Docs)

PowerPing

为什么不使用TCP或UDP

ICMP是OSI模型的网络层中存在的协议,它不设计为与诸如TCP和UDP(在上层)的传输层协议一起使用。相反,它被设计为用作其自己的协议并在IP数据包内传输。

尽管可以在没有管理权限的情况下创建TCP和UDP套接字,但实际情况并非如此,它们不能也不能用于传输ICMP数据包(有关更多信息,请参见下文)。

PowerPing

为什么不在.NET中使用Ping类

.NET 4.8和.NET Core中的Ping类都使用iphlpapi.dll发送ICMP数据包。它们为库提供了安全的包装,并且不需要管理权限即可发送ping。

不幸的是,实际的界面不能真正满足我们的需求,不能满足我们想要的定制级别。我们无法执行以下操作:

更改并读取ICMP类型

更改并读取ICMP消息字段的内容

读取并处理数据包的校验和

人为地增加ICMP消息的大小

PowerPing

自定义超时

更改IP数据包的配置(例如TTL和“请勿分段”标头)

交易时

鉴于iphlpapi.dll库周围的所有封送和安全措施,快速发送大量ICMP数据包(如我们处于“泛洪”模式)的性能开销非常严重。

可能的解决方案

我认为某些ping工具使用UDP发送ping数据包,我们可以尝试实现类似的方法,但是我尚未对这项工作的可能性进行过多研究。

我们可以使用iphlpapi.dll库(例如.NET Core和.NET Framework)来发送ICMP数据包,而不是RawSockets。 我们可以抽象套接字实现,以允许我们使用RawSockets或本机库发送代码(此选项似乎可行,尽管需要大量工作)

我希望这可以帮助您理解PowerPing为什么需要管理员权限。 我知道这有点不方便,但是就目前而言,原始套接字(和管理权限)使我们能够从最早的版本获得PowerPing的功能,可定制性和性能。

精品推荐
猜你喜欢
用户评论