V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jamme
V2EX  ›  宽带症候群

请教各位大佬一个有关单臂路由的网络结构问题

  •  
  •   jamme · 1 天前 · 1309 次点击

    先大致介绍一下我的网络设备:

    • 桥接光猫
    • VLAN 交换机( Redmi AC2100 ,OpenWrt ,将 WAN 口并入 br-lan ,启用网桥 VLAN 过滤,当作交换机和 WiFi 热点使用)
    • N1 单臂路由( flippy 的 OpenWrt )

    网络拓扑结构如下:

    网络拓扑结构

    AC2100 交换机

    WAN 口并入 br-lan ,进行了 VLAN 划分,光猫连接 AC2100 的 WAN 口; N1 连接 AC2100 的 LAN1 ,N1 拨号上网;其余两台有线连接设备分别接入 AC2100 的 LAN2 和 LAN3 。AC2100 设置为静态 IP(192.168.1.2),并关闭 DHCP 。开启无线热点供无线设备上网,网桥 VLAN 过滤配置如下:

    N1 单臂路由

    主要负责拨号上网、DHCP 以及跑各种插件,WAN 使用eth0.100,LAN 使用eth0.10,配置如下:

    目前这个网络结构可以正常上网。

    问题

    目前有两个问题:

    1. 在 PC 上开启游戏加速器,无法正常为同局域网内的主机加速。例如,我在 PC 上启动雷神加速器,加速器分配172.24.1.0/16的网关和 DNS ,配置在 NS 上后,加速器会显示连接成功,但在 NS 上点击连接测试,无法正常测试,进入 eshop 和 NSO 等页面,也无法正常访问任天堂服务器。
    2. LAN2 和 LAN3 接口接入的两台有线设备均可正常获取 IP 地址和访问网络,但是如果我将其中一个接口通过网线,连接到另一台 redmi AX6(OpenWrt)时,AX6 的 WAN 口无法获取到 IP 地址。我本想通过这种方式,使用 AX6 组建一个子网,尝试让设备都在子网下是否可以正常加速主机,但未能获取 IP 导致无法验证。

    补充:

    我也尝试过使用雷神加速器和 UU 主机加速的 APP 在路由器上安装插件,并通过插件去加速,但都无法正常获取路由器信息,无法安装和使用路由器插件。

    这个网络拓扑结构是参照油管博主 Owen Yang 的视频配置的,唯一的区别就在于他使用的交换机是水星 SG108 PRO ,我不太清楚是我配置上的问题,还是说 OpenWrt 系统的 AC2100 无法做到等价效果。我尝试 Google 了相关问题,也问了 GPT ,最终都没得到合适的解决方案。希望各位大佬不吝赐教,万分感谢。

    45 条回复    2025-12-19 18:56:44 +08:00
    orionl
        1
    orionl  
       1 天前   ❤️ 1
    问题一:PC 开启游戏加速器,Switch (NS) 无法连接/测试失败
    症状分析:
    PC 加速器显示连接成功,说明 PC 可以访问公网。但 NS 无法通过 PC (作为网关)上网。这种架构下,流量路径是:NS -> (L2 WiFi/网线) -> AC2100 -> (L2 网线) -> PC -> AC2100 -> (VLAN Trunk) -> N1 -> Internet 。
    既然 NS 和 PC 接在同一个“交换机”( AC2100 )下,它们之间的通信应该纯粹是二层( L2 )流量,主要由 ARP 和本地转发决定。

    排查与解决步骤:

    检查 Windows 防火墙(最高频原因):
    现象: 加速器虽然开启了代理,但 Windows 防火墙默认会拦截来自局域网其他设备(你的 NS )的入站连接请求。
    操作: 请在 PC 上暂时彻底关闭 Windows 防火墙(专用网络和公用网络都关掉),然后重新测试 NS 连接。如果成功,请在防火墙入站规则中为加速器程序放行,或仅允许 ICMP 和特定端口。
    检查 AC2100 (交换机)的端口隔离/防火墙:
    你将 AC2100 的 OpenWrt 当作交换机使用,但 OpenWrt 依然有防火墙和网桥设置。
    操作:
    进入 AC2100 后台,确保 br-lan 的防火墙区域( Zone )是 Accept (允许) 所有的 Input/Output/Forward 。
    检查是否开启了“AP Isolation”( AP 隔离)。如果 NS 是 WiFi 连接,PC 是有线连接,且隔离开启,它们无法通信。
    关键点: 检查 br-lan 的设置中,“IGMP Snooping”是否开启。建议关闭 IGMP Snooping ,有时它会干扰组播/广播发现,导致连接测试失败。
    检查 N1 (主路由)的硬件/软件流量分流( Offloading ):
    虽然 NS->PC 不经过 N1 ,但 PC->Internet 经过 N1 。OpenWrt 的“流量分流”、“Turbo ACC”或“Flow Offloading”经常导致游戏加速器(特别是涉及 NAT 修改的)失效。
    操作: 进入 N1 后台 -> 网络 -> 防火墙(或 Turbo ACC 中心),关闭“软件流量分流”和“硬件流量分流”。


    问题二:接入 AX6 做子路由,WAN 口无法获取 IP
    症状分析:
    LAN2/LAN3 接入电脑能获取 IP ,接入 AX6 路由无法获取。这通常是 VLAN Tag (标签)处理不一致导致的。

    原理:

    普通 PC 网卡通常会忽略发给它的带 VLAN Tag 的数据包(或者由驱动剥离),如果 Switch 发送了 Untagged 包,PC 也能收。
    路由器的 WAN 口通常严格遵守标准,如果它期待纯净的 Ethernet 帧( Untagged ),却收到了带 Tag 的帧,或者 VLAN ID 不匹配,它就会丢弃,导致 DHCP Discovery 失败。
    排查与解决步骤:

    核对 AC2100 的 VLAN 表( Bridge VLAN Filtering ):
    你需要确保连接下级设备( LAN2, LAN3 )的端口,在 VLAN 10 (即你的内网 VLAN )上被配置为 Untagged (不带标签) 且 PVID (Port VLAN ID) 必须设为 10 。
    典型错误配置: 如果你把 LAN2 设为 Tagged 10 ,有些 PC 网卡比较“宽容”能处理,但 AX6 的 WAN 口作为标准路由接口,默认不接受带 Tag 的流量(除非你在 AX6 上也配了 VLAN )。
    修正配置( AC2100 ):
    br-lan 接口概览中:
    LAN1 (连 N1): 勾选 VLAN 10 (Tagged/Local), VLAN 100 (Tagged)。
    LAN2/LAN3 (连设备): 勾选 VLAN 10 (Untagged), PVID: 10 (在“主要”或“PVID”列设置)。
    检查 AX6 WAN 口设置:
    确保 AX6 WAN 口协议是 DHCP 客户端。
    排雷: 很多 OpenWrt 固件为了防冲突,WAN 口可能默认开启了防火墙拒绝 Ping 或其他保护,但获取 IP 应该没问题。
    尝试: 如果确认 AC2100 配置无误,尝试将连接 AX6 的网线手动指定速率(比如强制千兆),排除自动协商失败( Auto-negotiation )的问题。


    在 N1 上无法安装加速器插件,通常是因为 N1 自身无法正确解析域名或连接插件服务器。

    检查 DNS:SSH 登录 N1 ,ping baidu.com 看看通不通。如果不通,编辑 /etc/resolv.conf ,确保留有 nameserver 223.5.5.5 之类的公共 DNS 。
    检查时间: 确保 N1 系统时间同步,时间不对会导致 SSL 证书错误,无法下载插件。
    总结建议操作顺序:

    PC 端: 关闭 Windows 防火墙。
    AC2100 端: 确认 LAN2/3 端口是 VLAN 10 Untagged 且 PVID=10 。
    N1 端: 关闭 Turbo ACC / Flow Offloading 。
    myderr
        2
    myderr  
       1 天前   ❤️ 1
    你这个看着挺怪的,是把 ac2100 当成交换机和 ap 了吧,然后主路由其实是 n1,然后 ac2100 做的是 ap 的模式吧。为啥要这样绕一圈呢
    birdvdsk
        3
    birdvdsk  
       1 天前 via Android   ❤️ 1
    你在最后一个图片里,把 eth0 和 eth0.10 都加入了同一个网桥,在这里合并了两个广播域,这里是有意为之吗
    birdvdsk
        4
    birdvdsk  
       1 天前 via Android
    2. 你的网段是 192.168.1.0/24 ,你的 AX6 的 lan 接口网段是否也是 192.168.1.0/24 ,如果形成地址重叠会不能应用 IP 地址
    jamme
        5
    jamme  
    OP
       1 天前
    @orionl

    问题一:

    > 在 PC 上暂时彻底关闭 Windows 防火墙(专用网络和公用网络都关掉)

    尝试了,没有效果。

    > 确保 br-lan 的防火墙区域( Zone )是 Accept (允许)



    常规设置需要全部放行么?

    > 检查是否开启了“AP Isolation”( AP 隔离)

    NS 确实是通过无线连接的,并且通常情况下连接的是 AC21200 的无线热点。但无线设置中的“隔离客户端”是关闭的

    > “IGMP Snooping”是否开启

    IGMP 嗅探是关闭的

    > 检查 N1 (主路由)的硬件/软件流量分流( Offloading )

    防火墙中似乎没有找到和流量分流相关的设置,Turbo ACC 网络加速中有软件分流分载设置,默认是开启状态,刚刚尝试关闭了一下,关闭后,会导致 DNS 解析失败,PC 无法访问网络。




    问题二:

    > AX6 问题

    AC2100 的网桥 VLAN 过滤设置如下,LAN2 和 LAN3 端口为 VLAN10 的`untagged|*`(*的意思是 Primary VLAN ID),VLAN100 设置为不参与。AX6 的 WAN 口设置为 DHCP 客户端时,无法获取 IP 地址;选择静态地址且设置为 192.168.1.0/24 中未使用的 IP 地址时,无法访问网络,且无法 PING 通网关 192.168.1.1 。

    设置指定速率的方法没有尝试过,不确定是否有用,等回来我尝试一下看看。



    > 安装加速器插件的问题,N1 可以正常访问互联网,nameserver 在 openclash 中配置了拨号时运营商提供的 DNS ,时间同步没有问题。其实 N1 上自带了 uu 加速器的插件,但是手机端无法识别。无论是手机连接 AC2100 的无线热点,还是连接 N1 的无线热点,均无法识别。雷神有几率可以连接到 N1 ,但是到 SSH 验证步骤时,无法通过验证。

    非常感谢大佬的详细建议。
    jamme
        6
    jamme  
    OP
       1 天前
    @myderr 对,是的,你理解的没错,N1 其实是主路由。之所以这么做,是我现有的两个路由器 AC2100 和 AX6 的内存都太小了,无法正常运行我所需的插件。然后没有花时间去研究软路由,所以暂时没打算购置软路由。又恰巧手边有一台 N1 ,就刷了 OpenWrt 做单臂路由来跑插件了。
    jamme
        7
    jamme  
    OP
       1 天前
    @birdvdsk #3 哦,eth0 其实可以勾选掉了,当时是做配置的时候先保留了 eth0 ,防止设备失联,设置 vlan 之后其实可以勾掉了,但是我忘记了。

    我 AX6 是 wan 保持在 192.168.1.0/24 ,lan 设置为了 192.168.2.0/24 ,应该不会形成冲突。
    birdvdsk
        8
    birdvdsk  
       1 天前   ❤️ 1
    看了好多遍也没找到明显问题,可否抓包来看看具体情况?
    1. 针对加速器无效问题:在电脑端启动 WireShark ,看看有没有源 IP 为,172.24.1.0/16 的包
    2. 针对 AX6 无法获得地址问题,在交换机上对 LAN2 或 LAN3 上抓包,看看交换机和 AX 直接是否有效通讯
    jamme
        9
    jamme  
    OP
       1 天前
    @birdvdsk #8

    刚刚抓了一下,不是特别懂怎么分析抓包数据,大佬帮忙看下,下面这张截图是启动加速器后,NS 配置好手动 IP 、子网掩码、网关和 DNS 后,首次尝试连接 WIFI 热点时,NS 提示 DNS 解析失败时的抓包状态



    下面这张图是第二次尝试连接 WIFI 热点并且成功连接后,在点击 NS 自带的网络测试功能时的抓包状态,且 NS 提示无法连接,与服务器连接已断开。



    关于 AX6 是否能与交换机有效通讯这个我没抓包试过,但我猜应该是不行,因为我尝试过通过 SSH 到 AX6 去 ping 交换机的地址,不通,ping 网关地址也一样。
    xqzr
        10
    xqzr  
       1 天前   ❤️ 1
    @Livid #1 AI

    PPPoE 本身就是一种隔离。如果不介意 LAN 暴露给 WAN ,无需任何 VLAN 就可以正常拨号联网。
    如果介意,华为光猫的“业务路由”可以只让 PPPoE 帧,带 Tag 从 PON 口发出。没有 Tag 的 LAN 侧帧,会在光猫 PON 层被丢弃。
    其它光猫的“VLAN 透传”功能,也可以看看
    Donahue
        11
    Donahue  
       1 天前
    何必搞这么复杂,N1 不拨号只做旁路由就可以了,太复杂折腾起来很麻烦。
    jamme
        12
    jamme  
    OP
       1 天前
    @Donahue 因为以前用 NAS 的 docker 部署过容器做旁路网关,但是感觉使用配置起来有点不太方便,而且游戏加速器使用也有点问题,所以就放弃了旁路网关的方式。
    jamme
        13
    jamme  
    OP
       1 天前
    @xqzr 好的,感谢,我了解一下。
    Livid
        14
    Livid  
    MOD
    PRO
       1 天前
    @xqzr 谢谢,1 楼那个大段复制粘贴 AI 生成文本的账号已经被彻底 ban 。
    allplay
        15
    allplay  
       1 天前 via Android
    旁路由一个旁字,就象征了这是歪门邪道。
    op 主你在 N1 这几十元的玩意上折腾的时间精力应该是几百元的,
    不知道你折腾多久了,查了多少资料,反复调试,最后的结果也仅仅是带宽减半、性能落伍的旁路由,仅此而已。
    好生买个几百元的 X86 主机做主路由,用你的红米做无线接入点和交换机。这样的主流架构,会省心很多。
    人生苦短,自己想想吧。
    birdvdsk
        16
    birdvdsk  
       1 天前 via Android
    @jamme 查看了抓包结果,我看到每一个发送到 NS 的回复数据包都被重放了。
    UDP 等协议重传不会有问题,TCP 协议就会因此无法正常工作。这就是为什么连接成功,但是无法上网
    allplay
        17
    allplay  
       1 天前 via Android
    你用 n1 拨号的目的是什么?你有公网 ipv4 ?
    WuSiYu
        18
    WuSiYu  
       1 天前   ❤️ 1
    不知道是不是同样的问题,但或许可以检查下这两个设置然后试试:
    1. 在“防火墙”页面中关闭“丢弃无效数据包”
    2. 打开 WAN Zone – 编辑 – 连接追踪设置 – 允许“无效”流量

    这是我之前折腾单臂路由时遇到网络不通的解决方案,具体请参考: https://wusiyu.me/openwrt-bypass-gateway-tcp-not-work/
    guiys
        19
    guiys  
       1 天前 via Android   ❤️ 1
    你的 lan2/lan3 和无线设备之间互 ping 能通吗?感觉俩问题都是跟设备之间互通有关
    WuSiYu
        20
    WuSiYu  
       1 天前
    @WuSiYu 当然我们的“单臂路由”似乎并不是同一种,我那个是配的是“旁路由”,ipv4 是主路由横跨两个网段,上行过软路由到主路由,下行直接从主路由发到客户端。你这种似乎只是划分 vlan 的话,按说跟正常网络层拓扑没区别
    jamme
        21
    jamme  
    OP
       1 天前
    @allplay #15 我当然知道选择 x86 软路由是更好的方案,我也知道选择 N100 可以一步到位,但我没有选择,肯定是有我自己的原因。另外,我知道你和恩山的某位大佬一样,很看不上旁路由,但我的 N1 不是旁路由。
    jamme
        22
    jamme  
    OP
       1 天前
    @guiys 可以的,lan3 连接的 nas ,局域网内的所有设备均可正常访问。
    guiys
        23
    guiys  
       1 天前 via Android
    @guiys 另外你这个结构可以只给光猫 wan 的数据打 vlan100 ,LAN 的数据还是默认 1 不用打 vlan ,再试一下。
    jamme
        24
    jamme  
    OP
       1 天前
    @WuSiYu #20 哦哦,那确实不一样,我的上下行流量是相同的路径。
    hackroad
        25
    hackroad  
       1 天前
    路由就路由,整什么幺蛾子单臂路由
    birdvdsk
        26
    birdvdsk  
       1 天前
    @jamme 可试试通过抓包找到数据包在哪里被重放的,只要解决了数据包重放问题,你的问题就解决了
    jamme
        27
    jamme  
    OP
       1 天前
    @guiys #23 这个方法我还真没考虑过欸,使用默认 1 和自定义是可以规避什么问题么?我之前怀疑过 VLAN 配置的问题,我问 GPT 曾经得到过一个答案,他说 openwrt 的 vlan 有可能设置的 pvid ,但并不一定真实生效。
    jamme
        28
    jamme  
    OP
       1 天前
    @birdvdsk #26 之前在 N1 上抓过包,好像可以抓到 172.24.2.0/16 的 arp 广播,但我当时没细跟,只是知道 NS 广播问谁是 172.24.2.0/16 的网关,并且得到了回应。等过两天再抓包跟一下研究研究。
    slowman
        29
    slowman  
       1 天前   ❤️ 1
    目前有两个问题:
    1. 你的截图为什么如此昏暗,看着很累
    2. 涉事网段 172.24.2.0/16 没有标在图上,而且为什么要用这么大的段
    3. 抓包是在哪个接口上抓的,这很重要. 需要在每个相关接口抓,可以 -i any host 172.24.2.X
    4. 楼上的数据包重放毛线,这是包给你丢了所以服务器不停的重传

    所以目前从抓包看不是 IP 层的问题,毕竟是 311 字节的小包重传个不停
    你可以在 PC 上尝试其他的网关软件给 switch 用来验证下
    birdvdsk
        30
    birdvdsk  
       1 天前
    @slowman TCP 是在重传,可是看 TCP 前面的部分,每个回复的数据包都正好是两份。
    jamme
        31
    jamme  
    OP
       1 天前
    @slowman

    1. 实在是不好意思,我开启了 HDR ,然后使用截图工具截图就会变暗,之前截图都是自己看,所以没考虑过这个问题,今天是第一次把截图直接发在网上的,确实考虑不周,实在是抱歉了。

    2. 172.24.2.0/16 这个网段是游戏加速器分配的,他把网关分配为 172.24.1.123 ,NS 的 IP 分配为 172.24.2.123 。

    3. 9 楼的两次抓包截图是在开启游戏加速器的 PC 上使用 wireshark 抓取的,这台 PC 连接了 AC2100 的 LAN2 端口。之前还在 N1 上使用 tcpdump 抓取过,抓到过 NS 的 arp 广播,寻问网关是谁。
    libregratis
        32
    libregratis  
       21 小时 38 分钟前   ❤️ 1
    感觉是固件问题,而且既然有另一台 redmi AX6(OpenWrt) 性能足够,最多刷一下 Stable Release 然后单独安装 app ,毕竟雷神和 UU 都支持 OpenWrt ,各自官网都有指引
    guiys
        33
    guiys  
       21 小时 24 分钟前 via Android
    @jamme 我在水星交换机上就是这么配的,这样 lan 的部分即插即用,也不用设置 pvid 。引入配置越少越稳定。
    把 ac2100 还原成纯交换机,只给 wan 打 vlan 。n1 也可以少弄一个 vlan 。
    xhcnb
        34
    xhcnb  
       19 小时 3 分钟前   ❤️ 1
    买个便宜的网管交换机吧, 水星 sg105pro 京东只要 90 块, 咸鱼二手更便宜, 是 5v 供电的, 直接一根 USB 接好,垫在 AC2100 下面就行了
    jamme
        35
    jamme  
    OP
       17 小时 49 分钟前
    @guiys #33 好的,我回头试一下,多谢了。
    jamme
        36
    jamme  
    OP
       17 小时 45 分钟前
    @libregratis 我也怀疑是固件的问题。AX6 之前是做主路由的,但是后来刷了 OpenWrt ,发现 AX6 闪存太小了,刷完 boot 就剩 70-80MB 了,随便装俩插件就爆了,所以就给换掉了。
    jamme
        37
    jamme  
    OP
       17 小时 41 分钟前
    @xhcnb 我也在怀疑是不是 AC2100 刷的固件有问题,导致界面上看着配置好了 VLAN ,实际上无法正常划分 VLAN 。但我没有证据能证明到底是网络结构的问题还是固件的问题,所以一直没下手买交换机,害怕是网络结构的问题导致无法正常主机加速,买回来也没用的话,倒不如加点钱直接买软路由。
    xhcnb
        38
    xhcnb  
       17 小时 31 分钟前
    @jamme #37 网络结构没有问题, 我之前 N1 也这样用, 只不过我在 n1 上只开一个 vlan 100 当 wan, lan 就使用默认的 eth0 实际上在交换机那边就是 vlan 1
    之前我用 sg105pro 没问题, 后来端口不够换了 tplink 的 SG2008D, 也是正常的
    markchen88
        39
    markchen88  
       17 小时 25 分钟前
    我猜加速器 加速模式和 openwrt 兼容性问题
    gdcbhtd
        40
    gdcbhtd  
       13 小时 30 分钟前
    放弃单臂路由吧 我刚折腾了 非常难用,小包转发通过 vlan 打标签 拆标签 卡的飞起
    jamme
        41
    jamme  
    OP
       12 小时 29 分钟前
    @xhcnb #38 OK ,那我去看下。
    jamme
        42
    jamme  
    OP
       12 小时 28 分钟前
    @markchen88 我在 openclash 的 issues 中看到有人提过模式的问题,但是我这里雷神只有一种模式,好像没有别的可以选择的。
    jamme
        43
    jamme  
    OP
       12 小时 25 分钟前
    @gdcbhtd 啊,是有什么工具可以直观的看到 vlan 打标和拆标的过程么?目前我这里除了加速器没办法加速主机以外,其他的用网情况还是挺好的,速度也挺快的。
    libregratis
        44
    libregratis  
       10 小时 8 分钟前
    @jamme AX6 装两个常用的 App 足够,有更多需求让 N1 单独跑服务,追求覆盖让 AX6 和 AC2100 开启 kv 即可
    jamme
        45
    jamme  
    OP
       10 小时 1 分钟前
    @libregratis #44 我是因为 AX6 跑了 openclash 之后,其他插件基本用不了了,另外我分流规则文件也大,使用体验不是特别好,所以才想着折腾一下单臂
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   841 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 20:58 · PVG 04:58 · LAX 12:58 · JFK 15:58
    ♥ Do have faith in what you're doing.