MakerRouter创客路由openwrt编译教程

MakerRouter创客路由openwrt编译教程
MakerRouter创客路由openwrt编译教程

《MakerRouter 创客路由教程》4.0 编译定制:编译OpenWrt固件

驿外断桥边,寂寞开无主。已是黄昏独自愁,更著风和雨。无意苦争春,一任群芳妒。零落成泥碾作尘,只有香如故~

经过了30余个章节,经过了被无数学员催着想要知道怎么编译的过程。终于教程进入到第四大部分。hoowa从来没有说过关于编译OpenWrt很多人都很好奇如何编译,其实编译本身是非常简单的事情,只是它需要积累很多其他的基础。没有人可以通过看一本书学会一项技能,看这本书同样也不能,学会一项技能靠的是自己的努力。

从4.0开始,我们的教程将围绕编译、驱动、定制OpenWrt系统。这部分将包含了AxWRT

系统如何产生的、如何根据板子去定制系统,以及如何完成简单的内核驱动程序驱动外围硬件。知识量尤为大,如果只是会个编译系统,那么不需要具备什么知识(同样,刚才讲过了,编译个系统尤为简单,但是稍微深入点都需要具备一定基础,想学会编译系统就能定制OpenWrt简直是痴人说梦!),如果想把这一大部分完全吃透,需要具备一定C语言基础。

OpenWrt编译环境

编译与交叉编译

将源代码产生CPU可以执行的目标程序这一过程叫编译,就像不同的语言之间翻译一样。通过对OpenWrt系统的编译,可以产生用来运行在教学板上的程序。

为何要交叉编译?

简单的说,就是在一种CPU上产生另外一种CPU可以执行的目标程序。因为路由器的CPU

性能实在是太低了,用其自身去完成这个编译的过程是非常非常漫长的(几天时间),而是用我们现在的电脑,可以在几个小时甚至几十分钟内产生,所以叫交叉编译。

Host:宿主机,专有名词,表示用来编译用的机器,一般是我们的电脑或虚拟机

Target:目标机,在这里就表示我们的教学板

AxWRT与OpenWrt关系

在刚开始的章节我们有介绍过AxWRT就是基于OpenWrt所产生的一个用于教学的版本。AxWRT 在源代码层面与OpenWrt的Barrier Breaker发行版几乎完全一致,区别在于:

根据教学板的接口定义AxWRT专门处理了

删除掉了与教学板无关的其他硬件支持

由于官方OpenWrt不同程度的存在一些软件包的Bug在教学过程中做了部分软件包的修正 捆绑了所需要的feeds中的软件包,节省编译时需要连接网上资源的步骤

AxWRT源代码:https://www.360docs.net/doc/ec4167542.html,/axwrt/system/

AxWRT的SVN源代码仓库:https://www.360docs.net/doc/ec4167542.html,/opensvn/axwrt/

OpenWrt的版本关系

OpenWrt存在很多发行版几乎没间隔一段时间的发行版都有一定变化,有的变化非常大。目前已知的发行版有:

开发代号Backfire 10.03.1:2012年发行

开发代号Attitude Adjustment 12.09:2013年发行

开发代号Barrier Breaker 14.07:2014年发行

开发代号Trunk:主线版本,无明确版本号,每一年根据Trunk产生一个发行版。OpenWrt官方预编译好发行版本:https://www.360docs.net/doc/ec4167542.html,/

OpenWrt官方源代码下载:https://https://www.360docs.net/doc/ec4167542.html,/wiki/GetSource

相比较Trunk中的内容比较新,但是存在诸多Bug。各发行版功能比较稳定,适于产品开发。一个标准的官方源代码,不一定适合你手中的硬件,这个时候就需要进行定制,这个定制的过程包括参数定义及编译。如果所使用的硬件没有被OpenWrt官方所支持,就需要有具备嵌入式Linux经验的工程是进行移植。

准备编译环境

在开始编译之前,需要准备一系列系统环境和软件包。在编译时我们可以使用在第二大部分中所创建的Centos虚拟机或是独立电脑。

现在准备好你的编译用系统,并且将其开机确保网络连接畅通!

编译所需的电脑

独立电脑,安装Centos操作系统或是安装Ubuntu操作系统亦可

CPU性能足够,首次编译所需要时间在30分钟到5个小时之间,视电脑性能而定,多核处理器效率更高。具备至少2G以上内存

至少20G的硬盘空间,硬盘的读写速度直接影响到编译速度,SSD固态硬盘是最好的

Centos所需编译软件包YUM安装

YUM是Centos系统下的安装工具,可以安装上我们全部所需的编译用软件包。

YUM工具安装时候会有提示是否继续,输入y确认继续完成安装,如果过程中有下载失败的

软件包,可以再重复执行安装,YUM会自动找到没有完成的部分给予完成。

Development Tools中包含了大量编译用工具,时间较长,如果网络不好只能等待。

[root@axwrt_host ~]# yum groupinstall "Development Tools"

[root@axwrt_host ~]# yum install wget ncurses-devel zlib-devel vim-enhanced

Ubuntu所需编译软件包

sudo apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils subversion libncurses5-dev ncurses-term zlib1g-dev gawk asciidoc libz-dev

OpenWrt固件生成

编译基本上干了啥

编译大约做了以下几件事情

首先通过刚才所下载的那些编译用的工具编译完成交叉编译工具

根据预设的参数和类型,使用交叉编译工具分别编译完成内核和个软件包

将编译好的东西打包成固件文件(一般以bin结尾)

收工!

获取AxWRT源代码

在编译OpenWrt的过程中,不能使用root超级用户,因此以下例程以帐号hoowa进行操作,请各位自己创建一个普通帐号完成后续操作。

以下两种方式获取源代码都可以!

返回当前账户主目录

[hoowa@axwrt_host /]$ cd ~

[hoowa@axwrt_host ~]$

通过SVN方式获得源代码

svn co --username axwrt --password axwrt https://www.360docs.net/doc/ec4167542.html,/opensvn/axwrt/trunk [hoowa@axwrt_host ~]$ mv trunk axwrt

通过HTTP方式获得源代码

[hoowa@axwrt_host ~]$ wget https://www.360docs.net/doc/ec4167542.html,/axwrt/system/source.tgz [hoowa@axwrt_host ~]$ tar zxf source.tgz

[hoowa@axwrt_host ~]$ mv source axwrt

获取软件包源代码

OpenWrt在编译过程中,会去不同的网站下载所需要的软件包,比如内核他就去https://www.360docs.net/doc/ec4167542.html, 下载等等,这个量很大,而且国内的网络不好,速度巨慢,为了节省这个时间hoowa已经做好了一个软件包列表来缩短AxWRT的编译时间。

这部分包很大,容量超过500MB,可以使用wget命令直接下载,也可以别的方式下载传到电脑中

[hoowa@axwrt_host ~]$ cd axwrt/

[hoowa@axwrt_host axwrt]$ wget https://www.360docs.net/doc/ec4167542.html,/axwrt/system/srcpkgs.tar [hoowa@axwrt_host axwrt]$ tar xf srcpkgs.tar

[hoowa@axwrt_host axwrt]$ mv srcpkgs dl

请将srcpkgs.tar在你的电脑上保留住,以后还可以继续用,真心是节省时间啊。OpenWrt菜单选项配置

OpenWrt菜单选择非常丰富,默认的AxWRT已经预设好了选项,如果只想体验下编译可以不做修改,如果选择错某些菜单选项可能导致编译失败,解决办法就是不断的尝试!

首次进入菜单选项,需要点时间,系统要收集整理已经预设的软件包

[hoowa@axwrt_host axwrt]$ make menuconfig

进入后屏幕中将显示出来菜单选项如图:

图4001

选项菜单的使用

1.通过键盘上下可以更换选项

2.有--->符号的选项代表有子菜单

3.通过按回车进入选项或修改选项的值

4.通过键盘左右可以选择和点击屏幕下面的按钮:Select选择、Exit退出、Help帮助、Save 保存、Load读取

5.最终确认选择Save后再选择Exit完成确认退出

选项有很多种大体上作用如下表所描述

选项作用

Target System 目标设备芯片类型,AxWRT系统只保留了Ralink RT288x/RT3xxx。教学板MT7620芯片就是RT系列的升级版

Subtarget 目标子类型,一般是具体板子类型

Target Profile 针对不同路由器的版本再做的一个明确选项参数,一般默认即可

Target Images 生成的固件文件采用何种分区格式

Global build settings 编译时的一些全局参数,这些参数与Linux内核或GCC编译器相关Advanced configuration options 高级选项参数,用于OpenWrt开发人员,一般用不上Build the OpenWrt Image Builder 除了编译固件,再编译一个固件编译环境,可以分发给团队中的其他人使用。一般是厂商不想开放自己的全部源代码,给第三方合作伙伴提供这玩

Build the OpenWrt SDK 产生OpenWrt SDK环境,就是另外一个开发环境

Build the OpenWrt based Toolchain 单独编译出OpenWrt的交叉编译工具

Image configuration 编译好的固件所附带的参数信息

Package features 一些软件包特性

Base system 基本系统命令软件包

Administration 高级管理命令软件包

Boot Loaders 引导程序,教学板不用固件附带,所以这里无选项

Development 开发用工具包

Firmware 不要被名字混淆了,这个的意思是,固件中是否带某些其他外围芯片的固件Kernel modules 内核编译参数,这里的参数都来自芯片厂对内核的预设配置

Languages 编程语言软件包

Libraries 库软件包

LuCI OpenWrt下顶顶大名的LuCI界面包

Mail 电子邮件相关的软件包

Multimedia 多媒体软件包

Network 与网络相关的软件包

Sound 声音相关的软件包

Utilities 工具软件包

Video Streaming 视频流服务软件包

并不是所有软件包都选上了,实际上如果所有软件包都选上了一方面编译时间可能要按天计算,另外一方面用来存放固件的FLASH容量也不足以安装,所以OpenWrt的选择菜单在软件包选上有两种策略:

Buildin:绑定,直接将所选择软件包绑定到固件中

Module:模块,所选择软件包不绑定到固件中,以模块的形式存在,在需要时候使用opkg 命令安装

更换两种策略的方式很简单,选中要更换策略的软件包,按空格键,如果显示为[*]则表示绑定,如果显示为[M]则表示模块。

hoowa推荐第一次编译不要去调整软件包,软件包存在很多依赖关系,先成功一次,然后再去选择哪些想要,哪些不想要!

编译固件

编译使用make指令可以满足多种不同的功能,选择一种方式来完成编译即可。

不显示信息直接编译

[hoowa@axwrt_host axwrt]$ make

采用双核编译,采用多核编译可以节省至少30%的编译时间,但是由于软件包依赖原因可能会产生编译错误,并且不易于查找错误。参数-j 后面跟随线程的数量,根据CPU的配置来填写。

[hoowa@axwrt_host axwrt]$ make -j 2

显示全部信息采用双核编译(挂起到后台处理,但是前台显示编译信息)

[hoowa@axwrt_host axwrt]$ make V=99 -j 2 &

最Nice稳妥的单编译参数(挂起到后台处理,但是前台显示编译信息)

[hoowa@axwrt_host axwrt]$ make V=99 &

关于编译中断了?

如果编译过程中遇到错误或手工停止掉编译都没问题,只要重复执行编译命令,他会从中断的地方继续编译。

首次编译!

OpenWrt首次编译因为要先编译交叉编译工具,因此所花费的时间是最长的,之后只要没执行过清理,再编译就会只编译改变的地方,那样编译时间就很短了。

清理编译

有的时候我们需要清理掉已经做过的某些编译操作。

清理掉包括已编译好:固件、软件包

[hoowa@axwrt_host axwrt]$ make clean

清理掉包括已编译好:交叉编译工具、固件、软件包

[hoowa@axwrt_host axwrt]$ make dirclean

清理掉所有内容(包含axwrt定义的软件包信息,这个清理将返回OpenWrt原始状态)[hoowa@axwrt_host axwrt]$ make distclean

编译完成后

编译完成后在axwrt/bin目录下就会有所编译出来的固件文件以及所有的软件包文件。将其中以sysupgrade.bin结尾的文件提出,使用之前章节所学习的方法就可以烧写到教学板中进行测试。

[hoowa@axwrt_host axwrt]$ ls bin/ramips/

md5sums

openwrt-ramips-mt7620n-root.squashfs openwrt-ramips-mt7620n-vmlinux.bin packages

openwrt-ramips-mt7620n-mr808-squashfs-sysupgrade.bin

openwrt-ramips-mt7620n-uImage.bin openwrt-ramips-mt7620n-vmlinux.elf

OpenWrt源码预设

Feeds源

OpenWrt的源码中仅包含了基本软件,其他软件都是从外围源上下载的软件包。这些软件包统称为Feeds源。

查看当前Feeds源的下载地址

[hoowa@axwrt_host axwrt]$ cat feeds.conf.default

src-git packages https://https://www.360docs.net/doc/ec4167542.html,/openwrt/packages.git;for-14.07

src-git luci https://https://www.360docs.net/doc/ec4167542.html,/openwrt/luci.git;luci-0.12

src-git routing https://https://www.360docs.net/doc/ec4167542.html,/openwrt-routing/packages.git;for-14.07

src-git telephony https://https://www.360docs.net/doc/ec4167542.html,/openwrt/telephony.git;for-14.07

src-git management https://https://www.360docs.net/doc/ec4167542.html,/openwrt-management/packages.git;for-14.07 src-git oldpackages https://www.360docs.net/doc/ec4167542.html,/14.07/packages.git

默认的时候是通过这个位置获得的软件包,下载全部Feeds源并且安装到源代码中的语法如下

./scripts/feeds update -a

./scripts/feeds install -a

在教学系统AxWRT中已经下载完成全部Feeds软件包,只是默认没有选中,如想生成一个不包含任何东西的纯净系统,要清理掉全部信息

make distclean

所有来自Feeds的软件包都被下载到feeds/文件夹下并且生成了相应的索引文件用于OpenWrt的菜单选项显示用。

OPKG自定义软件仓库

我们知道在AxWRT系统中的软件包管理工具opkg可以在线下载软件包,这个在线下载的地址也是可以配置的。

在OpenWrt菜单选项中:

1.选中Image configuration,然后进入

2.选中Version configuration options,然后进入

3.在Release repository处按回车,填写OPKG的下载地址

而相应的,将编译好的固件中bin/ramips/packages文件夹复制到所填写的那个OPKG地址中就可以实现自己的软件仓库。

预设编译参数文件

在获得AxWRT或完成基本的配置进行编译之前OpenWrt系统已经完成了一个预设编译参数文件,这个文件包含了全部配置信息,有兴趣的可以看下。

当前预设编译参数文件

axwrt/.config

上一次预设编译参数文件

axwrt/.config.old

开发人员会经常对着两个文件进行对比操作来检查对软件包或配置所做的修改影响了什么。OpenWrt文件夹作用

文件夹名称作用

bin/ 编译完成后的固件文件以及软件包

build_dir/ build_dir/host/ 用于编译支持的宿主系统运行程序

build_dir/target_xxx 所有软件包的编译过程文件夹

build_dir/toolchain_xxx 交叉编译工具

config/ 菜单选项的基本菜单

dl/ 各类软件包下载后源代码存放位置

docs/ OpenWrt的官方文档

feeds/ feeds源的软件包描述和配置

include/ 编译的参数描述

package/ 基本软件包描述和配置(feeds源也会软连接到这里)

scripts/ 用于完成编译的脚本程序

staging_dir/ 存放编译后的目录结构,固件通过这里的结构生成

target/ 存放各类CPU和芯片和电路板参数与专有驱动

tmp/ 临时文件

toolchain/ 交叉编译工具的源文件

tools/ 用于辅助编译的各类工具编译参数

Target/linux下平台预设文件

大部分文件夹都是用于参数整个编译流程的,其中最主要的是target/linux与package/(下章将专门讲解软件包如何制作)。Target/Linux中包含的东西拥有以下作用:

1.描述厂商芯片标准

2.描述芯片类型

3.描述芯片的驱动

4.描述针对不同的板子所使用的驱动类型

5.与菜单选项中的Target系列选项有直接对应关系

AxWRT的Target/linux下内容

[hoowa@axwrt_host axwrt]$ ls target/linux/

generic Makefile ramips

AxWRT经过精简,取消了很多教学用不上的CPU类型支持。所保留的有两个为:

generic/ 通用标准信息

ramips/ 针对MTK公司的芯片

各种不同的芯片类型在target/linux/xxx下面具体内容多少都有一定区别,这是因为各芯片厂商的芯片表述都不一致的原因,这里我们仅以ramips文件夹说明。

target/linux/ramips

文件夹名称作用

base-files/ 用于ramips芯片的固件中的普通文件,这些文件都将直接打包到固件中

dts/ Linux系统硬件驱动设备树文件,这个是OpenWrt BB版开始为MTK芯片新引进的表达方式

files/ 驱动或芯片汇编程序源代码

image/ 针对这个芯片的固件编译参数

mt7620a/ 针对MT7620A这款芯片的配置参数以及与其相关的板子说明

mt7620n/ 针对MT7620N这款芯片的配置参数以及与其相关的板子说明

mt7621/ 针对MT7621芯片的配置参数(BB版对7621支持还不成熟)

patches-3.10/ 针对内核版本3.10的芯片相关补丁,默认BB版主内核

rt288x/ 针对RT288x系列芯片的配置参数以及板子说明

rt305x/ 针对RT305x系列芯片的配置参数以及板子说明

rt3883/ 针对RT3883系列芯片的配置参数以及板子说明

OpenWrt官方版编译

OpenWrt官方版与AxWRT教学系统大体上编译流程差不多,也可以使用srcpkgs.tar加速,但效果不明显,因为官方版的软件包一旦变化还是要重新下载。如果愿意折腾,也可以折腾一下,但是那玩意Bug有时候会让编译者卡住,这个时候就需要编译者有耐心去修改Bug 了,可不要指望老师们解决,老师们不是神解决不了这么多。

下载源代码

git clone git://https://www.360docs.net/doc/ec4167542.html,/14.07/openwrt.git

下载和安装Feeds软件包

cd openwrt

./scripts/feeds update -a

./scripts/feeds install -a

进入菜单选项进行配置

make menuconfig

开始编译

make V=99

hoowa送给学习这章的同学

关于编译

OpenWrt的编译是一个熟练的过程,通过反复操作逐步熟悉系统的每个细节,关键在于建立一种自我提升的能力,OpenWrt系统变化非常快,如果学生不能跟随这种变化,那就只能继续使用AxWRT教学系统。

要问hoowa编译过多少次,hoowa自己统计过应该不少于100次以上。

关于硬件支持

目标类型的相关几个选项,直接影响到编译出来的东西是在哪里运行的。这些东西不是天然就有的,实际上是由OpenWrt开发组、芯片厂商、嵌入式工程师所贡献到项目中的,如果想要为某一款芯片增加这种支持,那么需要具备这些技能:

熟悉芯片

得到原厂的SDK资料

熟悉C语言

熟悉Makefile编写

熟悉Linux内核

熟悉OpenWrt系统

更显然的说,做这件事情需要的是嵌入式驱动和系统级工程师来完成的。

那么我们这些软件出身的人可以干嘛?简单!实现将自己的定制OpenWrt系统完美运行在市面上的路由器产品上。学习完第四大部分所有章节后,即可实现这个目的。

openwrt无线路由器设置说明

openwrt无线路由器一线多拨设置说明 注意: 该路由器的默认用户名为:root 密码:a97a04 ,wan口变为了lan1口,所以外线应插到标有数字“1”的接口,其余端口为lan口,用于连接电脑。 1、将电脑与路由器的lan口连接(暂不插外线),并把电脑的ip地址和dns设为自动获 取,在IE中输入,输入用户名和密码,开始进行如下配置。 2、进入“多wan设定”,如需3拨请设为3,4拨设为4,选择开启macvlan,并填入 生成wan口数量后保存应用。 3、点击“网络”分别设置wan、wan1、wan2…..的帐号密码(暂时不设置下图中的第 4步,等出现问题后再设置,请按图操作)。

4、点击“网络”下面的“无线”然后点击修改,设置无线的名称,和安全密码。

5、然后重新启动路由器,插上外线到标有数字“1”的接口,等待2分钟左右,进入 “状态”下面的“接口总览”查看多拨情况,下图为一线三拨连接的情况,图中wan口无法连接上网,此原因有两种可能:(1)、你的线路最多支持两拨。(2)、因为没有设置wan口的物理地址,所以不能连接,如出现此情况请返回重新第3条图中第4步设置wan中的物理地址。 6、打开360安全卫士,用里面的宽带测速功能看看自己的网速是不是提高了,360 仅作为测速参考,最好的办法是用迅雷多线程下载,进入“系统之家”网站同时下载几个大文件,然后看看迅雷窗口所显示的总下载速度,许多买家在测试带宽时进入一个误区,认为只要下载都能达到最高的速度,这点要提醒你,你的速度快,但是如果你下载文件的服务器慢,速度一样达不到,所以要选择资源多的文件进行下载,如果你是迅雷会员可以进入高速通道测试效果更佳(其实迅雷对非会员也有速度限制,你懂的)下载速度参考值:2M带宽最高下载约为200K左右。 7、常见故障处理方法。 (1)、在接口总览菜单中我的所有红色wan口都出现“需要重新连接”上不了网,出现这种可能有两

主流路由器固件dd-wrt,tomato,openwrt对比介绍

主流路由器固件dd-wrt,tomato,openwrt对比介绍 DDWRT:界面美观,设置简单直观,易用性比较好,官方固件自带的功能是三大固件中最为丰富的,对新路由的支持也十分迅速,可支持迅速的同时,由于新代码的加入,导致DDWRT经常出现一些bug,一些可能之前已经解决的bug,往往又会在之后的某次更新中原地满状态复活 ,着实让人喷血,最让人呕病的,是孱弱的QOS功能,DDWRT的qos功能只能说聊胜于无吧.功能的话到时还挺多,PPTP openvpn qos 上网控制 mac过滤等等功能都很使用,还能调节官方版本一般不提供的无线信号功率,当然还有中继,说中继可能有些人不敏感,说CW,很多人估计会会心一笑。 DDWRT:绝对是最适合新手入手的第三方固件,功能丰富,大部分机子的reset都是有效的,路由设置变砖后轻抚菊花即可涅磐重生 ,所以可以放心折腾~ Tomato:界面尚可,设置也算简单,易用性还行,流量的统计查看等功能是三个固件中做的最好的.官版Tomato是所有第三方路由固件中最为稳定的, 它的稳定源自于它的保守,官方版本的Tomato好几个版本之前就已经没有再加入什么新功能,基本是对原有软件的升级和除BUG,让本来就稳定无比的tomato更加稳定,可惜成也萧何败也萧何,Tomato的声誉来自于它的稳定,源自它的保守,它的缺点也来自于它的保守,由于这三大固件都源于思科当初开放的路由源码,所以对思科以及和思科一样采用BCM的54M芯片的机子的支持程度是最好的,但是那已经是好多年以前的机子了,原版Tomato对于那些机子的良好支持超乎想象,但是对于新的BCM的11n芯片的路由和其他如art芯片的路由,则没有准备支持的打算,不出所料的话,Tomato在之后的几年会慢慢消亡了 Openwrt:官版luci 0.9界面说实话真有点丑陋,设置不简单,也不直观,易用性也不是很好, 正在火热开发推进中的trunk的openwrt界面已经比较美观,设置也比以前简单,直观,易用性和以前差不多。 Openwrt是三大固件中扩展性最好的固件,通过扩展,可以实现很多超过路由本职工作的事情,比如脱机下载,网站,论坛,qos功能也十分强大,不逊色于Tomato的QOS,设置得当后网络表现会让人偷着乐~而且openwrt对新路由的支持也是十分迅速,个人认为是最有前途的固件,因为可以在新路由强劲CPU的支持下获得很好的性能表现,比那些老古董和洋垃圾的性能强大太多.各种功能的软件扩展包比比皆是,而且还有飞翔的天空开发的nwan多wan和限速qos。

openwrt无线路由器设置说明演示教学

无线路由器一线多拨设置说明openwrt注意: 口变为了密码:lan1wana97a04 口,,该路由器的默认用户名为:root 所以外线应插到标有数字“1”的接口,其余端口为lan口,用于连接电脑。 1、将电脑与路由器的lan口连接(暂不插外线),并把电脑的ip地址和dns设为自动获取,在IE中输入http://192.168.1.1,输入用户名和密码,开始进行如下配置。 2、进入“多wan设定”,如需3拨请设为3,4拨设为4,选择开启macvlan,并填入生成wan口数量后保存应用。 3、点击“网络”分别设置wan、wan1、wan2…..的帐号密码(暂时不设置下图中的第4步,等出现问题后再设置,请按图操作)。

4、点击“网络”下面的“无线”然后点击修改,设置无线的名称,和安全密码。

5、然后重新启动路由器,插上外线到标有数字“1”的接口,等待2分钟左右,进入“状态”下面的“接口总览”查看多拨情况,下图为一线三拨连接的情况,图中wan口无法连接上网,此原因有两种可能:(1)、你的线路最多支持两拨。(2)、因为没有设置wan口的物理地址,所以不能连接,如出现此情况请返回重新第3条图中第4步设置wan中的物理地址。 6、打开360安全卫士,用里面的宽带测速功能看看自己的网速是不

是提高了,360仅作为测速参考,最好的办法是用迅雷多线程下载,进入“系统之家”网站同时下载几个大文件,然后看看迅雷窗口所显示的总下载速度,许多买家在测试带宽时进入一个误区,认为只要下载都能达到最高的速度,这点要提醒你,你的速度快,但是如果你下载文件的服务器慢,速度一样达不到,所以要选择资源多的文件进行下载,如果你是迅雷会员可以进入高速通道测试效果更佳(其实迅雷对非会员也有速度限制,你懂的)下载速度参考值:2M带宽最高下载约为200K左右。 7、常见故障处理方法。 口都出现“需要重新连接”上不了网,出现这种可能有两wan在接口总览菜单中我的所有红色、)1(. 种情况:1、你把外线插错了,请插到标有数字“1”的接口。你所有wan口的帐号或密码设置都错了,请更正。 (2)、在接口总览中红色wan口其中一个连接不上显示“需要重新连接”,请你返回设置方法第3条,地址设置为:EC:21:6A:C8:F6:18 请 复制至页面粘贴上去,并认真检查你在该接口的将路由器的mac帐号密码是否设置正确,然后保存应用。 (3)、如果出现非wan口的其它wan1….wan3…等接口无法连接上网,显示“需要重新连接”,出现这种情况有两种可能:1、你在该接口的帐号密码设置错误。

用OPENWRT X86打造无线路由

用OPENWRT X86打造无线路由+BT下载机 本帖最后由 99010 于 2010-12-9 16:45 编辑 前言: 玩路由器也有一段时间了,受限无线路由器的性能(CPU慢、内存小、USB读写速度,当然高端的不在此列,不过高端也是高价格),脱机下载总是不能满足要求,所以就折腾小主机来下载。小主机上装过小毛驴BT系统,满足基本要求了,其间又折腾小毛驴增加路由功能,看着教程也做成功了,接着买了无线网卡,打算加上无线AP功能,无奈WPA加密始终搞不定(小区里面N多蹭网高手)。接着把目光投向OPENWRT,于是就有了下面这段文字。当然了,本人也是接触LINUX不久,很多东西都是现学现卖,有不对的地方请多多指教。 正文: 开工前按照惯例说明硬件环境:ITX主板,CF转接卡,128M CF卡,120G 硬盘,瑞银USB无线网卡用到的软件:OPENWRT X86版本(https://www.360docs.net/doc/ec4167542.html,/backfire/10.03.1-rc4/x86/)、PUTTY、WINSCP、physdiskwrite 1.安装OPENWRT X86 a.读卡器装上CF卡,接到 WIN的电脑上。 b.把下载的OPENWRT X86镜像文件(我下载的是openwrt-x86-generic-combined-squashfs.img)复制到physdiskwrite目录。 c.在命令提示符里面cd到physdiskwrite目录,再输入 1.physdiskwrite.exe -u openwrt-x86-generic-combined-squashfs.img ,这时候会出现一个大段的提示那你选择要把镜像安装到哪个硬盘(要仔细看好了,一般来说电脑上只有一个硬盘的情况下,硬盘是0,CF卡是1,千万别选错了,不然。。嘿嘿。。),按下1,会有个提示是否写入,选y。等待一段时间就安装完了。 2.初步设置 a.把转接卡装上ITX主板,接好电源、网线,开机。 b.在WIN的电脑上ping 192.168.1.1 -t,有数据出现就可以用IE登录了(这里需要注意的是,刚安装好的OPENWRT系统默认IP是192.168.1.1,建议没改IP前不要接上路由,以免IP地址冲突),

用ImageBuilder定制自己的openwrt路由器的方法

用ImageBuilder定制自己的openwrt路由器的方法/步骤 有三种方法编译openwrt定制固件。使用Image Builder很容易实现,下面是路由器操作的详细的方法和步骤。 1. 用ImageBuilder编译,用于灵活选择package。毕竟压缩的只读文件系统squashfs 比可写的JFFS能省不少地方,可以用来把玩更多的package。 2. 用SDK编译,用于编译package仓库中没有的软件包,另外其中有配套的内核源码及头文件,编译缺失的内核模块也很方便。 3. 从源码编译,因为要重新编译cross-compile toolchians,下载最内核和软件包的源码编译,导致这个过程比较耗时,用于上述两种情况搞不定的情况。 本文主要介绍第一种定制方法。 个人比较喜欢安装各种的软件包,毕竟百元左右的路由器往往只有8M flash,最大的也只有16M,即便RAM够,用opkg install 也装不了多少软件。我的最佳实践就是先装到JFFS 的overlay中对软件进行评估,若好用加到软件列表中,不好用就remove, 当系统提示flash 告急时,就把软件列表中的package 信息收集,编译一个新的image。当然如果你的路由器有USB接口,也可以修改opkg.conf,增加dest usb /mnt/usb,安装package时用“–d usb”来指定安装目标位置,从而来解决空间问题。 按照下面步骤定制固件。 1. 官网下载ImageBuilder包,比如 OpenWrt-ImageBuilder-brcm47xx-for-Linux-i686.tar.bz2,解压。 2. 列出当前系统所有已安装包,用于准备后续make image的packages参数。 echo $(opkg list-installed | awk '{ print $1}') 3. 检查输出结果看这些包是否自己所需,也可以在此新加入package, 务必注意package

N1 在OpenWrt中设置旁路由

一、什么是旁路由? 旁路由又叫独臂路由,这一概念由杨过大侠首创(手动狗头)。旁路由一般是由CPU性能比较强的路由器来担当。旁路由的主要责任是帮助网络中的其他设备获取国外网站的数据。 二、旁路由的接线方式及工作原理 最基础最常规的旁路由接线方式是这样的 基础的旁路由接线方式 是不是有点挑战常识?主路由的LAN口居然接着旁路由的LAN口?没错,我没画错! 主路由可以是普通的无线路由器。所有联网设备都需要连接主路由。

网络数据在其中会怎样流动呢? 访问国内网站时的数据流动 访问国外网站时的数据流动 上图中,基本展示了旁路由的作用: 1.分析数据包,判断是否需要加密传输; 2.加密、解密数据包

三、OpenWrt系统下,旁路由的设置流程 假设主路由的IP地址为192.168.1.1,请根据实际情况进行变通哦! 1.将旁路由的LAN连接到电脑的网口。没有电脑?旁路由不支持无线? 试试这样?使用额外的无线路由器连接到旁路由,再使用手机等无线设备连接无线路由器,进而设置旁路由 旁路由不支持无线时,无线设备设置方法 2. 进入旁路由的管理界面。我们需要修改OpenWrt的LAN口的接口 设置

【网络】-【接口】-【LAN编辑】

在【物理设置】中,需要取消勾选【桥接接口】的选项,然后选择到您的LAN硬件接口 设置好之后,请记得点击【保存】。这里划重点,不要点击【保存&应用】!不要点击【保存&应用】!不要点击【保存&应用】!不要点击【保存&应用】!不要点击【保存&应用】!不要点击【保存&应用】!不要点击【保存&应用】!不要点击【保存&应用】! 接下来还需要修改旁路由的防火墙设置 进入【网络】-【防火墙】-【自定义规则】,在最后添加以下代码iptables -t nat -I POSTROUTING -j MASQUERADE 然后点击【重启防火墙】

路由器WR710N 改造刷Openwrt.pdf

TL-WR710N成功改造完成,改造过程分享 内容提要:更换DRAM、FLASH,刷固件,扩展USB (无刮U),CPU加散热器,加装TTL下载端子,增加SMA外接天线,加miniUSB DC5V外接电源端口,改造过程中电源损坏修复。 1)换DRAM。拆下原机Zentel A3s28D40FTP(128bits 16MB)DRAM,换HY5DU121622CTP(32*16位64M)DRAM。

2)接通电阻R66。接通背面R66位置22R电阻(22R电阻从旧内存条上面拆的,上面的电阻基本都是22R)。 3)内存(DRAM)换好后,其它原器件不动,先用原厂FLASH上电测试内存更换成功与否。

----------------------原厂FLASH测试DRAM,如更换成功(路由正常启动,并通过WEB正常进入路由器管理页面)---------------------------(继续) 4)换FLASH。拆下原机cFeon QH16-104HIP 16bits 2MB,用储物袋装好以免丢失。用CH341A 编程器夹上要更换的新FLASH芯片(型号W25Q128 = 16M,也可以用8M,型号为W25Q64,但刷入的应对应为8M固件),刷入“tp-link 710N 不死UBOOT 16M编程器固件”。烧录完成后,焊入新芯片。 这里提醒一下,用编程器刷,一定要用编程器固件!一开始我不知道,走了很多弯路。在此感谢恩山论坛的用户“鬼迷了心窍”,并在此帖引用他的16M编程器固件,以方便大家使用。tp-link 710N 不死UBOOT 16M编程器固件:https://www.360docs.net/doc/ec4167542.html,/s/1gdBskX9(此固件由恩山用户“鬼迷了心窍”提供) CH341A编程器的操作过程(本过程仅针对W25Q128芯片):装好芯片-->点击检测(会识别芯片,如果识别失败是芯片引脚未接触好)-->擦除-->查空-->加载编程器固件BIN-->编程-->校验 执行以上操作,即可完成芯片烧录。更多CH341A编程操作请自行查阅相关资料。

openwrt无线路由器最大客户端连接数测试分析

关于openwrt无线路由器的2个测试分析 一.无线最大连接用户数测试 二.流控模块在多用户连接无线中的作用 测试环境: 1.hg255d原装路由器(不改内存和无线)+openwrt 基于12_09rc1的流控版本(地址: https://www.360docs.net/doc/ec4167542.html,/share/link?uk=3359958&shareid=2711163112) 2.无线配置:wpa加密,其他参数基本保持默认 3.客户端:各种带wifi手机(大部分是安卓机型)+笔记本3台 4.环境:方圆30多平米的无建筑障碍(墙、金属隔断之类)范围内,无线路由器放在一 头的最边上(也就是说距离路由最远的客户端6-7米左右),周围可搜索到的无线路由信号10个左右(信道分布没具体看) 测试结果: 一.无线最大连接用户数测试 a)如图所示,无线的客户端连接15个,连接之后网页打开只有个别比较慢,

b)在15个点都在线的情况下,同时运行其中8个点的并发数据流量,运行状况如下: 总带宽13.923Mbps,但是每个客户端的带宽差别很大(这个是可以理解的),但最 小的带宽应该也能都满足手机的网页浏览需求,但是视频播放就不行了 c) 二.流控模块在多用户连接无线中的作用 a)在保持所有配置及连接用户不不变的情况下,分别测试应用主机控制策略和不应用 主机策略,每个客户端的带宽分配情况 b)没有主机策略时的抓图

c)加载了主机策略的抓图(192.168.0.1网段平均限速1500Kbps) d)在一张图上的对比分析

e)结论分析:流控模块能够有效的遏制无线中因为信号、无线芯片、位置等原因占据 先天物理带宽通道优势的wifi客户端的带宽消耗,将更多的带宽平均分配个每个wifi客户端,但是对于无线信号很差的客户端基本没有提升作用,只能保证在总带宽有限的情况下能够分配的到带宽资源

相关主题
相关文档
最新文档