rtl8192fu配置成station && ap 和内核裁剪的方法

参考:
Linux命令行手动配置无线wiff网络 iwconfig
https://blog.csdn.net/u012349696/article/details/52524124
Linux下wifi连接AP后自动获取IP地址。
https://blog.csdn.net/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.csdn.net/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 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_kerneler

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值