史上最全面的Buffalo WHR-G300N CH v2 刷OpenWrt教程
Buffalo WHR-G300N CH v2 刷OpenWrt、有两种办法、一种是Windows下刷、一种是在linux下使用tftp刷、
Buffalo WHR-G300N-CH v2的openwrt固件在这个地址下载:
http://downloads.openwrt.org/snapshots/trunk/ar71xx/
openwrt官方对G300N v2的支持时有时无、还没有正式支持、
由于硬件一样、我们可以下载使用WHR-G301N或者WHR-HP-G300N的固件、
而这两款路由也没有得到openwrt正式的支持、
openwrt每次会发布G301N和HP-G300N的openwrt固件、而每次发布没几天、该固件就会被openwrt取消下载、
所以http://downloads.openwrt.org/snapshots/trunk/ar71xx/这个链接里偶尔才会有对应的固件下载、
为了提供方便、在这里我提供下载、
squashfs-factory版
squashfs-sysupgrade版
squashfs-tftp版
内核3.2.6
提前说一下、这个路由是刷不死的、不管怎样都可以用linux下tftp刷回、
Ⅰ.Windows下:
我们需要用到两个工具、
1.hfs (点此下载hfs)
2.Telnet
Windows7默认没有开启telnet功能、在此讲述一下telnet的开启方法、
控制面板-程序-程序和功能-打开或关闭Windows功能、
把telnet服务端和telnet客户端勾选、确定、
下载上面提供的sysupgrade版固件、
使用hfs挂载、挂载方法:
{
挂载方法:
①.打开hfs、
menu-IP Adress、选择你的路由给你电脑分配的IP地址、
(一般为192.168.1.?、图中我的即是192.168.36.2)
把固件包拖到左侧“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下刷路由教程、刷好后却不能打开配置页面我将在另一篇文章中详细描述、
http://zzsjlove.diandian.com/2012/04/whr-g300n-v2-openwrt-luci/
Ⅱ.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并不能正常打开、我会在另一篇文章中详细解说、
http://zzsjlove.diandian.com/2012/04/whr-g300n-v2-openwrt-luci/
PS:ubuntu下tftp刷路由的方法可以刷回官方固件、
PS:openwrt下刷回官方只能用tftp的方法、而openwrt下刷回DD-wrt可以用这个固件:
whr-g300nv2-openwrt-to-dd.bin
用这个固件在op下页面升级到dd、
刷到DD后建议reset一次、或者再刷DD的更新版本即可、
史上最全面的Buffalo WHR-G300N CH v2 刷OpenWrt教程的更多相关文章
- 史上最全面的SignalR系列教程-2、SignalR 实现推送功能-永久连接类实现方式
1.概述 通过上篇史上最全面的SignalR系列教程-1.认识SignalR文章的介绍,我们对SignalR技术已经有了一个全面的了解.本篇开始就通过SignalR的典型应用的实现方式做介绍,例子虽然 ...
- 史上最全面的SignalR系列教程-3、SignalR 实现推送功能-集线器类实现方式
1.概述 通过前两篇 史上最全面的SignalR系列教程-1.认识SignalR 史上最全面的SignalR系列教程-2.SignalR 实现推送功能-永久连接类实现方式 文章对SignalR的介绍, ...
- 史上最全面的SignalR系列教程-4、SignalR 自托管全解(使用Self-Host)-附各终端详细实例
1.概述 通过前面几篇文章 史上最全面的SignalR系列教程-1.认识SignalR 史上最全面的SignalR系列教程-2.SignalR 实现推送功能-永久连接类实现方式 史上最全面的Signa ...
- 史上最全面的SignalR系列教程-5、SignalR 实现一对一聊天
1.概述 通过前面几篇文章 史上最全面的SignalR系列教程-1.认识SignalR 史上最全面的SignalR系列教程-2.SignalR 实现推送功能-永久连接类实现方式 史上最全面的Signa ...
- 史上最全面的SignalR系列教程-6、SignalR 实现聊天室
1.概述 通过前面几篇文章对SignalR的详细介绍.我们知道Asp.net SignalR是微软为实现实时通信的一个类库.一般情况下,SignalR会使用JavaScript的长轮询(long po ...
- 史上最全面的SignalR系列教程-目录汇总
1.引言 最遗憾的不是把理想丢在路上,而是理想从未上路. 每一个将想法变成现实的人,都值得称赞和学习. 致正在奔跑的您! 2.SignalR介绍 SignalR实现服务器与客户端的实时通信 ,她是一个 ...
- 史上最全面的Docker容器引擎使用教程
目录 1.Docker安装 1.1 检查 1.2 安装 1.3 镜像加速 1.4 卸载Docker 2.实战Nginx 3.Docker命令小结 4.DockerFile创建镜像 4.1 Docker ...
- 史上最全面的Spring Boot Cache使用与整合
一:Spring缓存抽象 Spring从3.1开始定义了org.springframework.cache.Cache和org.springframework.cache.CacheManager接口 ...
- 史上最全面的Neo4j使用指南
Neo4j图形数据库教程 Neo4j图形数据库教程 第一章:介绍 Neo4j是什么 Neo4j的特点 Neo4j的优点 第二章:安装 1.环境 2.下载 3.开启远程访问 4.测试 第三章:CQL 1 ...
随机推荐
- 【Go命令教程】10. go fix 与 go tool fix
命令 go fix 会把指定 代码包 的所有 Go 语言源码文件中的旧版本代码修正为新版本的代码.这里所说的版本即 Go 语言的版本.代码包的所有 Go 语言源码文件不包括其子代码包(如果有的话)中的 ...
- jquery智能弹出层,自己主动推断位置
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 【linux】linux 下 shell命令 执行结果赋值给变量【两种方式】
方法1:[通用方法] 使用Tab键上面的反引号 例子如下: find命令 模糊查询在/apps/swapping目录下 查找 文件名中包含swapping并且以.jar结尾的文件 使用反引号 引住命令 ...
- Matlab Codes and Datasets for Feature Learning
Matlab Codes and Datasets for Feature Learning 浙江大学CAiDeng提供的Matlab特征学习Code.
- Mac下启动AndroidStudio失败
系统环境: OSX Yosemite 10.10.1 (14B25) JAVA版本:1.8.0_11 Android Studio 版本:1.0.1 问题:Android Studio was una ...
- 国家code和区号计算
因为项目中要用到这个功能.实现类似微信注冊时能够选择国家并得到对应的区号.还要推断号码正确与否的正则. 找到了 libPhoneNumber-iOS 标准化电话号码库 https://github.c ...
- JAVA生成并导出json文件
将一个list集合转换成json文件并导出: 数据集合: List<Object> agencyList = new ArrayList<Object>(); Map<S ...
- android studio运行时报错AVD Nexus_5X_API_P is already running解决办法
运行刚搭建好的Android环境时会报这种错误: AVD Nexus_5X_API_P is already running. If that is not the case, delete the ...
- 利用Bootstrap+Avalonjs+EntityFramework 开发ASP.NET WebForm应用程序(上)
本文将介绍如何利用Bootstrap+Avalonjs+EntityFramework 开发ASP.NET WebForm应用程序,分为上下两篇.上篇主要介绍实现,下篇主要介绍界面. 打开Visual ...
- org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive type setter of com.xugao.bean.MemberLevel.memberpointrate
由于数据不合法的原因,好几次遇到: org.hibernate.PropertyAccessException: Null value was assigned to a property of pr ...