简介
Wireshark 是一款非常棒的Unix和Windows上的开源网络协议分析器。它可以实时检测网络通讯数据,也可以检测其抓取的网络通讯数据快照文件。可以通过图形界面浏览这些数据,可以查看网络通讯数据包中每一层的详细内容。Wireshark拥有许多强大的特性:包含有强显示过滤器语言(rich display filter language)和查看TCP会话重构流的能力;它更支持上百种协议和媒体类型; 拥有一个类似tcpdump(一个Linux下的网络协议分析工具)的名为tethereal的的命令行版本。Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包, 并尽可能显示出最为详细的网络封包资料。网络封包分析软件的功能可想像成 "电工技师使用电表来量测电流、电压、电阻" 的工作 - 只是将场景移植到网络上,并将电线替换成网络线。
在过去,网络封包分析软件是非常昂贵,或是专门属于营利用的软件。Ethereal的出现改变了这一切。在GNU GPL通用许可证的保障范围底下,使用者可以以免费的代价取得软件与其程式码,并拥有针对其原始码修改及客制化的权利。Ethereal是目前全世界最广泛的网络封包分析软件之一
更新日志
新功能和更新功能以下功能是新的或自版本4.2.0以来已显着更新:
Windows安装程序现在随Npcap1.79一起提供。它们以前随Npcap1.78一起提供。
“I/O图表”对话框的改进:
修复了许多不速之客错误。
协议树上下文菜单可以打开当前的I/O图 选定字段。问题11362
可以使用更小的间隔,低至1微秒。问题13682
可以使用更多的I/O Graph项目存储桶,最多225(3300万) 项目。问题8460
单个图形项的大小已经减小,从而降低了内存利用率。
当Y字段或Y轴发生变化时,图形会正确显示新图形,必要时会重拍,而不是显示基于陈旧数据的信息。
图表在选择是否重拍(昂贵)方面更聪明, 重新计算(适度密集)或重新绘制(便宜)以便 以最少的数量正确显示新选择的选项 计算。例如,以前的图表 绘制并被禁用,然后在没有任何其他更改的情况下重新启用 不需要重新定位。第15822期
负载图再次正确绘制。问题18450
Y轴具有带有SI前缀的人类可读单元。 问题12827
条形宽度按间隔的大小进行缩放。
条形边框颜色比那个颜色稍微深一点 图形本身,而不是总是黑色。第17422期
当轴自动复位时,时间值具有正确的宽度。
提示消息中显示的间隔时间的精度取决于间隔。
跟踪器跟随图表表中当前选定的行,并且不会出现在不可见的图表上。
跟踪器移动到主窗口中选择的框架。 第12909期
当I/O图表对话框打开时更改配置文件时,将保存待处理的图形更改。
关闭捕获文件的I/O图形对话框窗口不再受到更改图形列表的影响(在该对话框中或在当前打开文件的其他对话框中)。
新创建的临时图,除非配置已更改,否则不会保存,用斜体标记更清楚。
当为图表选择“一天中的时间”时,绝对时间将是 保存到CSV导出而不是相对时间。问题13717
可以通过拖放列表条目来重新排序图形。问题13855
图层顺序和图例顺序始终匹配 图表列表中的顺序。图例也正确出现。第13854期
通过右键单击图例并从菜单中选择其新位置,可以将图例移动到图形的其他角落。
为了显示零值,同时具有线和数据点符号的图被视为线图,而不是散点图。
当Y轴是对数时,使用对数刻度。
图形十字准线上下文菜单选项有效。
您可以通过右键单击列表标题来根据其内容调整图形列表列的大小。 第18102期
该图对鼠标移动更敏感,尤其是在Linux韦兰。
序列图(流程图和VoIP通话)的改进:
将图形导出为图像时,会显示整个图形 多达1000个项目,而不仅仅是屏幕上可见的项目。 这个值可以在首选项中增加。问题13504
共享相同地址的端点现在有两个不同的节点 他们之间有一条线。第12038期
可以通过选择“注释”列之间的轴来调整“注释”列的大小 “注释”列和图形并拖动,并通过以下方式自动调整大小 双击该列。问题4972
工具提示显示为省略的注释。
通过键盘的滚动方向不再颠倒。问题12932
列宽是固定的,而不是根据需要稍微调整大小 在可见条目上。问题12931
Y轴标签保持在正确的位置,而无需单击重置按钮。
进度条正确显示在流图(非VoIP通话)中。
“任意”和“网络”组合框的行为已更正。 19818期
如果在打开流图时根据留档应用了显示过滤器,则选中“限制为显示过滤器”。
TCP流图:
对于哪一边是服务器以及图中最初选择的方向做出了更好的决定。
“窗口缩放”图形轴标签已更正并显示两个图形。
图形十字准线上下文菜单选项有效。
在相对序列号和绝对序列号之间切换再次工作。
“跟随流”对话框现在可以显示转弯和所有数据包和事件之间的增量时间。
许多使用QCustomPlot小部件的图形(“I/O图形”、“流图形”、“TCP流图形”和“RTP播放器”)对鼠标移动响应更快,尤其是在使用Wayland的Linux上。
“查找数据包”对话框可以向后搜索并查找单个帧中出现的字符串、十六进制值或正则表达式。
将“转到数据包”与未显示的帧一起使用时,窗口转到 按数字显示的最近帧。问题2988
显示过滤器语法增强:
更好地处理与值字符串的比较。现在显示过滤器引擎可以正确处理多个不同数值映射到相同值字符串的情况,包括但不限于范围类型的值字符串。
具有值字符串的字段现在支持正则表达式匹配。
日期和时间值现在支持算术,但有一些限制:乘数/除数必须是整数或浮点数,并出现在运算符的右侧。
关键字“bitand”可用作按位和运算符的替代语法。
单独的函数现在可以作为一个完整的逻辑表达式使用。表达式的结果是函数返回值的真实性(如果超过一个,则为所有值的真实性)。这很有用,例如写“len(某物)”而不是“len(某物)!=0”。更重要的是,如果一个函数返回一个布尔值,现在可以写“bool_test(某物. field)”,而不必写“bool_test(某物.field)==True”。这两种形式现在都有效。
显示过滤器引用可以在没有花括号的情况下编写。它 现在可以写入$frame.number而不是${frame.number}。
有新的显示过滤器功能可以测试各种IP地址属性。 检查 线阵滤波器(5) 更多信息的手册页。
有新的显示过滤器函数可以将无符号整数类型转换为 十进制或十六进制,并将带有值字符串的字段转换为 其值的关联字符串,可用于生成类似于 自定义列。检查 线阵滤波器(5) 更多信息的手册页。
显示过滤器宏可以在宏后面用分号写 参数列表前的名称,例如${mymacro;arg1;…;argN},而不是 的${mymacro:arg1;…;argN}。带分号的版本效果更好 编辑显示过滤器时带有弹出建议,所以版本 结肠可能会在未来被移除。
Display filter macros can be written using a function-like notation. The macro ${mymacro:arg1;…;argN} can be written $mymacro(arg1,…,argN).
AX.25地址现在使用“CALLSIGN-SSID”字符串语法进行过滤。 仍然可以根据原始字节值进行过滤,就像其他一样 字段类型,使用@运算符。问题17973
显示过滤器功能可以实现为libwireshark插件。插件已加载 在从通常的二进制插件配置目录启动期间。查看 ipaddr.c源文件中分发的一个显示过滤器示例C插件 和doc/plugins. example文件夹中的通用说明如何构建插件。
显示过滤器自动完成现在还包括显示过滤器功能。
显示过滤器宏配置文件已更改格式。它现在使用与“dfilter”文件相同的格式,并已相应地重命名为“d宏”。在内部,它不再使用UAT API,显示过滤器宏GUI对话框已更新。实现了一些基本的迁移逻辑,但建议检查配置文件目录中的“dfilter_macros”(旧)和“d宏”(新)文件是否一致。
可以使用任何有效的字段表达式定义自定义列:
显示过滤函数,如len(tcp.payload),包括嵌套函数 比如min(len(tcp.payload), len(udp.payload))和新定义的函数 使用上面提到的插件系统。问题15990 问题16181
算术计算,如ip.len * 8或tcp.srcport + tcp.dstport。 问题7752
切片,如tcp.payload[4:4]。问题10154
层运算符,如ip.proto#1,将返回 第一IPv4层,如果有隧道。问题18588
原始字节寻址,如@ip,它将返回协议的字节 或FT_NONE字段,等等。第19076期
逻辑测试,如tcp.port == 443,如果 测试匹配(类似于没有@的协议和FT_NONE字段。) 这适用于所有逻辑运算符,包括例如正则表达式 匹配(matches或~.)
定义的显示过滤器宏。
上述任何组合也有效。
多字段列仍然可用。为了向后兼容, X or Y像以前一样被解释为多字段列 存在多个字段而不是连接的逻辑测试 值,使用括号,例如(tcp.options.timestamp or tcp.options.nop)。
未实现字段引用,因为没有当前选定的帧。任何新表达式还不支持“已解决”列值(例如主机名解析或值字符串查找)。
自定义输出字段tshark -e <field>也可以定义使用任何 有效的字段表达式如上。
对于自定义输出字段,X or Y是通常的逻辑测试;输出 多个字段像以前一样使用多个-e术语。
各种-E选项,包括-E occurrence,都按预期工作。
从“捕获选项”中选择“管理接口”时,仅限Wireshark 尝试重新连接到在 最后一个会话,而不是当前配置文件曾经拥有的每个远程主机 连接到.17484期
“已解决的地址”对话框仅显示地址和端口 存在于文件中(不包括来自静态文件的信息),以及 可以将选定的行或整个表保存或复制到剪贴板 有几种格式。第16419期
当捕获文件时,Dumpcap和Wireshark支持-F选项 在命令行上。问题18009
当在命令行上捕获时,dupcap接受一个-Q选项,即 比-q更安静,只打印标准错误,类似于tshark。 问题14491
捕获文件并请求pcap格式时,纳秒分辨率 如果libpcap的设备和版本支持它,则会写入时间戳。
当使用文件大小自动停止或环形缓冲区条件捕获时,最大值现在为2 TB,高于2GiB。请注意,当数据包数量大于231或232时,您可能会遇到问题,尽管当没有设置限制时也是如此。
在多文件模式下捕获文件时,可以使用将日期和时间放在索引号之前的模式(例如,foo_20240714110102_00001. pcap而不是foo_00001_20240714110102.pcap)。这使得文件名可以在不同捕获的文件集中按时间顺序排序。“文件集”对话框已更新以处理新模式,该模式自3.6.0版以来一直能够由tShark生成。
在启动时添加界面的速度大约是原来的两倍,并且在安装Npcap时UAC弹出窗口要少得多,并且访问权限仅限于Windows上的管理员。
Windows和macOS安装程序中包含的Lua版本已更新至5.4。 虽然我们试图通过包含lua_bitop库来帮助向后兼容 Lua 5.3和5.4除了原生Lua支持位操作之外 在这些版本中,不同版本的Lua不能保证 兼容。如果Lua解剖器有问题,请查看手册 Lua 5.4, Lua 5.3,以及 Lua 5.2for 不兼容性和建议的解决方法。请注意,标记为 在一个版本中弃用的在后续版本中删除,而没有 额外通知,因此值得查看以前版本的手册。
插件目录中的Lua脚本现在最初是通过相同的 内部Lua方法作为require()。这避免了加载插件的错误 两次,一次通过最初扫描目录,一次通过require(), 并且还会导致插件中定义的全局变量进入全局命名空间。 以前在插件中定义的全局变量仅在以下情况下进入全局命名空间 放在全局插件目录中,但不放在个人插件目录中。 在插件中使用全局变量仍然是弃用的风格(由Wireshark和Lua 一般来说),这应该通过使用其他方法来避免。问题18589
Lua函数已被添加到解压缩和解码TvbRanges与除zlib之外的其他压缩类型,例如Brotli、Snappy、Zstd等,以匹配C API中的支持。tvbrange: uncompress()已被弃用,取而代之的是tvbrange:uncompress_zlib()。
Lua Dumper现在默认为pcapng文件类型和每个数据包 编写时的封装(根据需要按需创建接口) pcapng问题16403
EditCap有一个--extract-secrets选项来提取嵌入的解密 捕获文件中的秘密。第18197期
全局配置文件可以通过使用--global-profile选项在tshark中使用。
可以使用LZ4压缩保存捕获文件。LZ4强调速度,可能对大文件特别有用。
当使用独立块压缩时,LZ4压缩文件支持快速随机访问,这是默认设置。当跳转到不同的数据包时,这提供了更快的响应GUI性能。自版本1.8.0以来,gzip压缩文件支持快速随机访问,但Zstd压缩文件不支持这一点。
Mergecap、EditCap、TShark和Text2pcap有一个--compress选项来 将输出压缩为不同的格式。目前,它支持gzip 和LZ4压缩格式。当未给出选项时,所需的 压缩格式也可以从输出文件名中推断出来 扩展名,例如. gz的gzip。
Wireshark的Git存储标签现在使用SSH签名。 看 开发人员的指南 有关更多详细信息。
删除的功能和支持
不推荐使用没有参数的tshark-G选项,并将在 未来的版本。使用tshark -G fields生成相同的报告。
移除的解剖器
Parlay解剖器已被移除。
新协议支持
Allied Telesis弹性链路(AT RL)、ATN安全标签、位索引显式复制(BIER)、总线镜像协议、EGNOS消息服务器(EMS)文件格式、伽利略E1-B I/NAV导航消息、IBMi RDMA端点(iRDMA-EDP)、IWBEMSERVICES、MAC NR成帧(mac-nr-framed)、物质蓝牙传输协议(MatterBTP)、MiWi P2P Star、Monero、NMEA 0183、PLDM、RDP身份验证重定向虚拟通道协议(rdpear)、RF4CE网络层(RF4CE)、RF4CE配置文件(RF4CE配置文件)、RK512、SAP远程功能调用(SAPRFC)、SBAS L1导航消息、扫描仪访问立即轻松(SANE)、TREL、WMIO和ZeroMQ消息传输协议(ZMTP)
更新的协议支持
IPv6:现在默认启用“显示地址详细信息”首选项。提供的地址详细信息已扩展为包括更多专用地址块属性(可转发、可全局路由等)。
已经进行了太多其他协议更新,无法在此处全部列出。
新的和更新的捕获文件支持
EGNOS消息服务器(EMS)文件
新的和更新的捕获接口支持
u-blox GNSS接收器
主要API更改
整个代码库已更新为使用C99类型而不是GLib类型。 这包括在许多地方将出现的gboolean(一个整数)更改为C99的本机bool类型。 详见问题19116。
tvbuff API中的tvb_get_guintX和tvb_get_gintX函数已重命名为tvb_get_uintX和tvb_get_intX(GLib样式的“g”已被删除)。 您仍然可以使用旧式名称,但它们已被弃用。
插件应该提供一个返回ORed的plugin_describe()函数 由使用的插件类型组成的标志列表。
软件下载
来源:夸克网盘
【资源若失效或者不可用,请加梨子乐微信:bmhjj1】
免责声明:本站所有资源均收集自互联网,分享目的仅供学习参考,并不贩卖资源,资源版权归该资源的合法拥有者所有,请您在下载后24小时内删除。若本站发布的内容侵犯到您的合法权益,请立即联系1556679001@qq.com及时做删除处理!