Pages

Sunday, 25 November 2012

支持刷openwrt或dd-wrt的路由器列表

http://wiki.openwrt.org/toh/start#tp-link
http://www.dd-wrt.com/wiki/index.php/Supported_Devices#TP-Link

我的路由器是tp-link wr841n v8,它的openwrt 相关程序:
openwrt-ar71xx-generic-tl-wr841n-v8-jffs2-facto..> 25-Nov-2012 04:58             3932160
openwrt-ar71xx-generic-tl-wr841n-v8-jffs2-sysup..> 25-Nov-2012 04:58             3407876
openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-fa..> 25-Nov-2012 05:00             3932160
openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-sy..> 25-Nov-2012 05:00             2555908
 
 ROM分两种,分别以factory和sysupgrade固件,以factory结束的用来从官方固件刷OpenWrt,
以sysupgrade结束的固件是用来更新已有的OpenWrt。所以,新买的路由器应该选择对应的factory固件。
from http://downloads.openwrt.org/snapshots/trunk/ar71xx/ 
 (这是snapshot的代码库,更新比较频繁,如果使用了一段时间后,装包提示版本问题,
那么需要重新刷入最新的snapshot版包才行)
---------------------------------------------------------------
 
刷OpenWrt、有两种办法、一种是Windows下刷、一种是在linux下使用tftp刷.
openwrt固件在这个地址下载:
http://downloads.openwrt.org/snapshots/trunk/ar71xx/ 

Ⅰ.Windows下:
我们需要用到两个工具、
1.hfs  (点此下载hfs-https://skydrive.live.com/redir.aspx?cid=64ea5fcc7735e8c6&resid=64EA5FCC7735E8C6!489&parid=64EA5FCC7735E8C6!475&authkey=!ANux1pCO_YFjbdo
 或在此http://www.xdowns.com/soft/softdown.asp?softid=28866下载)
 2.Telnet
Windows7默认没有开启telnet功能、在此讲述一下telnet的开启方法、
控制面板-程序和功能-打开或关闭Windows功能、
把telnet服务端和telnet客户端勾选、确定.

下载上面提供的sysupgrade版固件-http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-sysupgrade.bin
使用hfs挂载,挂载方法:
{
挂载方法:
①.打开hfs、
menu-IP Adress、选择你的路由给你电脑分配的IP地址、
(一般为192.168.1.?)
把固件包拖到左侧“Virtual File System”下、

telnet或者ssh登录路由、输入以下命令:
    cd /tmp
    wget http://192.168.1.109/openwrt-ar71xx-generic-whr-g301n-squashfs-sysupgrade.bin   在这里提示一下
①.可把固件名改为“1.bin”再挂载、这里的命令就可以简写了、
②.这里的192.168.1.109应改为本机IP、像如图、我就应该改为192.168.36.2,
    mtd -e linux -r write openwrt-ar71xx-generic-whr-g301n-squashfs-sysupgrade.bin linux 

(附固件改名后菜鸟命令:
    cd /tmp
    wget http://192.168.1.109/1.bin
    mtd -e linux -r write 1.bin linux 
)
 
等待画面显示失去主机连接后、
等待1分钟、待power和router亮起、说明刷机成功了.
 
 
Ⅱ.Linux下(以ubuntu为例):

下载tftp版固件(上文有提供下载)、

同样还是建议把固件名改为1.bin

把固件放入ubuntu的主文件夹(home)、

先把ubuntu联网、怎么联网我就不赘述了、

安装tftp

在终端中输入:


sudo apt-get update
sudo apt-get install tftp

 
 
在终端中输入
ifconfig

查看你的网卡哪个是本地网卡、如果是虚拟机用户看清楚哪个是连接虚拟机与主机的网卡、哪个是直接连接路由器的网卡、
用网线连接电脑网口与路由LAN口、
在终端输入:
sudo service networking stop                                              Ubuntu 9.10用户用这个命令、
sudo service network-manager stop                                    Ubuntu 10.4或以上系统用这个命令、
 

 
sudo ifconfig eth0 192.168.11.2                                     必须是这个IP段、即使你已经改了路由的IP、这里你还是必须要配置本地网卡为192.168.11.?、eth0是本地网卡、上文有提到要注意、
sudo ifconfig eth0 netmask 255.255.255.0                       (此步可以省略)
sudo arp -s 192.168.11.1  AABBCCDDEE5F                     ‘AABBCCDDEEFF’改为你的路由器mac地址(在路由器背面有标签)、可加冒号也可不加、

  拔掉路由电源、
在终端输入
tftp
tftp> verbose
提示Verbose mode on.
tftp> binary
提示 mode set to octet.
tftp> trace
提示 Packet tracing on.
tftp> rexmt 1
tftp> timeout 60
tftp> connect 192.168.11.1
tftp> put 1.bin

这时立即插上路由器电源、待ubuntu显示正在推送固件、然后推送完成、会等待输入,
输入 quit
退出tftp .
输入 exit
退出终端.等待路由重启完成、亮起power与router、刷机完成、
刷机后在浏览器输入 192.168.1.1并不能正常打开、参见下面文章中的详细解说. 
PS:ubuntu下tftp刷路由的方法可以刷回官方固件、
PS:openwrt下刷回官方只能用tftp的方法.
---------------------------------------------------------------
刷完OpenWrt在浏览器无法访问http://192.168.1.1的解决办法
   

其实问题很明显、

是因为刷了trunk版固件、

并没有集成luci、

那接下来就是装luci、但是装luci需要联网(不过其实不联网其实也是可以安装的)

我说的联网是让路由器联网、而不是网线接路由-路由接电脑-然后电脑拨号上网这种联网、

如何让路由器联网呢?

1、最简单的方法、如果你有两个路由、或者你的猫带有路由功能、

设置你另外一个路由自动拨号、并把LAN口设置DHCP自动分配IP地址、然后用网线连接该路由LAN口到你需要配置的路由的WAN口、再把你需要配置的路由LAN口用网线与电脑相连、

2、配置路由文件、让其自动拨号、

如果你没有另外一个路由那你就要稍微动一下手指了、

如果是刚刷了OpenWrt的路由、是没有密码的、我们没有密码不能使用ssh登录或者winSCP、

所以我们先设置密码、

用网线连接路由LAN口与电脑、

电脑打开cmd、

    输入telnet 192.168.1.1回车

如果提示telnet不是可执行的命令、需要在

控制面板-程序-程序和功能-打开或关闭Windows功能、

把telnet服务端和telnet客户端勾选、确定、

执行上述命令后将登录到路由、我们设密码、

输入

    passwd root

提示

Changing password for root

New password:

输入密码、这里注意、你输入时屏幕不会有反应、输入完密码回车就是了、

提示

Retype password:

再次输入密码、输入完回车、

虽然在telnet里也可以配置联网、但是我建议使用winSCP来配置、比较清晰、操作也比较方便、

下载winSCP、运行、

主机名填写 192.168.1.1

端口默认22

用户名   root

密码输入你刚刚设置的密码、

协议设置为SCP

点登录、

可能会提示group错误、确定就是了、不会有影响、

进入到/etc/config/  文件夹、

修改network文件、双击打开、提示错误直接确定、

我的配置文件如下、大家在wan的配置下、修改proto为pppoe并加上用户名密码、具体参照我的配置:

    config interface ‘loopback’
    option ifname ‘lo’
    option proto ‘static’
    option ipaddr ’127.0.0.1′
    option netmask ’255.0.0.0′

    config interface ‘lan’
    option ifname ‘eth0′
    option type ‘bridge’
    option proto ‘static’
    option ipaddr ’192.168.36.1′
    option netmask ’255.255.255.0′

    config interface ‘wan’
    option ifname ‘eth1′
    option _orig_ifname ‘eth1′
    option _orig_bridge ‘false’
    option proto ‘pppoe’
    option username ‘ABCDEFG’                    ‘ABCDEFG’改为你的宽带帐号、
    option password ’123456′                          ‘123456’改为你的宽带密码、

    config switch
    option name ‘eth0′
    option reset ’1′
    option enable_vlan ’1′

    config switch_vlan
    option device ‘eth0′
    option vlan ’1′
    option ports ’0 1 2 3 4′

点击保存、保存时会有错误、确定就是了、

成功保存后(可关闭再次打开该文件看看是否已经成功保存、)、

重启路由即可、(重启就是拔了电源再插上)

3、使用无线连接、

因为此方法不太实用、在此我就不详述了、

路由器联网后、

我们使用putty这个软件使用ssh登录、(因为我们已经设置了密码、所以不能用telnet登录了)

打开putty

主机名输入 192.168.1.1

端口选择 22

连接类型选择ssh

用户名root

密码为你自己设置的、

登录后

逐步输入以下命令、

    opkg update

    opkg install luci luci-i18n-chinses

等待下载并安装好luci以及luci中文包后、再输入以下命令启用页面、

    /etc/init.d/uhttpd enable

    /etc/init.d/uhttpd start

现在打开你的浏览器、输入 http://192.68.1.1
看看、配置页面是不是出现了?