在HP GEN8上安装openwrt,实现“万兆”虚拟路由器。。。

最近搞了一台HP Gen8 microserver,升级cpu,内存,Intel I350-T4口千兆网卡以后就装了个esxi,自己用ESXi-Customizer-v2.7.2把最新版的网卡驱动集成了进去,网卡驱动为igb-5.3.1-1331820-3123166,之前网友说kmod-igb支持I350,所以这次才入的I350-T4,据说转发小包性能强于I340-T4,价格还比I340便宜。。。

目标:

  • 通过openwrt设置vmxnet3万兆虚拟网卡通过esxi的链路聚合设置I350, 实现4Gb上行链路
  • 过程:

  • netgear GS116E V2交换机,只支持static的链路聚合lag,不支持lacp。。。双机拷贝openwrt下文件速度之和最多1900Mbps
  • 后来更新了个HP 1810-8g的设备,成功实现了distribute switch下的lacp,但是双机拷贝openwrt下文件速度之和最多仍然是1900Mbps
  • 通过监控发现,静态下和动态lacp下,走的是两个物理网口,但是速度之和为1900Mpbs(最后有截图)
  • 另外,如果I350的4个网口,直通了2个e1000,另外两个做lacp的话,当openwrt选择虚拟vmnet3时,网络是不通的,只有选择e1000才通。。。
  • 最后在I350直通了2个网口分别给2台物理机,同时拷贝openwrt速度均可以达到1000Mpbs,说明不是磁盘性能问题。
  • 继续阅读在HP GEN8上安装openwrt,实现“万兆”虚拟路由器。。。

    无人值守编译openwrt时自动跳过错误,不中断的方法。。。

    编译openwrt时经常因为各种因素导致package编译失败,默认编译make V=99会打印所有输出,并且遇到package编译失败会中断整个编译过程,非常令人恼火。。。其实只要加上IGNORE_ERRORS=1 的选项进行编译就不会出现这样的问题了,另外网上找到了一个脚本,可以更直观的发现编译错误,最多编译完成后再手动调整编译package咯,节省很多时间。。。
    转载自:
    https://lists.openwrt.org/pipermail/openwrt-devel/2009-June/004411.html

    Openwrt 扫描在线设备并自动关机

    由于懒得在关闭PC或者手机后去关路由器,我写了2个关机脚本:

    1.该脚本在局域网没有在线设备时关闭路由器

    2.该脚本在局域网某两台固定IP的PC离线时关闭路由器(防止未关手机wifi时路由器无法关闭)

    定时任务

    参考资料:
    1. http://blog.csdn.net/qianguozheng/article/details/28393145

    Openwrt 格式化4T 单个分区硬盘(GPT)

    首先保证硬盘所有分区已经删除,即整个硬盘处于初始化状态。
    ssh进入openwrt:

    tune2fs我编译op的时候木有编译进去,但是我从op官网下了个bb x86版本的,居然好用。。。

    使用tune2fs之前,mkfs.ext4默认
    (5.00%) reserved for the super user
    即保留了5%给超级用户,浪费了我200GB的空间,不可忍啊。。。

    运行了tune2fs以后,找回来了。。。。

    自编译Openwrt X86支持多核、大内存、迅雷远程和过滤广告 (debootstrap+debian+adbyby)

    最近迷上了OP的X86,一直在捣鼓,官方编译的generic版本虽然packages很全,但是kernel仍然是没有支持多核和大内存,装了以后只支持1个核心和1GB内存,超级不爽。X64版本虽然支持了多核和大内存(2GB/2GB user/kernel),但是迅雷远程也就是xware木有支持64位的,只有32位的glibc或者uclibc,所以忍痛放弃。还是自己编译吧。。。
    trunk版是大坑,自从r45995改成了musl libc以后,对uclibc非常不友好。。。虽然可以在make menuconfig的时候通过advanced configuration options (for developers) > Toolchain Options > c library 可以改成uclibc,编译时候还是一堆错。。。等稳定以后再说了。。。浪费我几十个小时。。。各种问题。。。
    最后还是选了稳定的barrier_breaker和r46287的feed,开工:
    1.编译OP X86 32位版本:
    继续阅读自编译Openwrt X86支持多核、大内存、迅雷远程和过滤广告 (debootstrap+debian+adbyby)

    Openwrt X86 32位官方版本真是坑爹,居然少kmod-e1000e这个包,害的我只有自己编译了。。。。

    Openwrt X86 32位官方版本真是坑爹,居然少kmod-e1000e这个包,启动总是卡在 protocol family 24,后来发现原来板载网卡没认出来,害的我只有自己编译了。。。。

    编译出来的img好使~~

    废物利用 Openwrt X86 刷机实战(5个千兆网口+wifi,任意分配wan和lan,使用全部硬盘空间)

    最近使用中发现一般的路由器性能还是不行,例如顶级的wrt1900ac,50M跑满SS使用rc4-md5的负载约为40-50%,若使用aes256cfb负载约为70%。如果家里是100M的带宽跑满SS估计会用到100%,这时候性能就不够了,特别是如果家里有两条宽带的,那性能就更不够用了,此时就必须使用x86架构了。另外废旧的电脑可以利用起来。
    网上openwrt x86攻略不多,大多数只有寥寥几句,还是自己弄吧。。。

    0.准备工作
    硬件配置:
    处理器:Intel(R) Core(TM) i3 CPU 540 @ 3.07GHz
    主板:索泰 H55 itx,板子上只有一个千兆网口Intel 82758DM,还有个mini pcie的无线网卡ralink RT2790/2720,无线网卡驱动为kmod-rt2800-pci(This package contains the Ralink Driver for WiFi, a Linux device driver for 802.11a/b/g universal NIC cards – either PCI, PCIe or MiniPCI – that use Ralink chipsets (rt2760, rt2790, rt2860, rt2890).)
    内存:G skill F3-12800CL9D-4GBRL 2g*2
    固态硬盘:镁光M4 CT256M4SSD2 SATA3 SSD 256GB (openwrt use all space)
    四口千兆PCIE网卡:Intel I340-T4( Intel 82580 )四口PCIE网卡pci-e1000M有线千兆网卡E1G44HT(注意:之所以选择这块而不是更加新的I350-T4,是因为怕驱动找不到,而82580芯片直接有kmod-igb驱动支持(This package provides the igb kernel modules for Intel 82575/6 & 82580 Gigabit NICs))
    U盘一个
    显示器键盘鼠标网线
    和另外一台win7电脑。。。
    继续阅读废物利用 Openwrt X86 刷机实战(5个千兆网口+wifi,任意分配wan和lan,使用全部硬盘空间)

    利用openvpn远程连回家里openwrt路由器上内/外网。。。

    最近考虑搞个双线或者精品网,但有时出门在外,无法享受,岂不浪费。于是考虑通过openvpn连回家里路由器来上网,还能访问家里的设备。。。家里的刚升了上行带宽,正好来试试。

    首先在刷了openwrt的wrt1900ac路由器上安装软件:

    然后编辑/etc/easy-rsa/vars,修改部分内容

    接着生成证书和diffie-hellman key:
    手工清空/etc/easy-rsa/下的key目录或者运行clean-all
    生成ca证书
    build-ca
    生成dh密钥
    build-dh
    服务器证书
    build-key-server server
    客户端证书
    build-key coffeecat
    最后两个后面的名字都可以改

    拷贝到服务器目录下:

    拷贝到客户端:
    ca.crt dh1024.pem coffeecat.key coffeecat.crt

    然后就是最关键的配置openvpn服务器端和客户端了:
    路由器服务器端:
    编辑/etc/config/openvpn :

    注意:172.24.1.1为路由器的lan ip,172.24.1.100-172.24.1.105是为vpn客户端分配的ip端,一定要和路由器为lan dhcp的ip段错开。

    然后在luci或者命令行启动openvpn:

    ps一下有进程就对了

    windows7 openvpn客户端配置:
    C:\Program Files\OpenVPN\config\client.ovpn

    最后在路由器上增加自定义iptables规则:
    先把tap0放到lan区域中,然后在自定义规则里面加上:

    另外win7里面要设置一下metric,否则可能不是走的vpn这个路,设完以后,可以看到vpn的跃点最小:

    参考:

    1.http://blog.ltns.info/linux/connect_two_home_networks_using_openvpn_and_openwrt/
    2.http://huxos.me/blog/openwrt-openvpn/

    Linksys WRT1900AC 路由器双线(Dual Wan)/多线(Multi Wan)设置教程

    WRT1900AC 刷了openwrt以后,修改vlan配置就可以实现多wan了,下图是刚琢磨出来的网口结构(Layer)图,刷完openwrt以后默认就是这个样子了。。。
    vlan1是lan,vlan2是wan,port5为cpu也就是eth0,port6为eth1,与eth0相连的是lan,与eth1相连的是wan,port0..3分别对应路由器外壳印刷的4..1,port4对应路由器外壳印刷的Internet。

    20150627,研究一天以后发现无论怎么划分vlan,都无法实现dual wan,因为分来分去都是在eth0.x里面,而不是eth1.x,最多只能将某个lan port转换为wan port,但是无法和wan口同时使用。。。而我的tplink wdr4310一下就设置好了。。。

    图片1

    20150628,在op论坛发了个求助帖子,最后在leitec网友的帮助下终于搞定vlan设置,实现了双线双wan接入设置:
    修改 /etc/config/network 为:

    继续阅读Linksys WRT1900AC 路由器双线(Dual Wan)/多线(Multi Wan)设置教程