先把要解决的麻烦说清楚
一个十来个人的小办公室,测试组要华东城市的出口,推广组要华南城市的出口,还有两台机器专门跑数据采集,需要隔一段时间换一个地址。最初的做法是每台电脑的浏览器插件里手动填代理,填完之后发现根本管不住——有人重装系统忘了填,有人手机上开着另一个代理,还有人图省事直接关掉插件。你在后台看日志,出来的IP乱七八糟,压根分不清哪台设备是哪个出口。
这时候思路就该换一下:不要一台一台去填,而是让路由器替你填。设备连上网线或者WiFi,什么都不用设,流量自己就从一个统一的出口出去。这就是旁路由要干的事。
为什么普通路由器里找不到"代理"这一栏
很多人第一步就卡住了:翻遍路由器的设置页,只有宽带拨号、无线名称、端口映射、家长控制,压根没有"代理服务器"这个输入框。不是你没找到,是家用固件的功能就到这儿了——它能帮你拨号上网,但它本身不会替你连代理。
所以真正的做法不是"在路由器里填代理",而是在现有网络里再挂一台小机器,让它专门干"连代理 + 转发"这件事。这台小机器就是旁路由,也有人叫它辅助网关。它不替换你原来的主路由,只是蹲在旁边,接过网段里一部分设备的出口活儿。
这么做的好处很直接:主路由不用动,家里或公司原来的网络该怎么用还怎么用;旁路由挂了就挂一台机器的活儿,主网络不受影响;而且换代理、换城市、换账号,只在旁路由上改一处,下面几十台设备跟着一起变。
动手前的三样东西
第一样,一台能装 OpenWrt 的小主机。软路由小主机、闲置的旧笔记本、树莓派都行,双网口最好,单网口也能做,只是接线方式不一样。内存 1G 起步,跑转发足够了。
第二样,一份能用的代理接入信息。这里拿神龙IP举例,开通之后你会拿到四个值:服务器地址、端口、账号、密码,走的是 SOCKS5 接入。它的机房是自营的,响应大概 30ms 这个量级,动态独享套餐峰值 10Mbps、时效可以选 2 到 360 小时,做办公室这种十几台设备共用一条出口的场景,带宽是够的。如果你们是长期固定出口(比如服务器对外联调、门店设备固定上报),那就用静态高级,IP 长期不变,省掉每次换地址的麻烦。
第三样,一张网段规划表。先写下来:主路由是谁、网段是多少、旁路由固定用哪个地址、哪些设备要走代理、哪些设备必须直连。举个例子,主路由 192.168.1.1,网段 192.168.1.0/24,旁路由固定成 192.168.1.2。别让旁路由自己去 DHCP 抢地址,一定要在路由器里给它做个地址绑定。
旁路由怎么接进现有网络
接法分两种,选哪种取决于你的主路由能不能改 DHCP 的网关参数。
接法一:旁路由 LAN 口接主路由 LAN 口,旁路由关掉 DHCP。两台设备在同一个网段里,旁路由就是个固定 IP 的普通成员。这种接法网络最干净,设备之间还能互相访问,推荐优先用。
接法二:主路由 LAN 口接旁路由 WAN 口,旁路由开 DHCP,做成二级网络。下面设备拿的是旁路由发的地址,天然全部走代理。缺点是两层 NAT,局域网内互访会麻烦一点。
接好线之后,在旁路由上装好 OpenWrt,把 LAN 口地址改成你规划的那个固定地址,网关和 DNS 先指向主路由,确认它自己能上网,再去配代理。
在旁路由上把代理配起来
核心就两件事:让旁路由自己连上代理,再把设备的 TCP 连接"劫持"过来丢给代理。OpenWrt 上用 redsocks 做这件事最省心,装好之后编辑配置文件:
base {
log_debug = off;
log_info = on;
daemon = on;
redirector = iptables;
}
redsocks {
local_ip = 127.0.0.1;
local_port = 12345;
ip = 代理服务器地址;
port = 代理端口;
type = socks5;
login = "你的账号";
password = "你的密码";
}
存好之后重启 redsocks,它就会在本地的 12345 端口待命。接着加转发规则,把所有出去的 TCP 连接指到这个端口上。注意规则里要把内网地址和代理服务器本身的地址排除掉,不然旁路由自己连代理的流量也会被绕回来,直接死循环:
iptables -t nat -N PROXY
iptables -t nat -A PROXY -d 192.168.0.0/16 -j RETURN
iptables -t nat -A PROXY -d 代理服务器地址 -j RETURN
iptables -t nat -A PROXY -p tcp -j REDIRECT --to-ports 12345
iptables -t nat -A PREROUTING -p tcp -j PROXY
还有一件容易漏的:DNS。只转 TCP 不转 DNS 的话,设备能连上但域名解析还是走本地,解析结果和出口对不上,页面可能打不开或者跳错地区。稳妥的做法是把旁路由 dnsmasq 的上游改成走代理的 DNS,或者干脆让 dnsmasq 把查询也转给 redsocks。配完这些,记得在启动脚本里加一句规则恢复,不然一断电重启,iptables 规则就没了,你会误以为是套餐出问题。
让网段内的设备自动生效,三种下发方式
旁路由配通了,只是说它能自己走代理。要让下面几十台设备"连上就用",还得把网关和 DNS 指给它。三种做法,按你的主路由权限挑:
方式一:改主路由 DHCP 里的网关和 DNS。登录主路由,找到 DHCP 设置,把下发的默认网关和 DNS 服务器改成旁路由的地址。设备重新连一次网络拿到新租约,就开始走旁路由了。这是最省事的一种,缺点是不少运营商给的光猫固件把这一项锁死了,你根本改不了。
方式二:让旁路由接管 DHCP,主路由的 DHCP 关掉。光猫改不动的时候用这招。主路由只负责上网,地址分配交给旁路由,谁拿到的地址,网关就是旁路由。这种做法生效彻底,但旁路由一关机,整个网段都上不了网,所以尽量把旁路由放在不容易被碰到的位置,别让人顺手拔电源。
方式三:单台设备手动指定网关。在设备的网络设置里,把网关和 DNS 填成旁路由地址。适合先拿一台机器做验证,确认没问题再大面积下发。缺点是每台都要手动点,设备一多就不现实了。
| 方式 | 改动位置 | 生效范围 | 适合场景 |
|---|---|---|---|
| 改主路由 DHCP | 主路由后台一处 | 整个网段自动 | 主路由固件允许自定义网关 |
| 旁路由接管 DHCP | 旁路由开、主路由关 | 整个网段自动 | 光猫参数被锁、改不动 |
| 设备手动指定 | 每台设备网络设置 | 单台 | 先验证效果,再批量下发 |
怎么确认它真的生效了
别信"设置完就好了",一定要看结果。最直接的办法:在一台连着网络的电脑上打开浏览器,随便找个查IP的页面,看显示出来的地址和归属地。如果显示的是神龙IP分配给你们的那个地址、归属地正好是你选的城市,说明这条路走通了。
命令行更利索一点,在终端里拉一次页面看返回的地址,对比旁路由后台的连接日志,时间点能对上就没问题。再顺手做两件事:换一台设备连同一个WiFi,看是不是同样生效;把旁路由重启一次,看规则还在不在。这三步做完,基本就能放心交给同事用了。
如果出口地址是对的,但网页打不开,八成是 DNS 没跟着转;如果部分设备生效、部分不生效,先让那台设备断开重连拿新租约,还不行就看它是不是手动配过静态IP,或者之前在浏览器里手动填过代理没清掉。
几个真正会踩到的坑
IPv6 忘了关。设备同时有 IPv4 和 IPv6 地址时,很多应用会优先走 IPv6,而你的转发规则只管 IPv4。结果就是看着设置全对,出口地址却还是本地那条线。要么在旁路由上把 IPv6 下发改成不分配,要么把规则补全。
两个 DHCP 打架。主路由的 DHCP 没关,旁路由又开了一个,设备拿到哪个地址全看谁先应答,表现为"有的人能用有的人不能用",排查起来特别费时间。开一个关一个,别犹豫。
UDP 走不通。SOCKS5 转发默认处理的是 TCP,语音通话、部分游戏和某些应用的 UDP 包会掉。如果这些也必须走代理,得额外做 UDP 的中继,或者干脆把这类设备单独放直连。
小主机扛不住。十几台设备、几百个并发连接,一般的小主机完全没压力;但如果你指望它跑满千兆带宽,那是想多了。旁路由的定位是"统一出口 + 统一管理",不是做核心交换。出口带宽不够,优先看套餐峰值,动态独享 10Mbps、动态高级 6Mbps,另外带宽也有 6 到 15M 可定制的空间,按实际设备数估一下再定。
临时需求不用动整套网络。有时候只是某个小组这周要做各地搜索排名测试,那就没必要改 DHCP,单开一台旁路由、手动指定几台测试机的网关就行,测完撤掉,谁都不受影响。这也是旁路由相对"改主路由"最舒服的地方——随用随加,随走随撤。
常见问题
Q:旁路由必须用双网口的小主机吗?
不是。单网口的机器把 LAN 和 WAN 桥接在一起,或者全部划到 LAN 里,一样能跑。双网口的好处是接线和排障思路更清楚,真要出问题,一眼能看明白流量从哪个口进哪个口出。
Q:设置完之后,手机连上WiFi还要手动填代理吗?
不用。只要手机拿到的网关和 DNS 指向旁路由,它自己就会走代理。但要注意:如果手机之前手动填过代理服务器,得先去设置里清掉,否则手动的会覆盖自动下发的,你会以为是旁路由没生效。
Q:为什么同一个WiFi,电脑生效了,平板不生效?
先让平板断开重连一次拿新租约,大部分情况是它还在用旧的网关。还不行就检查三处:是不是手动配了静态IP、是不是开着系统的 IPv6、是不是连到了另一个AP上而那个AP没接旁路由。
Q:主路由的 DHCP 参数改不了怎么办?
运营商给的光猫经常把这项锁死。这种情况就走方式二,让旁路由开 DHCP、主路由关掉,或者用二级网络的接法把旁路由串在中间。另外,长期固定出口的团队更推荐静态高级的长期固定 IP,地址不变,上报白名单也不用一遍遍重配。
Q:设备多起来之后,账号密码怎么管?
旁路由上的代理账号只配一份,密码不出现在任何终端上,人员进出只要改旁路由一处。这比过去每台电脑存一份密码、离职还得逐台清要干净得多,也是很多人最后选择旁路由方案的真实原因。





