Linux:命令行调试WiFi(iwlist/iwconfig/iw/wpa

您所在的位置:网站首页 wpa_supplicant编译 Linux:命令行调试WiFi(iwlist/iwconfig/iw/wpa

Linux:命令行调试WiFi(iwlist/iwconfig/iw/wpa

2023-09-27 18:11| 来源: 网络整理| 查看: 265

文章目录 1、编译步骤2、iwlist3、iwconfig4、iw5、wpa_supplicant5.1 wpa_supplicant —— 连接AP热点5.2 wpa_cli —— wpa_supplicant的客户端 6、动态获取IP地址6.2 方式1:使用busybox自带的udhcpc工具(推荐)6.2 方式2:dhclient 7、hostapd7.1 hostapd —— 创建AP热点7.2 hostapd_cli —— hostapd的客户端 8、动态分配IP地址8.1 方式1:使用busybox自带的udhcpd工具(推荐)8.2 方式2:dhcpd

1、编译步骤

https://blog.csdn.net/weixin_44498318/article/details/107369662

2、iwlist iwlist wlan0 scan[ning] 列出WiFi扫描结果 iwlist wlan0 freq[uency]/channel 列出当前地区可用频率 iwlist wlan0 rate/bit[rate] 列出支持的连接速度 iwlist wlan0 keys/enc[ryption] 列出所支持的加密密钥大小 iwlist wlan0 power 列出电源模式 iwlist wlan0 txpower 列出传输功耗 iwlist wlan0 retry 列出重连限制与次数 iwlist wlan0 ap/accesspoint/peers 列出热点信息 iwlist wlan0 event 列出设备支持的无线事件 iwlist wlan0 auth 列出当前设置的WPA认证参数 iwlist wlan0 wpa[keys] 列出设备中设置的所有WPA加密密钥 iwlist wlan0 genie 列出设置的通用信息元素 iwlist wlan0 modu[lation] 列出设备支持的调制和当前启用的调制 iwlist --version 列出版本信息 iwlist --help 列出帮助信息 3、iwconfig iwconfig wlan0 freq 2422000000 设置频率 iwconfig wlan0 freq 2.422G 设置频率 iwconfig wlan0 channel 3 设置信道 iwconfig wlan0 channel auto 设置信道 iwconfig wlan0 modu 11g 强制设置调制方式 iwconfig wlan0 modu CCK OFDMa 强制设置调制方式 iwconfig wlan0 modu auto 强制设置调制方式 iwconfig wlan0 txpower 15 设置发射功率为15dBm iwconfig wlan0 txpower 30mW 设置发射功率:dBm=30+log(W) iwconfig wlan0 txpower auto 设置自动选择发射功率 iwconfig wlan0 txpower off 关闭发射单元 iwconfig wlan0 sens -80 负数为接收灵敏度下限,低则表信号差,网卡会采取措施 iwconfig wlan0 sens 2 正数表示百分比 iwconfig wlan0 retry 16 设置最大重传次数 iwconfig wlan0 retry lifetime 300m 设置最长重试时间,默认单位为秒 iwconfig wlan0 retry min limit 8 若支持自动模式,min和max指定上下限 iwconfig wlan0 rts 250 设置握手最小包的大小,等于最大值表禁止该机制 iwconfig wlan0 rts off auto/off/fixed禁止RTS/CTS握手方式 iwconfig wlan0 frag 512 设置发送数据包的分片大小 iwconfig wlan0 frag off auto/fixed/off允许Burst模式 iwconfig wlan0 power period 2 指定唤醒的周期,默认单位为秒 iwconfig wlan0 power 500m unicast all/unicast/multicast指定允许唤醒的数据包类型 iwconfig wlan0 power timeout 300u all all/unicast/multicast指定允许唤醒的数据包类型 iwconfig wlan0 power off off/on参数指定是否允许电源管理 iwconfig wlan0 power min period 2 power max period 4 指定唤醒的周期 4、iw iw --debug 使能netlink调试 iw --version 查看版本信息 iw help 显示帮助信息 iw event [-t] [-r] [-f] 监听内核事件 iw list/phy 列出设备性能 iw dev 列出无线硬件的所有网络接口 iw dev wlan0 scan 搜索周围WiFi信息 iw dev wlan0 link 获得连接状态 iw dev wlan0 info 显示接口信息 iw dev wlan0 station dump 列出所有STA信息 iw dev wlan0 connect wifi名称 连接至OPEN方式的AP iw dev wlan0 connect wifi名称 2432 有同名热点AP时指定特定频段 iw dev wlan0 connect wifi名称 key 0:密码 d:1:默认密码 连接至WEP加密方式的AP iw dev wlan0 disconnect 断开连接 5、wpa_supplicant 5.1 wpa_supplicant —— 连接AP热点

前面iwlist、iwconfig属于wireless tools的程序,iw是iwconfig的替代者,都仅支持连接OPEN与WEP加密方式的WiFi;而wpa_supplicant支持在802.11规范中定义的各种安全连接和WPS。

wpa_supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf -B

配置文件/etc/wpa_supplicant.conf内容参考:

ctrl_interface=/var/run/wpa_supplicant network={ ssid="WiFi-1" key_mgmt=NONE }

ctrl_interface=/var/run/wpa_supplicant network={ ssid="WiFi-1" key_mgmt=NONE wep_key0="abcde" wep_key1=0102030405 wep_tx_keyidx=0 }

ctrl_interface=/var/run/wpa_supplicant network={ ssid="WiFi-1" key_mgmt=WPA-PSK proto=WPA pairwise=TKIP group=TKIP psk="123123123" }

ctrl_interface=/var/run/wpa_supplicant network={ ssid="WiFi-1" psk="123123123" } 5.2 wpa_cli —— wpa_supplicant的客户端

wpa_cli程序的运行需要依赖于wpa_supplicant的后台运行,属于服务器端和客户端的关系。

wpa_cli help 打印帮助信息 wpa_cli -i wlan0 status 显示当前连接信息 wpa_cli -i wlan0 scan 搜索周围WiFi信息 wpa_cli -i wlan0 scan_result 显示上一次的搜索结果 wpa_cli -i wlan0 list_networks 显示已配置的网络与信息 wpa_cli -i wlan0 add_network 添加一个网络返回一个数字n wpa_cli -i wlan0 set_network n ssid '"name"' 输入要连接的WiFi名称 wpa_cli -i wlan0 set_network n key_mgmt NONE 输入加密方式OPEN/WEP wpa_cli -i wlan0 set_network n wep_key0 '"psk"' 输入加密方式WEP的密码 wpa_cli -i wlan0 set_network n psk '"psk"' 输入加密方式WPA/WPA2的密码 wpa_cli -i wlan0 enable_network n 设置后需要启用WiFi wpa_cli -i wlan0 save_config 保存WiFi配置 wpa_cli -i wlan0 select_network n 有多个WiFi时选择其中一个 wpa_cli -i wlan0 reconfigure 重新加载配置文件 wpa_cli -i wlan0 disconnect 断开WiFi连接 wpa_cli -i wlan0 reconnect 重新连接 wpa_cli -i wlan0 remove_network n 移除WiFi配置 wpa_cli -i wlan0 terminate 关闭后台服务器程序 wpa_cli [-i wlan0] 进入交互模式,命令可以为status等 6、动态获取IP地址 6.2 方式1:使用busybox自带的udhcpc工具(推荐) udhcpc -i wlan0 -b

如果没有获取到IP地址请参考 ==>【嵌入式Linux:解决busybox udhcpc获取IP但没有设置系统DNS的问题】

6.2 方式2:dhclient

使用前需要参考文章【点击链接跳转】添加相应的配置文件。

dhclient wlan0 获取IP地址 dhclient -r 释放IP地址 dhclient -s 192.168.1.123 从指定的服务器获取ip地址 7、hostapd 7.1 hostapd —— 创建AP热点 hostapd /etc/myhostapd.conf -B

hostapd依赖于dhcpd后台运行给连接的设备动态分配IP地址,配置文件/etc/myhostapd.conf内容如下:

ctrl_interface=/var/run/hostapd #change wlan0 to your wireless device interface=wlan0 driver=nl80211 ssid=WiFi-1 channel=1 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0

ctrl_interface=/var/run/hostapd #change wlan0 to your wireless device interface=wlan0 driver=nl80211 ssid=WiFi-1 channel=1 macaddr_acl=0 auth_algs=2 ignore_broadcast_ssid=0 wep_key0="123123123" wep_default_key=0

ctrl_interface=/var/run/hostapd #change wlan0 to your wireless device interface=wlan0 driver=nl80211 ssid=WiFi-1 channel=1 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=3 wpa_passphrase=123123123 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP 7.2 hostapd_cli —— hostapd的客户端 hostapd_cli -h 显示帮助信息 hostapd_cli -v 显示版本信息 hostapd_cli -p 指定socket的路径 hostapd_cli -i wlan0 all_sta 显示所有连接设备 hostapd_cli -i wlan0 sta 查看某个设备信息 hostapd_cli -i wlan0 interface 显示网卡接口 hostapd_cli -i wlan0 interface [ifname] 指定网卡接口 hostapd_cli -i wlan0 get_config 获得配置 hostapd_cli -i wlan0 disassociate 断开某个设备的连接 hostapd_cli -i wlan0 level n 设置打印级别 hostapd_cli -i wlan0 license 显示证书 hostapd_cli [-i wlan0] 进入交互模式,命令可以为all_sta等 8、动态分配IP地址 8.1 方式1:使用busybox自带的udhcpd工具(推荐) # 提示没有哪些文件就去给它创建 touch /etc/udhcpd.leases udhcpd -f /etc/dhcpd.conf &

配置文件/etc/dhcpd.conf内容如下:

start 192.168.1.100 end 192.168.1.199 interface wlan0 max_leases 32 remaining yes auto_time 7200 decline_time 3600 conflict_time 3600 offer_time 60 min_lease 60 pidfile /etc/dhcpd_wlan0_pid.txt lease_file /etc/udhcpd.leases opt dns 192.168.1.1 opt subnet 255.255.255.0 opt router 192.168.1.1 opt wins 192.168.1.1 opt domain local opt lease 3600 8.2 方式2:dhcpd touch /var/db/dhcpd.leases ifconfig wlan0 192.168.1.1 dhcpd -cf /etc/dhcpd.conf wlan0

其中,dhcpd.conf内容可以参考文章【点击链接跳转】拷贝得到,然后添加内容实现分配IP范围:

subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.10 192.168.1.100; option domain-name-servers 192.168.1.1; option routers 192.168.1.1; }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3