一、介绍
nping 是 Nmap 工具套件 中的一个独立网络探测工具,用来构造并发送自定义数据包。可以用于:测试网络连通性、测试防火墙规则、模拟 TCP/UDP/ICMP 流量、进行延迟/丢包分析、压力测试。
二、安装
yum install nmap -y
三、使用方法
nping [Probe mode] [Options] {target specification}
全部参数
探测模式(PROBE MODES)
| 参数 |
中文解释 |
--tcp-connect |
普通 TCP 连接探测(无需 root 权限) |
--tcp |
TCP 原始探测模式 |
--udp |
UDP 探测模式 |
--icmp |
ICMP 探测(类似 ping) |
--arp |
ARP/RARP 局域网探测 |
--tr, --traceroute |
路由追踪模式(需配合 TCP/UDP/ICMP) |
TCP CONNECT 模式
| 参数 |
中文解释 |
-p, --dest-port |
指定目标端口 |
-g, --source-port |
指定源端口 |
TCP 探测模式(高级控制)
| 参数 |
中文解释 |
-g |
设置源端口 |
-p |
设置目标端口 |
--seq |
设置 TCP 序列号 |
--flags |
设置 TCP 标志位(SYN/ACK/FIN/RST等) |
--ack |
设置 ACK 号 |
--win |
设置窗口大小 |
--badsum |
使用错误校验和(测试过滤/防火墙) |
UDP 探测模式
| 参数 |
中文解释 |
-g |
设置源端口 |
-p |
设置目标端口 |
--badsum |
使用错误校验和 |
ICMP 探测模式
| 参数 |
中文解释 |
--icmp-type |
ICMP 类型 |
--icmp-code |
ICMP 代码 |
--icmp-id |
标识符 ID |
--icmp-seq |
序列号 |
--icmp-redirect-addr |
重定向地址 |
--icmp-param-pointer |
参数错误指针 |
--icmp-advert-lifetime |
路由广告生存时间 |
--icmp-advert-entry |
添加路由广告条目 |
--icmp-orig-time |
原始时间戳 |
--icmp-recv-time |
接收时间戳 |
--icmp-trans-time |
发送时间戳 |
ARP / RARP 模式
| 参数 |
中文解释 |
--arp-type |
ARP 类型(request/reply等) |
--arp-sender-mac |
发送方 MAC |
--arp-sender-ip |
发送方 IP |
--arp-target-mac |
目标 MAC |
--arp-target-ip |
目标 IP |
IPv4 选项
| 参数 |
中文解释 |
-S |
设置源 IP |
--dest-ip |
设置目标 IP |
--tos |
服务类型字段 |
--id |
IP 标识字段 |
--df |
不分片(Don't Fragment) |
--mf |
更多分片标志 |
--ttl |
生存时间 |
--badsum-ip |
错误 IP 校验和 |
--ip-options |
设置 IP 选项 |
--mtu |
设置最大传输单元 |
IPv6 选项
| 参数 |
中文解释 |
-6 |
使用 IPv6 |
--dest-ip |
目标 IPv6 |
--hop-limit |
跳数限制(类似 TTL) |
--traffic-class |
流量类别 |
--flow |
流标签 |
以太网层选项
| 参数 |
中文解释 |
--dest-mac |
目标 MAC 地址 |
--source-mac |
源 MAC 地址 |
--ether-type |
以太网协议类型 |
载荷(Payload)选项
| 参数 |
中文解释 |
--data |
自定义十六进制数据 |
--data-string |
ASCII 文本数据 |
--data-length |
随机数据长度 |
Echo 模式(客户端/服务器)
| 参数 |
中文解释 |
--echo-client |
客户端模式(带密码) |
--echo-server |
服务端模式 |
--echo-port |
指定端口 |
--no-crypto |
不加密 |
--once |
只接受一次连接 |
--safe-payloads |
清除应用数据 |
时间与性能
| 参数 |
中文解释 |
--delay |
每次探测延迟 |
--rate |
每秒发送包数量 |
其他(MISC)
| 参数 |
中文解释 |
-h |
帮助 |
-V |
版本 |
-c |
发送次数 |
-e |
指定网卡 |
-H |
隐藏发送包 |
-N |
不抓包 |
--privileged |
认为有 root 权限 |
--unprivileged |
无 root 模式 |
--send-eth |
以太网层发送 |
--send-ip |
IP 层发送 |
--bpf-filter |
BPF 过滤器 |
输出控制
| 参数 |
中文解释 |
-v |
增加详细输出 |
-v[level] |
设置详细等级 |
-d |
增加调试信息 |
-d[level] |
设置调试等级 |
-q |
减少输出 |
--quiet |
最小输出 |
--debug |
最大调试输出 |
四、常用命令
TCP 探测端口
nping --tcp -p 80 192.168.1.1
UDP 探测端口
nping --udp -p 53 192.168.1.1
发送自定义 payload
nping --tcp -p 80 --data-string "hello" 192.168.1.1
ARP 局域网探测(内网神器)
nping --arp --arp-type ARP-request 192.168.1.1
高精度延迟测试
nping --icmp -c 20 8.8.8.8
TCP 完整连接,类似telnet(无需 root)
nping --tcp-connect -p 22 192.168.1.1
对192.168.1.101的80端口,每秒10000次,快速建立tcp连接(TCP全连接攻击)
nping --tcp-connect --rate=10000 -p 80 192.168.1.101