文档库 最新最全的文档下载
当前位置:文档库 › OpenWRT配置

OpenWRT配置

OpenWRT配置及应用

LED Device(即配置文件中的sysfs)有如下对应关系:

adsl DSL绿灯

ppp-fail Internet红灯

power 电源红灯

stop 电源绿灯

b43-phy0::tx 未知

b43-phy0::rx 未知

b43-phy0::radio Wi-Fi绿灯

1. config 'led'

2. option 'name' 'Internet'

3. option 'trigger' 'netdev'

4. option 'mode' 'link tx rx'

5. option 'dev' 'pppoe-wan'

6. option 'sysfs' 'adsl'

触发器

phy0rx

phy0tx

phy0assoc

phy0radio

当wifi有数据传输时,led灯就会闪烁,反之则不亮,db120测试成功

LED Name wifi

LED Device ppp-fail

ticked=on

Network Device

Device wlan0

Trigger Mode tx rx

安装软件

root@OpenWrt:/tmp/opkg-lists# opkg --help

分区表

root@OpenWrt:~# df

Filesystem 1K-blocks Used Available Use% Mounted on /dev/root 8448 8448 0 100%

/rom mtdblock2

tmpfs 14868 312 14556 2% /tmp

tmpfs 512 0 512 0% /dev

/dev/mtdblock3 6784 564 6220 8%

/overlay mtdblock3

mini_fo:/overlay 8448 8448 0 100% /

/dev/sda1 40957684 5548156 35409528 14% /mnt/sda1

/dev/sda2 37190472 67124 37123348 0% /mnt/sda2

一个完整的linxu主要有内核和根文件系统组成,dmesg看启动信息,可以从里面看到系统的flash分区为:

bcm963xx_flash: Partition 0 is CFE offset 0 and length 20000

bcm963xx_flash: Partition 1 is kernel offset 20100 and length dff00 bcm963xx_flash: Partition 2 is rootfs offset 100000 and length ee0000 bcm963xx_flash: Partition 3 is nvram offset fe0000 and length 20000 bcm963xx_flash: Partition 4 is linux offset 20000 and length fc0000

0x000000000000-0x000000020000 : "CFE" mtdblock0

0x000000020100-0x000000100000 : "kernel" mtdblock1

0x000000100000-0x000000fe0000 : "rootfs" mtdblock2

0x000000940000-0x000000fe0000 : "rootfs_data" mtdblock3

0x000000fe0000-0x000001000000 : "nvram" mtdblock4

0x000000020000-0x000000fe0000 : "linux" mtdblock5

0-128k CFE 128k 该分区为bootloader,刷固件不会影响该分区

128-16256k linux 16128k

16256-16384k nvram 128k 刷固件不影响该分区,有选项也可以刷新该分区,主要保存设置参数

128-640k kernel 512k 内核分区

640-16256k rootfs 15616k 根文件系统分区

9472-16256k rootfs_data 6784k /dev/mtdblock3 /overlay

上面所有加起来刚好16M

https://www.wendangku.net/doc/e214276646.html,/logs/18316191.html

Flash,开机之后CPU从Flash开始执行。里面保存了bootloader,kernel,nvram 的数据。因为openwrt的 kernel也是写到Flash里面去的,为了防止写错了数据启动不起来,还是先备份一下Flash的数据。

用ssh登录,然后用下面的命令导出Flash内的内容。

dd if=/dev/mtd/0 of=/tmp/cfe.bin

256+0 records in

256+0 records out

dd if=/dev/mtd/4 of=/tmp/nvram.bin

256+0 records in

256+0 records out

Linux下通过MTD驱动来驱动Flash,MTD提供分区的概念,Flash划分了6个分区:

-------------------------------------------------------------

___________________Linux_____________

CFE | kernel | rootfs | nvram |

-------------------------------------------------------------

其中rootfs_data是rootfs分区的一部分。

NVRAM是Non-Volatile RAM,在OpenWrt里面是用了Flash Rom的最后128KB 区块,用于存储一些配置参数。

JTAG:假如路由器的flash里面什么都没有,就是说一个全新硬盘,就好像里面的flash坏了,我换了一块新的。现在要弄好它,怎么办呢?现在情况你买了台电脑,全新的,硬盘里面空白,主板里面也空白,没有bios,不能自检。当然我们要做的就是把bios(cfe)弄好,然后装系统了。要刷cfe,就得靠这个jtag 线了,这个其实就是一个并口线,装好驱动后可以用软件把cfe刷到flash最前面的256k的空间里面,这样我们的路由器就能进行最简单的引导了。jtag线一般就刷cfe一个功能,理论上它什么都可以刷,但是由于其鼻涕虫的速度,没有人会用的。(可惜DB120-B1在板上没有引出JTAG接口).

TTL线就是一个串口线,它给我们提供一个控制台(命令行),让我们看到系统的自检,引导,就跟系统启动后telnet连过去感觉一样,只不过ttl不管系统正不正常都可以看到消息,而telnet要系统正常才可以用。一般我们用超级终端对其连接。具体操作自己google或恩山上面搜索。

tftp究竟有什么用。(刷砖头必备技能)

当有时候刷固件错误的时候(就是不能启动,cfe正常)用它来刷固件。基本上90%的砖头都可以用他进行修复,这里简单介绍下使用

tftp框上ip填 192.168.1.1,file就填你要刷的固件,下面开始刷

绝多数cfe里面地址都是192.168.1.1,路由器上电前先ping 192.168.1.1 -t .....

来自 192.168.1.6 的回复: 无法访问目标主机。

来自 192.168.1.1 的回复: 字节=32 时间=146ms TTL=100

请求超时。

........

看上面的情况,在那刚能ping通那1秒电点升级就可以了。

注意:用tftp刷固件,要保证固件版本和路由器要配对,否则无论如何也刷不进去的,其次,建议用mini版本的固件,比较容易刷,如果路由器是自己玩成砖头的,话,95%都通过tftp来挽救。

附件为tftp软件

ddwrt相对功能比较多;tomato比dd稳定,有duel wan的固件,qos比dd要强大;openwrt是一个最基础的linux系统,装好后非常小,决大多数的软件要自己装

NTFS挂载

最好使用EXT3格式,使用NTFS分区的话在BT里会占用大量CPU

ntfs-3g -o nls=utf8 /dev/sdb1 /mnt/sdb1

BCM4712芯片OpenWrt挂载USB硬盘

https://www.wendangku.net/doc/e214276646.html,/blog/bcm4712-openwrt-usb.html

EXT3挂载

1、设置官方源(Openwrt中文好像没有这个程序)并更新

opkg update

2、安装USB驱动,这里是BCM4712芯片的,其他芯片自己查

opkg install kmod-usb-ohci

opkg install kmod-usb-storage

3、安装EXT3文件系统

opkg install kmod-fs-ext3

4、安装文件系统格式化及检查工具

opkg install e2fsprogs

5、插上USB硬盘,如果正确识别

root@OpenWrt:/dev# dmesg | grep sda

sd 0:0:0:0: [sda] 156301488 512-byte logical blocks: (80.0 GB/74.5 GiB)命令就可以查看到U盘信息

6 分区,格式化(分区我只在windows系统里分好区,linux分区好像fdisk没这功能,这个问题待解决)

mkfs.ext3 /dev/sda

7 在WEB界面里设置文件夹权限和挂载,当然也可以修改fstab和使用chmod命令,这个文件也可以注意一下/etc/init.d/usb

8 df检查一下

使用交换分区

可以专门格式化一个SWAP分区,也可以在NTFS分区上拷贝一个swapfile,然后挂载设置/mnt/sda1/swapfile

Samba应用

在网上邻居共享上传很慢

修改/etc/hotplug.d/block/10-mount第27行

mount -t vfat -o

iocharset=utf8,rw,sync,umask=0000,dmask=0000,fmask=0000 /dev/$device /mnt/$device

改成

mount -t vfat -o iocharset=utf8,rw,umask=0000,dmask=0000,fmask=0000 /dev/$device /mnt/$device

这样上传的速度就可以增加到2~4m之间

ftp这个用户名在openwrt的系统中没有写权限,所以在linux的分区就不行,在ntfs分区可以,用root用户登录 samba,或者用root登陆ftp也行。想要用“ftp”这个用户名在linux分区进行写操作的话,需要到命令行模式执行chmod 7777 /mnt/sda1

FTP应用

如果不能删除,考虑文件夹权限问题

QoS

分四个级别

Priority 优先级最高,manrk=01

Express 其次,mark=02

Normal 正常,mark=03

Bulk 可支持延时传输或者丢弃较多的数据,mark=04

默认规则

low edonkey 全部协议和端口

low bt 全部协议和端口

priority 22,53端口

normal TCP 20,21,25,80,110,443,993,995

express 5190端口

openwrt l7过滤qos配置

https://www.wendangku.net/doc/e214276646.html,/bbs/viewthread.php?tid=685&extra=page%3D1%2 6amp%3Bfilter%3Ddigest

防火墙

开启SYN-flood防御

丢弃无效报文

接受输入数据输出数据转发数据

在WAN开启NAT及MSS参数调整

默认开启本地udp68,tcp2601端口

另开启bt的tcp51413端口

Ushare应用

Openwrt 系统功能强大,主要优势在于其开放性和可扩展性,Openwrt 安装ushare后,可将路由器变身为一个功能强大的家庭upnp流媒体服务器!

打开网上邻居,会显示发现upnp服务器一个:openwrt, ,点击,会打开web管理页面:

http://192.168.3.1:49152/web/ushare.html

PC上安装WM12、PowerDVD8或Geexbox等支持upnp的软件,就能直接在软件upnp中打开路由器共享的目录进行播放了!支持 RMVB、AVI、MKV、TS等各种文件格式!

20100523更新:windows下推荐使用XBMC媒体中心软件,应该是 windows下支持upnp media最好的播放器了!

下载地址:

https://www.wendangku.net/doc/e214276646.html,/file/f0f61dd50e

https://www.wendangku.net/doc/e214276646.html,/

配置使用:

https://www.wendangku.net/doc/e214276646.html,/thread-53664-1-1.html

https://www.wendangku.net/doc/e214276646.html,/viewthread.php?tid=1229

Ushare upnp 媒体服务器应用教程

https://www.wendangku.net/doc/e214276646.html,/bbs/viewthread.php?tid=75

脱机BT transmission

http://192.168.1.1:9091

也可以在使用Transmission Remote软件进行管理,如果下载太慢检查QoS

如果开了防火墙,需要打开默认51413端口,这端口可以在WEB里改

图解脱机BT(transmission-daemon)教程

https://www.wendangku.net/doc/e214276646.html,/bbs/viewthread.php?tid=51&extra=page%3D1

脱机电驴

http://192.168.1.1:4711

也可以使用aMule Remote GUI进行管理

脱机电驴教程

https://www.wendangku.net/doc/e214276646.html,/bbs/viewthread.php?tid=49

脱机mldonkey

/dev/sda1 76858212 2899144 70054876 4% /root

远程管理GUI(sancho)

登录http://路由器IP:4080,打开mldonkey的web管理页面

用Putty telnet 4000端口,打开Implicit CR in every LF选项即可正常显示

结束killall mlnet.byte.static.

启动mldonkey: /mnt/sda1/root/mldonkey/mlnet.byte.static >>/dev/null

主要文件配置:

/mnt/sda1/root/.mldonkey/donkey.ini

/mnt/sda1/root/.mldonkey/download.ini

定时限速

日一二三四五

0 1 2 3 4 5 6

1 8 1 17 1 17 1 17 1 17 1 17 1 17

+ - + - + - + - + - + - + -

+不限速

-限速

经实际测试mldonkey时间为GMT时间,即第一段为周一至周五开始限速时间

8+8+1=17点开始,周六日开始限速时间1+8+1=10点开始,每天开始加速时间为16+8+1=1点开始,不知道为什么最后要加1个小时

calendar = [

([

1;

2;

3;

4;

5;], [

8;], "bw_toggle" );

([

0;

6;], [

1;], "bw_toggle" );

([

0;

1;

2;

3;

4;

5;

6;], [

16;], "bw_toggle" );]

RG100A-AA脱机mldonkey下载设置,峰值620KB/s,有图有真相

https://www.wendangku.net/doc/e214276646.html,/bbs/viewthread.php?tid=830

解决mldonkey下载过慢的办法

https://www.wendangku.net/doc/e214276646.html,/bbs/viewthread.php?tid=149

无线客户端

开启WiFi,设置与AP一样的信道,添加接口并设置为WAN网络,选客户端模式,输

入加密方式及密码即可

然后设置LAN

设置WAN,设置接口为wlan0

最后扫描wifi,如果正确应该可以看到ESSID里就是AP的SSID

使用0508版发现只能用WEP加密方式,TKIP不能使用,有可能是因为没有安装该软件

后来使用backfire又变成好像只能使用TKIP,这个要注意

图解rg100a 0508 二级无线客户端设置,你可以无线BT了,哈

https://www.wendangku.net/doc/e214276646.html,/bbs/viewthread.php?tid=503&rpid=3451&ordert ype=0&page=1#pid3451

外接USB8187无线网卡

编辑软件包列表和安装对象,修改为如下:

#src/gz packages

https://www.wendangku.net/doc/e214276646.html,/backfire/10.03/brcm63xx/packages

src/gz packages https://www.wendangku.net/doc/e214276646.html,/downlo ...

3/brcm63xx/packages

dest root /

dest ram /tmp

lists_dir ext /var/opkg-lists

option overlay_root /overlay

然后点击提交。同时回到系统--》软件包,点击“更新软件包清单”, 安装kmod-rtl8187,或者在Putty里

opkg update

opkg install kmod-rtl8187

kmod-rtl8187 、kmod-eeprom-93cx6 是openwrt中文论坛提供的,用官方的会死机

安装驱动后要重启路由器,然后接USB网卡设置网络

用vi命令编辑/etc/config/network设置网络

vi /etc/config/network

wan1设置

config 'interface' 'wan1'

option 'ifname' 'wlan1' '因为内置无线网卡为wlan0 option 'defaultroute' '0'

option 'peerdns' '0'

option 'proto' 'static'

option 'ipaddr' '192.168.10.2'

option 'netmask' '255.255.255.0'

option 'gateway' '192.168.10.1'

option 'dns' '192.168.10.1'

用vi命令编辑/etc/config/wireless设置无线网络

vi /etc/config/wireless

config 'wifi-device' 'radio1' '//radio1 第二个无线网卡

option 'type' 'mac80211'

option 'macaddr' '00:E0:4C:8F:36:F4' '//这里是USB无线网卡的MAC地址,一定要改,用ifconfig wlan1命令查看,经实测这里必须通过vi改,WEB 界面根本没有这个选项

option 'hwmode' '11g'

option 'disabled' '0'

option 'txpower' '20' '无线发射功率20db=100mw

option 'channel' '8' '无线频道

config 'wifi-iface'

option 'device' 'radio1'

option 'network' 'wan1'

option 'mode' 'sta' '客户端模式option 'encryption' 'none' '未加密

option 'ssid' 'sutuo-ap' 'AP的 ssid

把路由自带的无线网卡在AP发射,就能实现万能中继

openwrt 驱动 RTL8187大功率网卡做客户端连接AP实现中继

https://www.wendangku.net/doc/e214276646.html,/bbs/viewthread.php?tid=852

挂载摄像头

openwrt挂载ZC0301PL-USB摄像头教程

https://www.wendangku.net/doc/e214276646.html,/bbs/viewthread.php?tid=30

相关文档