让软路由安心做旁路由的正确姿势

前言:
玩软路由的人大部分都会有一些在硬路由上不好实现的需求 , 比如去广告 , 下载机 , 文件备份同步 , 出国等等需求 , 但软路由的网络拓扑基本就两种 , 作主路由和传统旁路由网关 , 但在我的实际使用过程中 , 总多多少少会有不完美的地方 。
比如:

  1. 当我修改配置需要重启设备时 , 全网设备都会暂时断网 , 容易影响他人上网 。
  2. 当软路由在跑某些cpu占用高的任务的时候 , 可能会间歇性造成网络延时高 , 要是这时有人刚好在打游戏容易引发家庭矛盾 。
  3. 我使用的环境是openwrt+电信公网IP , 公网IP大概48小时动态切换一次 , 有时候切换IP会造成上不了网 , 得重启设备才行 , 体验不好 。
  4. 固件一直在更新 , 也可能存在不稳定的问题 。
需求:硬路由做主路由保持稳定 , 软路由做旁路由满足功能需求 , 不同设备自动分配不同网关 。
让软路由安心做旁路由的正确姿势

文章插图
 
鉴于此 , 我放弃了软路由做主路由的计划 , 本来旁路由会是个挺好的选择 , 但传统的旁路由模式 , 要么让主路由的DHCP服务指定所有设备的网关为旁路由 , 让全网设备统一走旁路由 , 但这又会出现当我需要重启路由时其他设备断网的问题;要么让某些设备手动配置IP和旁路由网关 , 让他们单独走旁路由达到出国和去广告的目的 , PC和电视倒还好一次配置永久生效 , 但是手机和笔记本就不太方便 , 在家里手动配置IP和网关 , 到了单位得切换自动获取 , 回家又得重新配置 , 就很烦 。所以一直没有找到一个完美的解决方案 。
我的硬路由设备是华硕AC68U , 在这些年的使用中很满意也极少出现问题 , 如果不跑那些乱七八糟的服务 , 它的性能完全是够用的 。
所以 , 如果能让主路由的DHCP单独为指定设备分配IP的同时 , 也让该设备网关指向旁路由 , 那就完美了 。既可以满足折腾的心 , 又不会影响到其他人使用 。
网上查找方法后发现刚好华硕路由器的DNSmasq服务可以满足需求 。(旁路由的具体配置过程社区里面有很多 , 大家另外搜索吧我就不重复造轮子了)
配置过程如下:1、WEB页面设置
  • 进入系统管理 -> 系统设置
  • 启用 Enable JFFS custom scripts and configs 选项(刷了梅林固件或者原厂改版固件的都会开启了)
  • 启用 SSH 选项(默认开启了局域网内登录)
2、登陆ssh操作
  • 新建文件:
vi /jffs/configs/dnsmasq.conf.add
  • 根据自己的实际情况编辑配置 , 并保存
#配置旁路由网关和DNS的IP , 标注tag为openwrt;
dhcp-option=tag:openwrt,option:router,192.168.50.254(你的软路由IP)
dhcp-option=tag:openwrt,option:dns-server,192.168.50.254(你的软路由DNS)
#指定mac地址的设备分配IP、网关和DNS
dhcp-host=AA:BB:CC:DD:EE:FF(你的设备MAC地址),set:openwrt,192.168.50.55(配置的IP),,iphone8(自定义名称)
  • 保存重启dnsmasq让配置文件生效
service restart_dnsmasq
(注意哦 , 如果在华硕的固件上开启出国服务 , 可能会导致这个文件被覆盖失效)
  • 断开手机和笔记本wifi重新联网 , 可以发现指定的设备已经自动分配旁路由网关 , 其他设备还是走主路由网关 。
现在可以放心折腾了 , 即使软路由出问题了也不会影响其他人上网 。完美!!!
友情拔草:除了需要多播出国去广告大带机量和其他定制性功能等需求 , 对大部分用户来说 , 单纯NAT转发上网软路由并不比硬路由有优势 , 不要迷信软路由 , 也不是要非上双网口主板(太贵) 。

【让软路由安心做旁路由的正确姿势】


    推荐阅读