Openwrt 刷机
产品准备:
1. TP-Link 无线路由(TL-WR703N)
2. USB-TTL 串口转换
3. 导线若干
4. 其他焊接工具
Openwrt:
Openwrt official web site for 703n:
http://wiki.openwrt.org/ru/toh/tp-link/tl-wr703n
固件系统:
Openwrt bin 下载地址:
openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin
如果link不可用,可直接到 http://wiki.openwrt.org/toh/tp-link/tl-wr703n 页面的flashing部分下载。
刷机步骤:
1. 通过路由器原有页面刷机
可以参考如下连接:
http://www.geek-workshop.com/thread-2418-1-1.html
只要包下的没问题,通过路由自带的页面中软件升级的功能可以比较容易的刷固件。
在此不累述。
2. 通过串口刷机
(待续。。)
系统网络配置:
有两种配置方式,一种是配置后可以通过路由连接到外网,但是路由器必须要通过LAN口连接上级路由器。另一种方式是刷机后的路由器通过wifi连接到上级路由器,并以中继的方式连接PC和上级路由器,达到不用切换网络也可以上外网。以下的配置都是经过真实测试的,本人都尝试过并成功连接网络。
下面分别介绍:
一、配置网络后的效果是PC可以通过刷机后的路由器的LAN口连接到外网。
网络配置参考的是:
http://www.right.com.cn/forum/thread-50257-1-1.html
防止不能访问,再次累述下。
使用的是Openwrt的uci命令:
1. 先配置有线
1.1 设置lan ip(即访问路由的ip)
uci set network.lan.ipaddr=[lan ip]
例如:
此处我设置的路由ip为192.168.1.2 (因为我连接上机路由,上级路由的ip是192.168.1.1 以防ip冲突)
1.1.1 pppoe用户
uci set network.wan.proto=pppoe //设置wan口类型为pppoe uci set network.wan.username=[上网帐户] uci set network.wan.password=[上网密码] //这两行设置pppoe用户名和密码
(因为实验网络不是直接连接,所以这个配置没有试过)
1.1.2 如果要挂在上级路由下面就这样
uci set network.wan.proto=none //关掉wan uci set network.lan.gateway=[上级路由ip] //网关指向上级路由 uci set network.lan.dns=[上级路由ip] //dns指向上级路由 uci set dhcp.lan.ignore=1 //关掉lan的dhcp
例如:
gateway '192.168.1.1'
dns '192.168.1.1'
2. 配置无线
uci set wireless.@wifi-device[0].disabled=0 //打开无线 uci set wireless.@wifi-device[0].txpower=17 //设置功率为17dbm 太高会烧无线模块 uci set wireless.@wifi-device[0].channel=6 //设置无线信道为6 uci set wireless.@wifi-iface[0].mode=ap //设置无线模式为ap uci set wireless.@wifi-iface[0].ssid=[自己设置SSID] //设置无线SSID uci set wireless.@wifi-iface[0].network=lan //无线链接到lan上 uci set wireless.@wifi-iface[0].encryption=psk2 //设置加密为WPA2-PSK uci set wireless.@wifi-iface[0].key=[密码] //设置无线密码
例如:
ssid=Openwrt
3. 应用配置
uci commit //应用 /etc/init.d/network restart //重启网络服务
4. 测试
用PC查找名字为自定义的ssid(如:Openwrt),然后连接,输入密码。
SSH到刚才设置的路由IP(192.168.1.2),然后ping baidu.com。如果没有丢包,就说明配置成功。当前的Openwrt可以访问外网。
root@OpenWrt:~# ping baidu.com PING baidu.com (220.181.57.216): 56 data bytes 64 bytes from 220.181.57.216: seq=0 ttl=49 time=20.559 ms 64 bytes from 220.181.57.216: seq=1 ttl=49 time=20.497 ms
TIPS:
network的配置:
root@OpenWrt:~# cat /etc/config/network config interface 'loopback' option ifname 'lo' option proto 'static' option ipaddr '127.0.0.1' option netmask '255.0.0.0' config globals 'globals' option ula_prefix 'fd35:7a59:59b5::/48' config interface 'lan' option ifname 'eth0' option force_link '1' option type 'bridge' option proto 'static' option netmask '255.255.255.0' option ip6assign '60' option gateway '192.168.1.1' option dns '192.168.1.1' option ipaddr '192.168.1.2'
wireless的配置:
root@OpenWrt:~# cat /etc/config/wireless config wifi-device 'radio0' option type 'mac80211' option hwmode '11g' option path 'platform/ar933x_wmac' option htmode 'HT20' option disabled '0' option txpower '17' option channel '6' config wifi-iface option device 'radio0' option network 'lan' option mode 'ap' option ssid 'Openwrt' option encryption 'psk2' option key '1234567'
二、通过刷机后的路由器的wan口连接外网(中继连接)。
1. 用网线连接PC和TP703N路由器,此时PC已经断开其他网络。
2.在浏览器里输入 http://192.168.1.1 (某人路由的访问地址),如下图,为已经刷好Openwrt固件的路由登陆界面:
3. 登陆,如果没有设置过密码,默认是admin。然后选择Network -> Interfaces
4. 配置Lan口。选择Eidt按钮。
设置和上级路由不通的网段,本例用的是192.168.10.1
选择Network-> Wifi
选择上级无线路由的AP,然后点击Join Network 按钮
输入上级路由的访问密码,并选择wan选项,然后点击submit 提交
查看具体的配置信息,这里需要注意的是在Interface Configure选项卡里ESSID一定要和之前选择的AP的SSID的名字一直,否则会导致连接失败。Mode是Client,Network是wwan.
确认信息无误后点击Save&Apply 按钮。
在Network-> Interface页面里查看刚才创建的wan的信息,如果连接成功上级的路由会自动分配一个IP给当前的703N,显示如下图
配置的Lan的IP和wan的ip都已经分配好了。表示上级的DHCP和703N的IP都已经连接并配置好了。
6. 创建703N的AP
选择Network->Wifi页面,然后点击Add按钮,如下图
在Wireless Security标签设置访问密码。
最后,保持并应用该AP。
下面我们来查看配置好的上级路由的AP和刷机路由的AP
到此我们可以看到,上级的路由作为Client,703N路由作为master。
我们就可以在PC的网络查找里找到我们配置好的中继路由(Openwrt,即 703N路由)。
我们就可以成功通过703N来连接到外网了。