android/linux 常用网络调试命令
目录iwiwconfigiwlistiwprivifconfigwpa_clihostapd_cliip routeip addrip ruleiptablesebtablesiwiw 是一种新的基于 nl80211 的用于无线设备的CLI配置实用程序。它支持最近已添加到内核所有新的驱动程序。采用无线扩展接口的旧工具iwconfig...
目录
iw
iw 是一种新的基于 nl80211 的用于无线设备的CLI配置实用程序。
它支持最近已添加到内核所有新的驱动程序。采用无线扩展接口的旧工具iwconfig已被废弃,强烈建议切换到 iw 和 nl80211。
Linux内核的其余部分,iw 仍处于开发阶段。功能被随时添加。 iw 的唯一文档就是此页和“iw help”的输出。
常用命令:
# iw help # 帮助
# iw list # 获得所有设备的功能,如带宽信息(2.4GHz,和5GHz),和802.11n的信息
# iw dev wlan0 scan # 扫描
# iw event # 监听事件
# iw dev wlan0 link # 获得链路状态
# iw wlan0 connect foo # 连接到已禁用加密的AP,这里它的SSID是foo
# iw wlan0 connect foo 2432 # 假设你有两个AP SSID 都是 foo ,你知道你要连接的是在 2432 频道
# iw wlan0 connect foo keys 0:abcde d:1:0011223344 # 连接到使用WEP的AP
# iw dev wlan1 station dump # 获取station 的统计信息
# iw dev wlan1 station get # 获得station对应的peer统计信息
# iw wlan0 set bitrates legacy-2.4 12 18 24 # 修改传输比特率
# iw dev wlan0 set bitrates mcs-5 4 # 修改tx HT MCS的比特率
# iw dev wlan0 set bitrates mcs-2.4 10
# iw dev wlan0 set bitrates mcs-5 # 清除所有 tx 比特率和设置的东西来恢复正常
# iw dev set txpower [] #设置传输功率
# iw phy set txpower [] #设置传输功率
# iw dev wlan0 set power_save on #设置省电模式
# iw dev wlan0 get power_save #查询当前的节电设定
# iw phy phy0 interface add moni0 type monitor #添加一个 monitor 接口
iwconfig
系统配置无线网络设备或显示无线网络设备信息。配置无线网络接口。
iwconfig 命令类似于ifconfig命令,但是他配置对象是无线网卡,它对网络设备进行无线操作,如设置无线通信频段。
当前多数平台已被iw替换。
常用命令:
auto 自动模式
essid 设置ESSID
nwid 设置网络ID
freq 设置无线网络通信频段
chanel 设置无线网络通信频段
sens 设置无线网络设备的感知阀值
mode 设置无线网络设备的通信设备
ap 强迫无线网卡向给定地址的接入点注册
nick<名字> 为网卡设定别名
rate<速率> 设定无线网卡的速率
rts<阀值> 在传输数据包之前增加一次握手,确信信道在正常的
power 无线网卡的功率设置
iwlist
用于对/proc/net/wireless文件进行分析,得出无线网卡相关信息
Usage: iwlist [interface] scanning [essid NNN] [last]
[interface] frequency //信道
[interface] channel //信道
[interface] bitrate //当前速率
[interface] rate //当前速率
[interface] encryption //加密信息
[interface] keys
[interface] power
[interface] txpower // TX功率
[interface] retry
[interface] ap //AP信息
[interface] accesspoints
[interface] peers //对端设备信息
[interface] event
[interface] auth
[interface] wpakeys
[interface] genie
[interface] modulation
--help
--version
iwpriv
iwpriv是iwconfig的辅助工具,用来配置无线网络接口的各种私有可选参数。
iwpriv针对不同种类的驱动实现特定的参数处理和设置。iwpriv不跟参数时会列出每个接口上可用的私有命令和它们对应的参数。用户可根据这些信息对特定的接口使用不同的命令操作。
Qcom 平台查看ini生效属性:
iwpriv wlan0 getConfig
dmesg > /data/dmesg.txt
设置Qcom平台芯片为sniffer模式, 抓取sniffer log:
enable sniffer
rmmod wlan
insmod /vendor/lib/modules/qca_cld3_wlan.ko [con_mode=4]
echo 4 > /sys/module/wlan/parameters/con_mode
ifconfig wlan0 up
iwpriv wlan0 setMonChan 1/6/11/...(channel) 20/40/80(bindwidth)
tcpdump -i wlan0 -w /sdcard/tcpdump.pcap
disable sniffer
ifconfig wlan0 down
rmmod wlan
设置命令
iwpriv ra0 set SSID=””
iwpriv ra0 set Channel=0
iwpriv ra0 set NetworkType=Infra
iwpriv ra0 set AuthMode=SHARED
iwpriv ra0 set EncrypType=WEP
iwpriv ra0 set DefaultKeyID=1
iwpriv ra0 set Key1=”whatever”
iwpriv ra0 set SSID=”some_ssed”
iwpriv ra0 set WPAPSK=”wpa_key”
…
显示命令
iwpriv ra0 show SSID
iwpriv ra0 show Channel
iwpriv ra0 show NetworkType
iwpriv ra0 show AuthMode
iwpriv ra0 show EncrypType
iwpriv ra0 show DefaultKeyID
iwpriv ra0 show Key1
iwpriv ra0 show WPAPSK
…
./iwpriv ra0 show 无线网卡功能参数
ra0 show:
SSID
WirelessMode
TxBurst
TxPreamble
TxPower
Channel
BGProtection
RTSThreshold
FragThreshold
HtBw
HtMcs
HtGi
HtOpMode
HtExtcha
HtMpduDensity
HtBaWinSize
HtRdg
HtAmsdu
HtAutoBa
CountryRegion
CountryRegionABand
CountryCode
PktAggregate
WmmCapable
IEEE80211H
NetworkType
WPAPSK
AutoReconnect
AuthMode
EncrypType
DefaultKeyID
Key1
Key2
Key3
Key4
PMK
ifconfig
用于显示或配置网络设备(网络接口)的命令,英文全称是network interfaces configuring。
常用命令
usage: ifconfig [-a] [INTERFACE [ACTION...]]
ifconfig
ifconfig -a
ifconfig [interface] up/down
wpa_cli
wpa_supplicant
的客户端程序。通常情况下,可以通过wpa_cli
调用wpa_supplicant
的接口来进行WIFI
的配置与连接。
用法:
wpa_cli [-p<path to ctrl sockets>] [-i<ifname>] [-hvB] [-a<action file>] \
[-P<pid file>] [-g<global ctrl>] [-G<ping interval>] \
[-s<wpa_client_socket_file_path>] [command..]
常用命令:
wpa_cli -i wlan0/p2p0 -p[sockets]
1. 打开debug log : wpa_cli -iwlan0 -p/data/misc/wifi/sockets log_level debug
2. scan:打开后扫描AP
3. scan_results:显示扫描结果
4. status:列出目前的联网状态。
5. list_networks:列出所有备选网络。目前正连接到的网络会标[CURRENT],禁用的网络会标[DISABLE]。
6. add_network:增加一个备选网络,输出新网络的号码(这个号码替代下文的[network_id])。注意新网络此时是禁用状态。
7. set_network [network_id] ssid “Your SSID”:设置无线网的名称(SSID)
8. set_network [network_id] key_mgmt WPA-PSK:设置无线网的加密方式为WPA-PSK/WPA2-PSK
9. set_network [network_id] psk “Your Password”:设置无线网的PSK密码
10. enable_network [network_id]:启用网络。启用后如果系统搜索到了这个网络,就会尝试连接。
11. disable_network [network_id]:禁用网络。
12. save_config:保存配置。
13. log_level [debug | info ...] :设置log级别
e.g.
>add_network
0<--- 新网络的号码
>set_network 0 ssid "TP-LINK_HyFi_75"
ok
>set_network 0 key_mgmt WPA-PSK
ok
>set_network 0 psk "147258369"
ok
>enable_network 0
ok
>save_config<--------别忘了这个,否则重启之后网络配置可能丢失
ok
hostapd_cli
hostapd是用户态的守护进程,用于无线station接入和安全认证,hostapd_cli是用于访问hostapd并且获取当前ap信息和对ap进行操作的客户端程序。
用法:
usage: hostapd_cli [-p<path>] [-i<ifname>] [-hvB] [-a<path>] \
[-P<pid file>] [-G<ping interval>] [command..]
Options:
-h help (show this usage text)
-v shown version information
-p<path> path to find control sockets (default: /var/run/hostapd)
-s<dir_path> dir path to open client sockets (default: /data/vendor/wifi/hostapd/ctrl)
-a<file> run in daemon mode executing the action file based on events
from hostapd
-B run a daemon in the background
-i<ifname> Interface to listen on (default: first interface found in the
socket path)
常用命令:
hostapd -i[interface] -p[sockets]
all_sta/al //显示当前连入的STA,并记录连上的时间长度
deauthenticate <addr>/dea //解除验证
disassociate <addr> //断开连接
wpa_pin //AP端的wps功能
wpa_pbc //AP端的wps功能
wps_config <SSID> <auth> <encr> <key> //配置ciate <addr>
ip route
ip addr
ip rule
iptables
ebtables
更多推荐
所有评论(0)