昨天下班下的晚,回来后时间不多,其实7688中继这个事儿其实一直堵在心里,好在调试顺利,有些注意的地方注意到位就可以了。另外透露一句,总结上一版的教训,改后的widora马上也要焊接啦
第一步,编译注意:
无线基于mtkop,也就是mtksdk-openwrt-3.10.14-20150311-d021c937.tar.bz2
编译选项中,需要选中AP_Client Support,
MTK Properties--->Drivers-->kmod-mt7628-->WiFi Operation Modes-->[*]AP-Client Support
另外,确认uci2dat包已经选择
MTK Properties--->Applications--><*>uci2dat
这里有个大坑,soso告诉我,mtk提供的uci2dat工具是不能解析uci配置的ApCli字段的,我勒个去。
所以这里有一个换包操作。uci2dat.zip
替换package/ramips/applications/uci2dat后再编译即可
第二步,设置注意:
无非就是想做万能中继,首先,wireless中给ra0增加以下字段,注意大小写!!!!!
option ApCliEnable '1'
option ApCliSsid '上级路由ssid'
option ApCliAuthMode 'WPA2PSK'
option ApCliEncrypType 'AES'
option ApCliWPAPSK '密码'
还需修改channel参数与上级ap一致;
还需注意,本级IP网段必须与上级AP网段不同,具体需要修改network中的lan ipaddr字段
最后需要注意的是,将apcli0假如到network中wan中。
点击(此处)折叠或打开
config interface 'lan'
option ifname 'eth0.1'
option force_link '1'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.8.1'
option netmask '255.255.255.0'
option ip6assign '60'
option macaddr '00:0C:43:E1:76:29'
config interface 'wan'
option ifname 'apcli0'
option proto 'dhcp'
option macaddr '00:0C:43:E1:76:2A'
如果不知道怎么查看上级路由的信道,可使用如下命令:
iwpriv apcli0 set SiteSurvey=0
sleep 2
iwpriv apcli0 get_site_survey
相信此时已经看到一大批信号列表了,找到上级路由名字,信道,加密方式,并设置到ApCli字段中。
点击(此处)折叠或打开
config wifi-device mt7628
option type mt7628
option vendor ralink
option band 2.4G
option channel 11
option autoch 2
config wifi-iface
option device mt7628
option ifname ra0
option network lan
option mode ap
option ssid mt7628-7629
option encryption psk2
option key 12345678
option ApCliEnable '1'
option ApCliSsid '4-6-501-A'
option ApCliAuthMode 'WPA2PSK'
option ApCliEncrypType 'AES'
option ApCliWPAPSK 'xxxxxxxxxxxx'
第三步,重启网络:
/etc/init.d/network restart
此时用ifconfig apcli0查看,是否成功链接上级AP,成功连接的话会获取IP地址:
点击(此处)折叠或打开
root@OpenWrt:/etc/config# ifconfig apcli0
apcli0 Link encap:Ethernet HWaddr 02:0C:43:01:76:28
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::c:43ff:fe01:7628/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
ping 试试
点击(此处)折叠或打开
root@OpenWrt:/etc/config# ping www.baidu.com
PING www.baidu.com (119.75.217.109): 56 data bytes
64 bytes from 119.75.217.109: seq=0 ttl=56 time=12.469 ms
64 bytes from 119.75.217.109: seq=1 ttl=56 time=9.974 ms
64 bytes from 119.75.217.109: seq=2 ttl=56 time=9.742 ms
64 bytes from 119.75.217.109: seq=3 ttl=56 time=11.439 ms
^C
--- www.baidu.com ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 9.742/10.906/12.469 ms
root@OpenWrt:/etc/config#
其实,重启网络后,有一句最重要的打印如下,看见它就说明已经链接了上级AP:
点击(此处)折叠或打开
root@OpenWrt:/etc/config# [ 2817.944000] Rcv Wcid(1) AddBAReq
[ 2817.952000] Start Seq = 00000002
此时,尽情的通过7688上网吧。
原作者:guangmangdz