使用nping测试验证网络连接问题。
基础探测模式
- --tcp-connect
 用途:无特权TCP连接探测模式(模拟普通TCP三次握手)。
- --tcp
 用途:TCP探测模式(直接构造原始TCP包,可自定义报文头)。
- --udp
 用途:UDP探测模式(发送自定义UDP包)。
- --icmp
 用途:ICMP探测模式(发送自定义ICMP包,如Ping请求)。
- --arp
 用途:ARP/RARP探测模式(发送ARP请求或响应包)。
- --tr, --traceroute
用途:路由跟踪模式(需与TCP/UDP/ICMP模式配合,显示路径节点)。
TCP CONNECT模式
- -p,
     --dest-port <端口范围>
 用途:设置目标端口(如 80 或 1-1000)。
- -g,
     --source-port <端口号>
 用途:设置源端口(仅适用于TCP连接模式)。
TCP PROBE模式(原始包)
- -g,
     --source-port <端口号>
 用途:设置源端口。
- -p,
     --dest-port <端口范围>
 用途:设置目标端口。
- --seq
     <序列号>
 用途:设置TCP序列号。
- --flags
     <标志列表>
 用途:设置TCP标志位(如 SYN, ACK, RST)。
- --ack
     <确认号>
 用途:设置TCP确认号。
- --win
     <窗口大小>
 用途:设置TCP窗口大小。
- --badsum
 用途:使用无效校验和(测试防火墙/设备处理错误包的能力)。
UDP模式参数
- -g,
     --source-port <端口号>
 用途:设置源端口。
- -p,
     --dest-port <端口范围>
 用途:设置目标端口。
- --badsum
 用途:使用无效校验和。
ICMP模式参数
- --icmp-type
     <类型>
 用途:设置ICMP类型(如 8 表示回显请求)。
- --icmp-code
     <代码>
 用途:设置ICMP代码(与类型配合使用)。
- --icmp-id
     <ID>
 用途:设置ICMP标识符(用于匹配请求/响应)。
- --icmp-seq
     <序号>
 用途:设置ICMP序列号。
- --icmp-redirect-addr
     <地址>
 用途:设置ICMP重定向地址。
- --icmp-param-pointer
     <指针>
 用途:设置参数问题指针(用于ICMP错误报文)。
ARP/RARP模式参数
- --arp-type
     <类型>
 用途:设置ARP类型(如 ARP、ARP-reply、RARP)。
- --arp-sender-mac
     <MAC地址>
 用途:设置发送方MAC地址。
- --arp-sender-ip
     <IP地址>
 用途:设置发送方IP地址。
- --arp-target-mac
     <MAC地址>
 用途:设置目标MAC地址。
- --arp-target-ip
     <IP地址>
 用途:设置目标IP地址。
IPv4选项
- -S,
     --source-ip <IP地址>
 用途:设置源IP地址。
- --dest-ip
     <IP地址>
 用途:设置目标IP地址(替代命令行目标参数)。
- --tos
     <服务类型>
 用途:设置IP头部的服务类型字段(8位)。
- --id
     <ID>
 用途:设置IP标识字段(16位)。
- --df
 用途:设置“不分片”标志。
- --mf
 用途:设置“更多分片”标志。
- --evil
 用途:设置保留位(用于测试异常包处理)。
- --ttl
     <跳数>
 用途:设置生存时间(TTL)。
- --badsum-ip
 用途:使用无效IP校验和。
- --ip-options
     <选项>
 用途:设置IP选项(如路由记录、时间戳)。
- --mtu
     <大小>
 用途:设置MTU(触发分片)。
IPv6选项
- -6,
     --IPv6
 用途:启用IPv6模式。
- --hop-limit
     <跳数>
 用途:设置跳数限制(类似IPv4的TTL)。
- --traffic-class
     <类>
 用途:设置流量类别(类似IPv4的TOS)。
- --flow
     <标签>
 用途:设置流标签。
以太网选项
- --dest-mac
     <MAC地址>
 用途:设置目标MAC地址(禁用ARP解析)。
- --source-mac
     <MAC地址>
 用途:设置源MAC地址。
- --ether-type
     <类型>
 用途:设置以太网类型(如 0x0800 表示IPv4)。
负载选项
- --data
     <十六进制字符串>
 用途:添加自定义十六进制负载。
- --data-string
     <文本>
 用途:添加自定义ASCII文本负载。
- --data-length
     <长度>
 用途:生成指定长度的随机负载。
回显模式(客户端/服务器)
- --echo-client
     <密码>
 用途:作为客户端发送加密回显请求。
- --echo-server
     <密码>
 用途:作为服务器监听回显请求。
- --echo-port
     <端口>
 用途:设置回显服务的端口。
- --no-crypto
 用途:禁用加密和认证。
- --once
 用途:服务器仅接受一次连接后退出。
- --safe-payloads
 用途:清除回显包中的应用数据。
时间与性能
- --delay
     <时间>
 用途:设置探测包之间的延迟(如 1s、100ms)。
- --rate
     <速率>
 用途:设置每秒发送的包数(如 1000 表示千包/秒)。
杂项
- -h,
     --help
 用途:显示帮助信息。
- -V,
     --version
 用途:显示版本信息。
- -c,
     --count <次数>
 用途:指定发送的探测轮次。
- -e,
     --interface <接口名>
 用途:指定网络接口(如 eth0)。
- -H,
     --hide-sent
 用途:隐藏发送的包(仅显示接收的响应)。
- -N,
     --no-capture
 用途:不捕获响应包(仅发送)。
- --privileged
 以完全权限运行(需root),允许原始套接字操作
 场景:构造自定义协议头、ARP欺骗
权限与数据包构造控制
- --privileged
 以完全权限运行(需root),支持构造自定义协议头和底层操作(如ARP欺骗)。
- --unprivileged
 非特权模式运行,依赖系统协议栈(无法发送裸TCP/ICMP包)。
- --send-eth
 在数据链路层发送原始以太网帧(需同时启用--privileged权限)。
- --send-ip
 使用IP层原始套接字发送包(自动处理IP头校验和)。
- --bpf-filter
     <规则>
 自定义BPF过滤规则(如tcp and src host 192.168.1.1),精准控制响应包捕获。
输出与调试控制
- -v
 每增加一次,提升一级输出详细度(默认0级):
- -v1:显示发送/接收包的基本信息。
- -v3:显示数据包MAC/IP头详情。
- -v[level]
 直接设置详细度等级(如-v4显示传输层协议详情)。
- -d
 每增加一次,提升一级调试信息(默认0级):
- -d1:显示数据包构造过程。
- -d3:输出协议交互的十六进制dump。
- -q/-q[N]
 降低输出冗余度(-q3直接静默,仅显示错误)。
- --quiet
 最小化输出(等同于-q9),仅显示最终统计结果。
- --debug
 最大调试模式(等同于-v9 -d9),输出完整二进制包内容。
常用命令示例
--tcp-connect 使用系统TCP协议栈完成三次握手建立真实连接--模拟客户端验证服务可用性(如测试HTTP服务响应)
nping -p 80,443 --tcp-connect 192.168.1.1
--tcp 自定义发送原始TCP报文(需管理员权限)--端口扫描(SYN扫描)、协议栈压力测试
nping -p 80,443 --tcp 192.168.1.1
--udp 发送UDP数据包--检测UDP服务状态(如DNS、NTP端口)或测试丢包率
nping -p 53,123,162 --udp 192.168.1.1
--icmp 发送ICMP报文(如Echo Request)--检测主机存活状态、网络延迟及路径MTU(类似传统ping)
nping --icmp 192.168.1.1
--arp 发送ARP请求或响应包--探测局域网内主机MAC地址或检测ARP欺骗攻击nping --arp 192.168.1.1
组合命令示例
TCP端口扫描,向目标80、443端口发送10次SYN包,TTL设为64,检测端口开放状态
nping --tcp -p 80,443 192.168.1.1 --flags SYN --ttl 64 -c 10
模拟HTTP客户端连接,建立TCP连接后发送HTTP请求,验证服务响应内容
nping --tcp-connect -p 80 192.168.1.1 --data-string "GET / HTTP/1.1\r\nHost: example.com\r\n\r\n"
ICMP网络延迟测试,以每秒50包速率发送100次ICMP请求,统计延迟及丢包率
nping --icmp -c 100 --rate 50 192.168.1.1
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号