分类目录归档:openwrt

possible DNS-rebind attack detected: hlb.st.sankuai.com

偶然发现openwrt的日志里面有大量warn信息: Sun Jul 8 10: … 继续阅读

发表在 openwrt | 标签为 | 留下评论

从openwrt到智能路由器

随着智能家居进入千家万户,作为各个终端的媒介,路由器在智能家居中承担了重要任务。 … 继续阅读

发表在 openwrt | 标签为 , , | 留下评论

openwrt路由器安装KMS服务器激活windows

首先在编译的时候要把KMS服务器编译到固件里面。 在C:WindowsSyste … 继续阅读

发表在 openwrt | 标签为 , , | 留下评论

LEDE设置wpad实现802.11r无缝漫游

家中经常有wifi弱信号区域,多放几个无线AP的话,尽管SSID设置为相同,但是客户端不能智能判断要连接的AP,必须要信号差到断线,才能自动连上信号强的AP,非常麻烦。

一直想要完成家中的wifi无线漫游,让设备能够智能识别信号质量好的AP进行连接。目前比较靠谱的无缝漫游的方案基本都是靠企业级AC+AP来完成,不止价格昂贵,还要增加不少设备。家用太折腾了,也伤不起。

记得17年9月左右,据说LEDE已经支持了802.11r无线漫游功能,一直未曾尝试,今天就折腾下看看吧。

继续阅读

发表在 openwrt | 标签为 , , , | 留下评论

openwrt官方管理网页上是用什么方法统计连接数的

openwrt的web网页,依次点击 status 、 realtime Graphs 、 connections ,出现如下图的连接数统计,请教各位大神,下面具体每个连接是通过什么方式统计的?

尝试使用netstat查看,结果和状态页面显示的数量完全对不上,状态页面显示几千条连接数,但是netstat看到的只有几十条。

最后发现使用这样的办法才能看到正确的连接数,包含半开连接数和udp连接数。

cat /proc/net/nf_conntrack

继续阅读

发表在 openwrt | 留下评论

漫谈家用软路由WIFI的方案,为什么minipcie网卡不合适

首先直接抛出结论,建议使用软路由+硬件无线AP的方式最稳定靠谱。

我们使用的普通路由器,一般都包含了 路由功能和wifi无线功能,那么意味着我们只需要把无线路由器连接外网,然后内部就可以通过一个设备搞定。但是目前的软路由使用中,软路由主要突出在他的处理能力上,主要负责的是路由和NAT转发方面的处理,而无线功能则是没有的。

为什么软路由没有无线呢?

答案也很简单,因为软路由天生就不是路由,而是被折腾出来的, 所以在硬件上面,本身就不具备无线的硬件。试想一下,巧妇难为无米之炊,没有WIFI的硬件芯片,又怎么能发射出来无线信号呢?

普通家用路由器都是把CPU主芯片,RAM,ROM,网卡/交换机芯片,无线网卡,信号放大,天线等都整体设计好了,开发出来的成熟产品。

那么,软路由是否就不能实现无线功能呢?答案其实是可以的,但是仅仅用作研究折腾,目前似乎还没有见过有商用级别的X86软路由加无线网卡组成的无线路由器方案。

那么,我们来看看软路由要实现无线AP功能,要注意什么?

硬件方面,其实软路由本身就包含了CPU处理器,主板,内存,存储,电源,网卡。OK,那么以上就是一套软路由的基础硬件了,我们只需要再增加一个无线网卡+天线就可以了。

这里首先要看看自己的主板能通过什么方式增加无线网卡,目前我知道的就是如下几种,PCIE接口,MINI-PCIE接口,以及其他主板上的扩展接口,如MINI-PCI接口,PCI接口,甚至USB接口。

95a076cb913d4401976f1610ecc275d5.jpeg4bb7f97c9702435a9207c747db8e2a0d.jpegd3d0da89f9e04d4a92576bd6e85f4ce3.jpeg

如上图所示,几种无线网卡分别是,MINI-PCI,MINI-PCIE,USB无线网卡。其他的无线网卡猫猫无线手里没有,所以没办法拍照片了,各位自己去搜索看吧,

有了硬件,需要用驱动来控制才行,那么就限制你用什么方式来架构这个软路由。大概可以分成两组方式。

1.纯软路由,系统装在U盘中启动,或者装在小容量的固态硬盘上,这台机器就只是软路由功能。

2.虚拟机软路由,设备本身有一套系统,然后在系统下虚拟机安装一个软路由系统,这台机器可以多用,功能不局限于软路由。

至于你是用哪种方式,就看需求情况了。但是经过测试,其实纯软路由的方式,增加无线功能是最容易的。

为什么纯软路由最方便实现无线功能?

因为纯软路由的话,系统直接调用硬件,比如软路由系统openwrt 直接就能使用pcie接口,只要驱动合适,就能激活无线网卡,可以说太简单了。

但是如是是经过虚拟机,由于硬件直接是与虚拟机系统连接的,而不是软路由系统,所以就困难多了,虽然困难,但是方法还是有,但是效率,驱动,识别,和性能都打了折扣。

这里主要是硬件直通技术,如果你觉得本文提到的思路非常好,一定要照着葫芦折腾一番,那就需要选择能支持硬件直通的CPU和主板。

如果你觉得纯路由不够逼格,浪费你的I9顶级CPU,那么虚拟机软路由也是一个充分利用硬件资源的方式。

上面提到, 支持硬件直通的CPU 和主板,主要作用就是能把pci扩展接口直接 绕过系统底层,划分给软路由系统直接驱动

但是这里说的系统底层, 主要是两种,纯虚拟机系统,主要是esxi, 冷门点的有微软的hyper-v。

在Window系统下面,硬件直通功能,我折腾过,研究不深,所以只能简单说说失败的经历。

同样的硬件, 用纯路由,就能识别并使用无线网卡,但是经过esxi 硬件直通后,能识别,但是无法使用,

所以后来发现这是一条漫漫长的折腾路,果断放弃。

那么问题来了,虚拟机软路由就不能使用无线AP 功能了吗?

答案当然可以,那么我们就曲线救国吧。使用window系统,安装wifi网卡并装好驱动,使用wifi共享软件

看似很完美,但是,只能使用2.4G 频率,5G 折腾不出来。

需要设置以下几点:需要开机启动,Wifi不能休眠,Wifi的信道,模式等。

但是发现,wifi 的信道,根据不同网卡,设置也不同,有的能设置信道,有的不行。

那么说回正题,如果选择最简单的纯软路由方式,需要注意的是, 不是所有无线网卡,都能使用,这里主要是受限于软路由系统的驱动,理论上,你能搞定驱动,任何网卡都可以,但是如果你能搞定这些,就不用看本文了。

最后来实战

注意:不是所有软路由系统都支持无线,目前主流的比如openwrt,LEDE这类家用系统,是支持的, 但是爱快,海蜘蛛之类商业性质的软路由就不支持,因为这种系统,根本就没有编译无线芯片的驱动。

那么我们的方向只能锁定openwrt 之类的开源系统, 但是一般情况下,原生openwrt 是没有无线网卡驱动,其实我们平时能下载到的,已经是经过大神优化过,添加好驱动的了。

目前我折腾过成功的就是 AR9380,9280这类的网卡,openwrt下X64下,插上就能识别并使用,其它的具体确实需要自己到专业论坛去查阅资料。

最后,软路由装好了,网卡插上了,是不是有点小激动呢,谁说软路由不能带无线AP 了,不信邪,咱来试验一下。

那么开机测试一下, 网络- 无线能看到 这个网卡了,开心吧。

2fea75848fc44e6d808dd484fabedba9.jpeg

那么如果你不顺利的话,会发现如下一些问题:

1.无线模式只能2.4G或者5G其中一个,不能像普通路由器那样双频

2.无线只能接收,不能发射(意味着你只能蹭网转换成有线,不能把宽带转换成无线)

3.能建立AP,或者接收信号,但就是死活用不了(悲剧吧)

4.能用一会,但是一会就断了,要重启才能识别(哈哈)

5.或者压根就找不到这个无线网卡,识别不了。

OK ,如果上面这些问题,你都没遇到过,那么恭喜你,你最终还是会放弃,你将面临最后一个选择,

哇靠,网速怎么这麽慢?

对,没错,不管你的无线网网卡是AC双频,300M,450M 也好,速度就是上不去, 具体是多少

根据我自己的折腾,不管是300M的双频和866M的AC,内网速度只有3M~8M以下(不是kpb)

打个比方,如果你是100M光纤,那么你的下载速度应该是10M左右, 那么如果用这套方案,你的下载速度只有8M以下。如果你用的是千兆路由, 你内网拷贝文件的时候,也是8M以下,意味着,如果你没有内网需求(NAS存储之类的应用),恭喜你,这个问题困扰不了你,但是可能不大稳定, 3M~8M速度,不过其实上上网也够用了。

但是,如果你的应用就这麽简单,貌似根本就不用软路由吧?

好吧,你说你就是一个需求不高,但是爱折腾的人,你将面临最后一个问题,也是影响你一辈子的事情,那就是:哇靠,怎么连多几个无线设备,就这麽不稳定,经常上不了网了!是的,没错,上面说的,3M~8M ,是单机的速度, 如果多台wifi设备连接,你自己去分配吧,不稳定。

那么WIFI 这么忙,不稳定问题是什么呢?

我查阅资料,其实还是无线网卡的质量上,minipcie网卡一般都是用于笔记本上,其实主要负责单机接收,和单机发射。意思就是这个网卡的设计初衷,就是满足单机对路由上的使用,那么无线能力自然就不需要这麽强,只要无线路由能力强,就能显得网速好,这里指的是处理能力和收发的强度。

但是无线路由器只要的工作就是 单机对多机, 处理能力和收发能力要同时 满足多台wifi设备同时使用才可以,所以,以上这套方案,如果连接的wifi设备越多,越不稳定,至于能接受多少设备,那么取决于你的无线网卡了,在笔记本上用的无线网卡,一百元级别,比如AC7260 这类的算很不错了。

但是这个网卡我折腾过,与50元级别的AR9380差不多,只比后来买的20元级别的博通网卡强一点点。

那么有没有强大的无线网卡呢,有的,虽然我对网卡了解不多,但是也看到几款强大的卡,比如AR9880,9580这类的,听说是内置了功放,芯片也强大的,但是,有两个问题:价格太高,200元起步,这个价格,我可以买不错的无线路由了吧?体积太大,比全高minipcie卡板还大一倍,一般主板位置都装不了,这种只能用于特殊主板或者加pcie延长线安装。

高端无线网卡我没折腾过,所以就不发言了,我仅代表广大工薪阶层写下此篇折腾后感想。如果你看完上面我的废话,还坚持用这套方案,觉得平时就一个笔记本或者手机连完全够用,那么恭喜你,你是一个热爱生活,勇于创新,永不服输,DIY能力超强的,单身狗。

后记

其实这个文章目前来说有些地方是需要修正的,无线网卡之所以用在软路由器上效果没有单独接AP效果好,是因为受制于无线芯片的开源驱动,这个非常重要。驱动可以说是灵魂,而硬件仅仅是肉体而已。古往今来,无数发明创造都出自于杰出的人才,也是同样的道理。

目前,openwrt对无线芯片的驱动支持可以说已经很全面很健全了,比如我在一台ATOM270的小主机上,使用AR9287无线网卡,使用完全OK,当然这个网卡只有2.4G频段,受周边干扰影响较大,效果嘛跟普通2.4G的300Mbps无线AP效果差不多,甚至信号还要好一些。

57b4bc5b46de4122abed0ca46e3a583e.jpeg2e7afefc5c1445c38143ebf179ac4b92.jpegda2bdbd9c1134fbf8a8e7b9586f94f1c.jpeg

以上是这个自制的软路由的照片,有人可能会问,一个有线网口的软路由怎么使用呢,至少要有一个WAN口和LAN口才能称之为路由器吧。其实可以使用一个支持VLAN的千兆交换机轻松搞定,具体可以去搜索单臂路由。而且这个路由器的网口是千兆的,在使用中,200M宽带毫无压力。读写硬盘速度受制于CPU性能,千兆局域网大概在25-70MB/S左右浮动。

继续阅读

发表在 openwrt | 留下评论

openwrt实现单臂路由

1.必须是802.1Q基于tag的vlan,基于端口的不行 
2.划分7个vlan,最后一个端口是trunk用于连接路由器
3.OP用vconfig命令增加7个vlan子接口对应交换机上的7个vlan以及7个接口

4.openwrt开启kmod-8021q支持

5.busybox开启Support for 802.1Q VLAN parameters 

还未测试 应该是这样的。

######################################

VLAN有两种方式,一种是基于端口的VLAN;一种是基于802.1Q的VLAN。基于端口的VLAN不支持单端口对应多个VLAN,并且不支持跨越设备的VLAN,VLAN的最大数目是交换机所具备的端口数目,一般为16或24。支持该方式的交换机有安奈特AT-8118、金长城GES-3517M和首信ST3124。 
基于802.1Q的VLAN支持单端口对应多个VLAN,并且支持跨越设备的VLAN,VLAN的最大数目不受交换机所具备的端口数目的限制,最大可达到4096个VLAN。这样使得划分广播域更为方便、灵活,广播域成员不受空间地点的限制。支持该方式的交换机有清华紫光ES6243S、TCL S4226MF、安奈特COM8224XL、全向QS-516V、上广电InfiniteSwitch 5024,凯创VH-2402S和中兴ZXB10-S300。 
Intel Express 530T、实达Star-1924f+和神州数码DES-3624i既支持基于端口的VLAN,又支持基于802.1Q的VLAN。

继续阅读

发表在 openwrt | 标签为 , , , | 一条评论

在openwrt上实现rsync同步备份NAS数据

主路由器是X86 openwrt,SATA接口接了个250G硬盘做NAS存储。

家里一台上网本闲置,不久前拆下屏幕做了个显示器接在监控录像机上用,剩余下半身正好可以装个硬盘来做rsync热备。

同样为这个上网本编译了openwrt,整合了rsync,rsyncd,以及无线网卡驱动。有线网口作为wan,无线作为LAN

QQ截图20170106103412.jpgQQ截图20170106103424.jpg

采用主路由器推,上网本接受的方式同步。

上网本rsync设置:

# /etc/rsyncd.conf
# Minimal configuration for rsync daemon

# Next line required for init script
pid file = /var/run/rsyncd.pid
log file = /var/log/rsyncd.log
use chroot = yes
uid = nobody
gid = nobody
read only = no
charset = UTF-8

# Simple example to configure server
#[openwrt-etc]
path = /mnt/sda1
comment = OpenWrt Configuration Files
#exclude = /init.d

然后设置为开机自动启动就可以。

主路由器上运行rsync -avP –delete /mnt/sdb1/Downloads/*  root@上网本IP:/mnt/sda1/Downloads/即可进行同步。

注意:这样运行后,实际上在上网本的/mnt/sda1/下面生成的文件是主路由器/mnt/sdb1/Downloads/下面的文件,不会创建Downloads目录。

rsync -avP –delete /mnt/sdb1/*  root@192.168.2.111:/mnt/sda1/ 将主路由器/mnt/sdb1/下面的文件同步到上网本/mnt/sda1/ 下面

另:如果采用/*的文件夹参数,会导致目标文件夹不能增量删除对应文件。 解决办法

rsync -avP  –delete /mnt/sdb1/  root@192.168.2.111:/mnt/sda1/

继续阅读

发表在 openwrt | 标签为 , , | 留下评论

批量转换优酷路由宝缓存文件为flv

那些dat文件是加料的FLV文件,用WinHex找到0x46 0x4C 0x56开头,将后面保存成flv文件就可以用播放器播放了。这个是 http://blog.csdn.net/yu_yuan_1314/article/details/9358849 有关FLV文件格式的科普,有兴趣可以看一下,没兴趣跳过。 
不过不用那么复杂,因为那个头部固定1048904字节,为用这个命令搞定,举个栗子: 
dd if=/tmp/youku/mnt/tf1/youku/youkudisk/200000001F5B2D654F166E04C5D43CC17AA3BA63.dat bs=1048904 skip=1 of=/tmp/youku.flv 
ln -s /tmp/youku.flv /www/youku.flv 

然后在浏览器或者暴风影音中输入http://192.168.11.1/youku.flv,就可以播放了。 

#!/bin/sh
ls /mnt/sda1/youku/youkudisk | while read line
do
    echo $line
name=$(echo $line|cut -d "." -f1)
echo $name
dd if=/mnt/sda1/youku/youkudisk/$line bs=1048904 skip=1 of=/mnt/sda1/medias/$name.flv
done

继续阅读

发表在 openwrt | 留下评论

changeIP ddns service running on openwrt

DDNS 服务商的网站是https://www.changeip.com
wget  ‘http://nic.changeip.com/nic/update?u=wifizoo&p=12345678&hostname=wifizoo.dnset.com&iffline=1’
搞定

继续阅读

发表在 openwrt | 留下评论