当前常见2款MTK OpenWrt路由器的对比

去年双11趁着电信活动,把家里的宽带升级到了200Mbps,然后之前家里用的一个是用了三四年的网件 3700V4就成为瓶颈了,主要存在的问题是1. WIFI 5G最多只能到140M2. 有线接上,NAT能力只有180M左右,桥接可以到200+,原因是AR8327不支持HWNAT。作为一个Openwrt的忠实用户,替换路由的第一要素是能得到OpenWrt原生支持的设备,以便配置802.11r,满足无缝漫游的需求。再要综合考虑满足全千兆,无线支持802.11AC,驱动完善,而且价格还不贵的路由器实际就很少了。当前低价位的路由器主要还是螃蟹芯片和MTK为主,尤其是MTK7621AT的路由器非常多。对比了当前的新3(newifi D2)和友华WR1200JS后,还是选择了新3。 WR1200JS CPU MTK7621AT 16M 128MB 5G芯片 MT7612EN 功放芯片 SKY85717-21,它集成了PA与LNA 2.4G MT7603EN,只有PA,无LNA 闪存 16M 内存 128M newifi D2 CPU MTK7621AT 5G芯片 MT7612EN 功放芯片RTC5638H 集成PA和LNA 2.4G MT7603EN 无PA,无LNA 闪存 16M 内存512M主要的原因还是新3内存大太多了,然后实际的做工用料比较足。实际使用的效果也还不错,虽然说2.4G容易出问题,不过5G是比较稳定的。PS:没选K2P是因为Openwrt官网的版本驱动不支持MT7615DN。

April 22, 2019 · 1 min · pm

IPTV单线复用

由于老房子弱电箱到客厅电视后面只有一根网线,所以我也遇到许多人都有的单线复用场景。之前是直接网上买了2个转接头,把8芯网线拆成2个4芯网线来使用。不过问题就是局域网内只有100M的带宽。双11看电信搞活动,花了之前100M宽带一半的钱把家里的宽带升级到了200M。就想着通过vlan隔离来把单线复用配置一下。 基本的方案其实很简单,首先需要明白从光猫的LAN口和ITV口出来的包都是不带VLAN tag的,因此把ITV的口接到交换机上,把从这个口进入的报文打个VLAN tag,再在电视机后面放个openwrt路由器把这个vlan解出来,桥接到一个lan口即可。大致的网络拓扑如下: 弱电箱里使用了水星的支持VLAN的交换机,配置如下 openwrt路由器上简单设置一下软交换,把对应的vlan和一个lan口桥接在一起,lan口选择untag。

November 29, 2018 · 1 min · pm

iptables使用tee模块镜像流量

一般的流量镜像需要在交换机上做,实际上iptables也有个tee模块做流量镜像。在OpenWrt里使用也比较简单。1. 把tee模块安装上加载进去(需要依赖ipv6模块)```bash opkg install kmod-ipt-tee 2.把某个源IP的包镜像发到指定的IPiptables -t mangle -A PREROUTING -s 192.168.3.224 -j TEE –gateway 192.168.3.100 4. 删除规则iptables -t mangle -F 5. 也可以把整个网段的都镜像root@wan:/etc/config# iptables -t mangle -A PREROUTING -s 192.168.3.0/24 -j TEE –gateway 192.168.3.100root@wan:/etc/config# iptables -t mangle -A POSTROUTING -d 192.168.3.0/24 -j TEE –gateway 192.168.3.100 上图是抓包手机 微博和易讯客户端打开的的DNS查询。

October 12, 2013 · 1 min · pm

openwrt划分多个vlan

原本是想把db120的eth1绑定的三个端口划分为3个vlan,每个vlan也单独配置一个SSID。结果比较悲剧的是b43的驱动不支持多个SSID。简单讲一下如何划分多个vlan。对于DB120来说,靠近电源的网口其实是eth0,原版的固件是把这个网卡和eth1桥接了,使得有4个lan口。刷了openwrt后LAN4就变成了WAN口(eth0),LAN1-3是eth1。可以单独配置一下把LAN3划到一个单独的VLAN 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 'eth1.0' option type 'bridge' option proto 'static' option netmask '255.255.255.0' option ipaddr '10.10.10.1' config interface 'lan2' option ifname 'eth1.1' option type 'bridge' option proto 'static' option netmask '255.255.255.0' option ipaddr '10.10.20.1' config interface wan option ifname eth0 option proto dhcp config interface 'wwan' option _orig_ifname 'wlan0' option _orig_bridge 'false' option proto 'static' option ipaddr '192.168.3.2' option netmask '255.255.255.0' option gateway '192.168.3.1' option dns '192.168.3.1' config 'switch' 'eth1' option 'reset' '1' option 'enable_vlan' '1' config 'switch_vlan' option 'device' 'eth1' option 'vlan' '0' option 'ports' '0 1 5*' config 'switch_vlan' option 'device' 'eth1' option 'vlan' '1' option 'ports' '2 5*' port 5是CPU,port 0-2分别对应的LAN1-3,以上就是把LAN3划到单独的VLAN,IP段是10.10.20.1/24,而LAN1-2的IP段是10.10.10.1/24。另外需要配置一下dhcp加一段 ...

July 27, 2013 · 1 min · pm

openwrt上安装tcpdump抓包

其实在DB120之类的路由器上装tcpdump什么的非常简单,有16M的ROM基本随便装自己想玩的东西。但是对于只有4M ROM的tp-link 740来说就比较麻烦了。一方面是ROM比较小,另外一方面是要想保存数据的话可以用nc之类的同步传输数据。我是直接选中tcpdump和nfs客户端。这样可以直接远程挂载,把抓包的文件直接放远程服务器上,方便后期的分析。1.下载openwrt代码git clone git://git.openwrt.org/12.09/openwrt.gitcd openwrt && ./scripts/feeds update -a && ./scripts/feeds install -a2.配置openwrt基本上就是选上ar71xx的cpu,然后模版选上TP-LINK 740ND就行了,注意选上tcpdump,nfs-utils,kmod-fs-nfs,wpad 3.编译openwrtmake -j 10 V=99直接等编译好把openwrt-ar71xx-generic-tl-wr740n-v1-squashfs-sysupgrade刷到路由器就OK了。 然后就可以直接在路由器上挂载上远程的NFS,放抓包的文件。

April 11, 2013 · 1 min · pm

dnsmasq的rebind_protection引发的问题

在之前写到过OpenWrt的lan端不能正常解析公司内部域名的问题,并通过在dhcp里让用户的dns设置为指定的DNS服务器的方式得到了临时的解决。但是在路由器自身上还是解析不了内部的域名。今天看了一下实际生效的配置文件里面有一项:stop-dns-rebind,然后在http://wiki.openwrt.org/doc/uci/dhcp查到了rebind_protection boolean no 1 –stop-dns-rebindEnables DNS rebind attack protection by discarding upstream RFC1918 responsesrebind_localhost boolean no 0 –rebind-localhost-okAllows upstream 127.0.0.0/8 responses, required for DNS based blacklist services, only takes effect if rebind protection is enabledrebind_domain list of domain names no (none) –rebind-domain-okList of domains to allow RFC1918 responses for, only takes effect if rebind protection is enabled这几个选项的含义,直接在配置里去掉了这项之后,并且取消了之前在dhcp里配置的 list ‘dhcp_option’ ’6,DNS1,DNS2′,重启路由器后也可以正常通过路由器的dnsmasq提供的解析了。 指定的DNS服务器

February 27, 2013 · 1 min · pm

TP-LINK 740N复活记

由于在公司直接连接无线时访问内部资源还需要拨VPN才行,非常不方便。所以我一直放了一个路由器插网线做802.1X认证。现在用的这个是在淘宝上30多块钱买的一个旧的TP-LINK的740N V4。由于之前这个路由器出厂时的CPU频率被限制在350Mhz,所以我当时是刷过别人改过uboot的741N固件(740和741对应的版本基本是可以通刷的),刷了之后恢复了ar7240默认的400Mhz。之前路由器LAN-WLAN的速度问题一直困扰着我,不过反正就平时办公用一下,所以也无所谓,再慢也能有800KB/S左右的速度,直接测试WAN->WLAN的带宽也能跑到30Mbps多点。今天想着刷一下新版本的OpenWrt直接就下了个741n V4的OpenWrt固件,结果直接刷砖了。后来仔细看了一下WIKI,才发现刷的是AR9330才能用的固件。。 WIKI回家后找出电烙铁和TTL线,参考之前网上找的TTL接线图。把TTL线焊好,另外windows上下了个tftp32,正确的740N v1的固件放在目录下就可以开始修复了:1. tftpboot 0x80000000 740v1.bin #把固件下载到内存中2. erase 0x9f020000 +0x3c0000 #把flash除去uboot的那部分擦除,后面0x3c0000为固件大小3. cp.b 0x80000000 0x9f020000 0x3c0000 #写入固件。4.输入bootm就能启动了 正好晚上也有时间,我把T530和X220一个连LAN口,另外一个无线连接路由器,测试了一下LAN-WLAN的速度,确实比较搓 然后搜了下:http://wiki.openwrt.org/doc/uci/wireless?s[]=noscan 40 MHz channel (300 Mbps)Stuck at 130Mbps? Get 300Mbps! Note: this violates regulatory requirements. Edit the file /etc/config/wireless, and restart the wifi AP by executing the following commands… uci set wireless.radio0.htmode=HT40+ # or: HT40- if using channel 11uci set wireless.radio0.noscan=1uci commit wireless; wifiNote that option ‘htmode’ should be set to either HT40+ (for channels 1-7) or HT40- (for channels 5-11). You have to use WPA2 encryption with AES. 自己修改了一下配置 ```bash config wifi-device ‘radio0’option type ‘mac80211’option macaddr ‘e0:15:c4:2b:a0:71′option hwmode ’11ng’list ht_capab ‘SHORT-GI-40’list ht_capab ‘TX-STBC’list ht_capab ‘RX-STBC1’list ht_capab ‘DSSS_CCK-40’option channel ‘6’option country ‘US’option txpower ’27’option noscan ‘1’option htmode ‘HT40+’改成使用40Mhz的频段,并且加上noscan选项。再测试一下就能跑出正常的水平了 ...

February 26, 2013 · 1 min · pm