参考:
Linux命令行手动配置无线wiff网络 iwconfig
https://blog.youkuaiyun.com/u012349696/article/details/52524124
Linux下wifi连接AP后自动获取IP地址。
https://blog.youkuaiyun.com/comerly/article/details/78878418
使用WIFI网卡 dhcp动态获取IP
https://www.cnblogs.com/-glb/p/11610609.html
wifi网卡dhcp动态获取ip
http://blog.chinaunix.net/uid-29181887-id-4330185.html
ubuntu下使用hostapd建立wifi热点
https://www.cnblogs.com/liyam/p/6186527.html
DHCP:解析开发板上动态获取ip的2种实现方法详解
https://www.jb51.net/article/37379.htm
Wpa_supplicant.conf用法小结
https://blog.youkuaiyun.com/hbcbgcx/article/details/90812056
查看设备在线情况
hostapd_cli -iwlan0 all_sta
mt8192fu内核裁剪
问题六十六如何减小编译出来的ko文件大小
问题描述:有什么办法能在保证使用wifiAP和stattion这两个功能的前提下(我们用的
模块没有蓝牙的功能),尽可能的减少最后的驱动文件大小么?
网卡类型:RTL
问题分析:可以在wifidriver的Makefile下做修改
解决方案:
EXTRA_CFLAGS+=$(USER_EXTRA_CFLAGS)
EXTRA_CFLAGS+=-O1改成EXTRA_CFLAGS+=-Os
#EXTRA_CFLAGS+=-O3
#EXTRA_CFLAGS+=-Wall
#EXTRA_CFLAGS+=-Wextra
#EXTRA_CFLAGS+=-Werror
#EXTRA_CFLAGS+=-pedantic
#EXTRA_CFLAGS+=-Wshadow-Wpointer-arith-Wcast-qual-Wstrict-prototypes-
Wmissing-prototypes
试一下在Makefile下
CONFIG_MP_INCLUDED=y改成n
CONFIG_POWER_SAVING=y改成n
CONFIG_BT_COEXIST=y改成n
CONFIG_LOAD_PHY_PARA_FROM_FILE=y改成n
CONFIG_PROC_DEBUG=y改成n
CONFIG_RTW_DEBUG=y改成n
在include/autoconf.h下
#defineCONFIG_P2P改成
//#defineCONFIG_P2P
在include/autoconf.h
#defineDBG1->#defineDBG0
#defineCONFIG_P2P1->#defineCONFIG_P2P0
使用makestripxxxx.ko
除了strip,而有些信息对于最终使用是没有什么影响的。如:.comment;.note.ABI-
tag;.gnu.version就是完全可以去掉的。
试一下objcopy-R.comment-R.note.ABI-tag-R.gnu.version8821au.ko8821au.ko_obj
另外wpa_supplicant和hostapd也可以用strip压缩一下。
这样看看能缩减多少。
把wlan0 配置成station
1: 安装 wireless_tools 和 madwifi
2:lsusb查看usb驱动状态
3:iwconfig 检查无线网卡,选定无线网卡
4:ifconfig wlan0 up 激活无线网卡
5:iwlist wlan0 scan 扫描设备
(发现WPA2-PSK/WPA-PSK 加密网络 TP-LINK_22E1D2
因为加密方式为 WPA-PSK 所以得用 wpa_supplicant 而不能使用 iwconfig wlan0 key xxx 形式,iwconfig key方式适用于WEP。 )
默认以上操作都完成了
6:配置wpa_supplicant
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="TP-LINK_22E1D2"
psk="密码"
}
7: 连接wlan0到网络,并以daemon方式运行
wpa_supplicant -B -i wlan0 -c /etc/my_wpa_supplicant.conf
-B Background 在后台以daemon 运行
-i interface
-c 配置文件
此时 ,wlan已经成功的通过wps的方式,连接到了上级路由,但是还不能上网,因为,还没获得ip。
8-1:DHCP:动态获取ip的2种实现方法详解:
udhcpc -i wlan0 -b
or
dhclient wlan0 //此方法我没验证
8-2:手动设置ip和网关
ifconfig wlan0 172.21.69.92 netmask 255.255.255.0
加入网关到路由
route add default gw 192.168.1.1 dev wlan0
route 查看route状态
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 * 255.255.255.0 U 0 0 0 wlan0
default 192.168.1.1 0.0.0.0 UG 0 0 0 wlan0
9: 相关命令
关闭连接
wpa_cli terminate
连接状态
wpa_cli status
把wlan1配置成ap
1: insmod 8192cu.ko
2:ifconfig wlan0 up
3:ifconfig wlan0 192.168.200.1 netmask 255.255.255.0(using the static ip for testing)
4:start hostapd daemon: ./hostapd rtl_hostapd.conf -B
rtl_hostapd.conf:
interface=wlan1
ssid=Zeratul_BMSHPGUH
hw_mode=g
channel=1
beacon_int=20
dtim_period=1
driver=nl80211
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
own_ip_addr=192.168.200.1
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_passphrase=ynhsktfs
rsn_pairwise=CCMP
wpa_group_rekey=86400
具体含义百度,或者看rtl8192官方给的pdf
可能得用到dnmasq
# DHCP
dhcp-authoritative
domain-needed
dhcp-range=192.168.200.20,192.168.200.90,255.255.255.0,12h
interface=wlan0
dhcp-leasefile=/tmp/dhcp.leases
# DNS
bogus-priv
resolv-file=/tmp/resolv.conf
addn-hosts=/tmp/hosts
listen-address=192.168.200.1,127.0.0.1
WPA_SUPPLICANT
WPA_CLI commands
Scaning AP and See Results
wpa_cli -p/var/run/wpa_supplicant scan
wpa_cli -p/var/run/wpa_supplicant scan_results
Connect to AP
a:OPEN
wpa_cli -p/var/run/wpa_supplicant remove_network 0
wpa_cli -p/var/run/wpa_supplicant ap_scan 1
wpa_cli -p/var/run/wpa_supplicant add_network
wpa_cli -p/var/run/wpa_supplicant set_network 0 ssid '"dlink"'
wpa_cli -p/var/run/wpa_supplicant set_network 0 key_mgmt NONE
wpa_cli -p/var/run/wpa_supplicant select_network 0
b. WEP40 with open system
wpa_cli -p/var/run/wpa_supplicant remove_network 0
wpa_cli -p/var/run/wpa_supplicant ap_scan 1
wpa_cli -p/var/run/wpa_supplicant add_network
wpa_cli -p/var/run/wpa_supplicant set_network 0 ssid '"dlink"'
wpa_cli -p/var/run/wpa_supplicant set_network 0 key_mgmt NONE
wpa_cli -p/var/run/wpa_supplicant set_network 0 wep_key0 1234567890
wpa_cli -p/var/run/wpa_supplicant set_network 0 wep_tx_keyidx 0
wpa_cli -p/var/run/wpa_supplicant select_network 0