1. 软件安装与验证
-
安装路径规范
- 按企业要求部署至指定目录:
xxxx/xxxx/xxxx/xxxx
- 验证安装完整性:
- 检查是否勾选
Install TShark
(默认已选) - 确认安装后生成
Wireshark.exe
和tshark.exe
可执行文件
- 检查是否勾选
- 按企业要求部署至指定目录:
-
权限配置
- 右键点击安装目录下的
tshark.exe
→ 属性 → 兼容性 → 勾选 以管理员身份运行此程序
- 右键点击安装目录下的
2. 环境变量配置(避免命令报错)
-
添加系统变量
- 打开
控制面板 → 系统 → 高级系统设置 → 环境变量
- 在 系统变量 的
Path
中添加 Wireshark 安装路径(如:C:\Program Files\Wireshark
) - 验证配置生效:
tshark -v # 显示版本信息则成功
- 打开
-
重启生效
- 修改环境变量后必须重启计算机,否则命令仍可能报错
3. 抓包操作流程
-
启动命令行
- Windows:右键以管理员身份运行CMD/PowerShell
- 验证权限:执行
net session >nul 2>&1
,无报错表示权限正确
-
右键以管理员权限运行抓包的脚本文件
- 脚本文件:
xxxx/xxxx/xxxx/xxxx/Wireshark/WireShark Capture.bat
- 脚本文件:
@echo off
:::::::::::::::::::::::: 配置区域 ::::::::::::::::::::::::
echo get ethernet information......
tshark -D
:: 1. 抓包接口编号(通过 tshark -D 获取)
:: 提示用户输入他们的名字
set /p INTERFACE_NUM=Please input interface number:
:: 2. 文件保存路径(按企业规范)
set SAVE_DIR=E:\PacketCaptures
:: 3. 文件名前缀(建议包含项目/设备名称)
set FILE_PREFIX=Device
:::::::::::::::: 自动生成时间戳(修复版) ::::::::::::::::
:: 使用PowerShell获取ISO8601时间戳(兼容性更强)
for /f "delims=" %%i in ('powershell -Command "Get-Date -Format 'yyyyMMdd_HHmmss'"') do (
set TIMESTAMP=%%i
)
if "%TIMESTAMP%"=="" (
echo [ERROR] Failed to get system time
pause
exit /b 1
)
:: 构建文件名(移除非法字符)
set FILENAME=%INTERFACE_NUM%_%TIMESTAMP%_%FILE_PREFIX%.pcap
set FULL_PATH=%SAVE_DIR%\%FILENAME%
:::::::::::::::: 执行抓包 :::::::::::::::::::::
if not exist "%SAVE_DIR%" mkdir "%SAVE_DIR%"
echo Start caputre, will save to %FULL_PATH%......
tshark -i %INTERFACE_NUM% -w "%FULL_PATH%" -n -l -q
if %errorlevel% neq 0 (
echo [ERROR] Capture failed. Check interface number and permissions.
pause
exit /b 1
)
echo [SUCCESS] Capture saved to: %FULL_PATH%
pause
- 停止捕获数据包
Ctrl+C
:停止捕获数据
4. 后续分析建议
-
使用Wireshark GUI分析
- 打开
.pcap
文件后,应用显示过滤器(如modbus
) - 统计→协议分级:快速定位异常协议占比
- 打开
-
生成报告
- 导出关键数据包为CSV:
文件 → 导出分组解析结果
- 标记异常流量(如TCP重传、校验错误)
- 导出关键数据包为CSV: