本文主要功能主要是利用OpenWRT系統uci命令實現無線中繼,主要是利用uci程序修改/etc/congfig/目錄下的配置文件。實現步驟如下主要分為以下幾步:
1) 安裝 relayd (opkg安裝或者make menuconfig里加載)
opkg update
opkg install relayd
/etc/init.d/relayd enable
2) 開啟系統wifi功能
uci set wireless.@wifi-device[0].disabled=0 //開啟wifi
uci commit wireless //寫入配置到config文件
wifi //wifi重啟
3) 創建 wwan 網絡接口
uci set network.wwan=interface //network中添加wwan接口
uci set network.wwan.proto=dhcp //開啟dhcp服務
uci commit network //寫入該配置到配置文件
4) 連接上級路由節點 (我的上級路由ssid:"eSo")
uci set wireless.radio0.channel=11 //改變信道,此配置可省略
uci set wireless.@wifi-iface[0].network=wwan //設置wwan網絡接口
uci set wireless.@wifi-iface[0].mode=sta //設置station客戶端模式
uci set wireless.@wifi-iface[0].ssid=eSo //需要連接的無線ssid
uci set wireless.@wifi-iface[0].encryption=psk2 //加密方式PSK2
uci set wireless.@wifi-iface[0].key=20130828 //需要連接的ssid 密碼
uci commit wireless //寫入配置到文件
wifi down //關閉wifi
wifi //啟動wifi
5) 設置lan口IP段,設置網關
uci set network.lan.ipaddr=192.168.10.1 //設置本地路由ip,避免與上級路由沖突
uci set network.lan.gateway=192.168.3.1 //設置網關為上上級路由網關
uci set network.lan.dns=8.8.8.8 //設置dns
uci commit network //寫入配置到文件
wifi down //關閉wifi
wifi //啟動wifi
6) 開啟本地DHCP服務器
uci set dhcp.lan.ignore="0" //關閉禁用
uci set dhcp.lan.ra_management="1" //設置
uci commit dhcp //寫入配置
7) 防火牆修改
uci set firwall.@zone[0].forward=ACCEPT //訪問
uci set firwall.@zone[0].network="lan" //lan
uci set firwall.@zone[1].forward=ACCEPT //訪問
uci set firwall.@zone[1].network="wan wwan" //wan wwan接口橋接
8) 創建AP服務端
uci add wireless wifi-iface //創建ap接口
uci set wireless.@wifi-iface[1].device=radio0 //選擇radion0設備
uci set wireless.@wifi-iface[1].network=lan //lan口
uci set wireless.@wifi-iface[1].mode=ap // AP模式
uci set wireless.@wifi-iface[1].ssid=RT5350 //AP ssid
uci set wireless.@wifi-iface[1].encryption=psk2 //加密方式
uci set wireless.@wifi-iface[1].key=12345678 //無線密碼
uci commit wireless //寫入配置
9) 網絡重啟,使中繼生效
/etc/init.d/dnsmasq restart //網絡服務重啟
/etc/init.d/firewall restart //防火牆重啟
wifi down //關閉wifi
wifi //開啟wifi
10) 測試
在完成以上配置命令后,系統將會自動連接至指定的無線節點(我的上級路由是eSo),並放出本地AP(RT5350)。
ifconfig查看結果如下:
根據以上可以看到無線wlan0已經連接到了我的上級路由(eSo),並且分配到的IP為192.168.3.13。
接下來測試本地AP連接情況:(使用計算機連接本地無線AP(RT5350))
連接后,電腦分到的IP為:192.168.10.157
此時如果上級路由eSo有網的話,當前連接的RT5350也會連上Internet.
下面是ping 百度結果:
至此,無線中繼配置全部完成。
11) 下面是我的/etc/config/目錄下面配置文件的結果,以前配置不成功的話可以參考直接利用vim 編輯器修改配置文件就可以。(呵呵,怎么快怎么來...)
network配置文件如下:
firwall配置文件:(只需要關注lan 和 wan 兩個端口的配置,即zone[0] 、zone[1])
dhcp配置文件:
wireless配置文件:
ok,敲完,收工...