鸟枪换炮之软路由

随着家庭宽带带宽不断提高,对路由器的要求也越来越高。以前30M宽带的时候,用Netgear R6300v2就跑得很欢了,后来升级到100M宽带,6300v2有点力不从心,就换成了R7000。但是经测试,把shadowsocks-libev放在路由器上跑,即使使用chacha20这种轻量级的加密方式,经常CPU 100%了还跑不满带宽。最近改用更耗CPU的v2ray以后,问题愈加严重,于是动起了软路由的主意。注意:玩软路由需要有一定的Linux基础,电脑小白就别折腾了。


(ARM架构的CPU还是太弱,R7000路由,v2ray跑到9MB/s就已经这样了)

软路由其实就是台配备了多网卡的小电脑,因为使用了J1900、3215U甚至i3、i5级别的CPU,运算能力比普通的硬路由强了至少一个数量级。现在普遍使用的方式是软路由+硬路由无线AP,耗CPU的应用跑在软路由上,比如各种梯子、NAS、去广告插件等等。凭借软路由强劲的CPU,使用梯子+去广告插件以后跑满几百上千兆带宽也毫无问题。

经过比较,我选择了一款CPU是赛扬3205U的软路由。J1900虽然很有名,但被奸商炒得价格虚高,而且翻墙这种应用更加看重CPU的单核能力,所以单核更强的3205u胜出。它的兄弟3215u更有名,但似乎停产了全网无货,只好用3205u代替。其实前者只多出0.2GHz频率,GPU稍强,这些差异在软路由应用上基本可以忽略不计。

上几张图。网上软路由商家很多,同样cpu也有很多不同的产品:

主要看上了这款软路由扎实的做工,HDMI接口和没有VGA接口。主板的兼容性不错,虽说要求1.35V低电压DDR3L笔记本内存,但实测1.5V电压的DDR3 1067内存都能用。还有Mini PCIE插槽可以插msata ssd,不过我这里直接用了一块旧的笔记本机械硬盘。

BIOS界面:

因为之前R7000路由器用了Koolshare论坛的改版梅林固件,这次自然地选择了同样出处的Koolshare LEDE固件。首先去他们官网下载最新固件,选择文件名为openwrt-koolshare-mod-xxxxx-x86-64-combined-squashfs.img.gz的这种即可。将其中的img文件解压出来备用。

接着下载physdiskwrite工具,用来写盘。记得要下载那个”physdiskwrite 0.5.3 + PhysGUI”。把给软路由准备的硬盘装在硬盘盒里,连接电脑后,运行PhysGUI.exe。这个软件是德文的,但界面简单,使用起来问题不大。

如上图,右键点击目标硬盘(千万不要选错盘符,否则后果不堪设想),然后一路选择”Image laden” -> “Offnen”,弹出文件选择框后选择之前的img文件。然后跳出来一个确认框,把其中的”remove 2gb restriction”选项勾上,就可以进行写盘了。完成后拔下硬盘,装到软路由上去。

硬件方面已经准备妥当,用hdmi线连接软路由和显示器,用usb线接键盘,上电开机!我的这款软路由开机时按F11可以进入启动盘选择界面(重启则是经典的Ctrl+Alt+Del):

当出现”random: crng init done”这行提示时,代表启动完成。这时按一下回车,就可以进入软路由的命令提示符了。

下面开始配置软路由的网卡。

vim /etc/config/network

主要修改了下面这些项目的配置。把eth3(第4个网口)作为WAN口接光猫,剩下的eth0/1/2三个网口作为LAN口。软路由IP改为192.168.50.1,主要是为了防止和光猫的192.168.1.1网段冲突。MTU根据实际设置,一般1492或者不设都没问题。

config interface 'lan'
        option type 'bridge'
        option ifname 'eth0 eth1 eth2'
        option proto 'static'
        option ipaddr '192.168.50.1'
        option netmask '255.255.255.0'
        option ip6assign '60'
        option mtu '1492'

config interface 'wan'
        option ifname 'eth3'
        option proto 'dhcp'

config interface 'wan6'
        option ifname 'eth3'
        option proto 'dhcpv6'

保存后,使用下面命令应用新的网络配置:

/etc/init.d/network restart

至此网卡配置完毕。用一根网线连接电脑和软路由,这时电脑应该可以自动获得192.168.50.233这种IP。打开浏览器访问192.168.50.1,登陆密码koolshare,就可以进入LEDE配置页面了:

可供配置的项目非常多,单纯作为路由器使用的话,保持默认已经可以了。此Koolshare版LEDE系统带有一个软件中心,里面有几十款软件,最实用的就是各种梯子以及koolproxy(去广告插件),可以根据需要安装。这里贴一张软路由跑v2ray的youtube速度截图,之前在R7000路由器上撑死跑到12000Kbps左右,现在都快10倍了:

最后,目前没有和软路由相性比较好的无线模块,所以一般把一台无线路由器接在软路由LAN口上作为AP,供无线设备连接。因为基本所有服务已经跑在了软路由上面,无线路由器不需要多高的配置,R6300v2档次的已经足够。这里提醒一点:别把无线路由作为二级路由,而是当成交换机使用。即关闭无线路由的DHCP功能,并将其自身的IP设为不同于光猫和软路由的网段(如192.168.2.1),将无线路由器的LAN口(而非WAN口)接软路由的LAN口。这样,所有设备无论接在软路由还是无线路由上,都在同一网段了。想访问无线路由设置界面时,把电脑IP设置成同网段即可,一般也没这需求。

本文为悠然居(https://wordpress.youran.me/)的原创文章,转载请注明出处!

11 thoughts on “鸟枪换炮之软路由”

  1. 你好, 我想和你交流下。。 可以联络你吗?

    Google Chrome 73.0.3683.103 Google Chrome 73.0.3683.103 Windows 7 x64 Edition Windows 7 x64 Edition
    1. 没啥好说的啊,wordpress博客傻瓜化流程。剩下UI方面要调整的话根据自己需要修改css/js

      Google Chrome 75.0.3770.100 Google Chrome 75.0.3770.100 Windows 10 x64 Edition Windows 10 x64 Edition
      1. 当然可以,自己编译个7000的固件就可以了

        Google Chrome 78.0.3904.97 Google Chrome 78.0.3904.97 Mac OS X  10.14.6 Mac OS X 10.14.6
  2. 你好,这边看到最后貌似有一个小小的错误,就是软硬路由用lan对lan的接法,必须关闭硬路由的dhcp,并且路由地址设为和软路由同一网段,这样才是当交换机使用的,若不同网段,硬路由还必须开启dhcp分配地址给链接的设备,就是相当于二级路由了,我在一些教学网站上看到的就是这样,若有错还请斧正

    Google Chrome 80.0.3987.149 Google Chrome 80.0.3987.149 Windows 10 x64 Edition Windows 10 x64 Edition
  3. 一样的,区别只是软路由还是硬路由做DHCP服务器。
    可能我文章说得不太清楚,“将其自身的IP设为不同于光猫和软路由的网段”其实并不必要,只要别和软路由的IP冲突即可。
    硬路由的lan口接软路由的lan口,这时候硬路由就只是做普通交换机使用,和IP也没啥关系了。接到软路由和硬路由lan口上的其他设备都会在同一网段,由软路由分配IP。

    Google Chrome 83.0.4103.61 Google Chrome 83.0.4103.61 Mac OS X  10.15.4 Mac OS X 10.15.4

Leave a Reply

Your email address will not be published. Required fields are marked *