Files
my-vault/02_Areas/Network & VPN/ADR - Home Network Layer 3 Boundary.md
T

87 lines
6.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "ADR - Home Network Layer 3 Boundary"
type: architecture-decision-record
status: accepted
date: 2026-08-07
tags: [network, adr, vlan, firewall, unifi]
related:
- "[[ADR - Gateway Selection RB5009 vs UXG-Lite]]"
- "[[Home Network Upgrade Plan]]"
---
# ADR:家庭网络三层边界
## 状态
**已接受(Accepted**VLAN55 与 VLAN66 的三层网关、安全策略、DHCP、IPv6、WAN 和 VPN 都由**唯一硬件网关**承担;核心交换机仅作二层 VLAN 交换。本 ADR 只规定职责边界;当前硬件首选、规格和验收条件记录在 [[ADR - Gateway Selection RB5009 vs UXG-Lite]]。
## 背景与约束
| 网络 | IPv4 网段 | 硬件网关 | 用途 |
| --- | --- | --- | --- |
| VLAN66 | `192.168.66.0/24` | `192.168.66.254` | 电脑、可信设备、网络管理与基础设施 |
| VLAN55 | `192.168.55.0/24` | `192.168.55.254` | IoT 与 Home Assistant |
- IoT 不应主动访问 VLAN66VLAN66 可按需管理 VLAN55。
- 家庭宽带为 1GbpsPPPoE、IPv6 PD/RA、NAT、端口转发与 WireGuard 必须在同一个边界设备内清晰可排障。
- `gfw` 是 PVE 上双网 ImmortalWrt VM`.66.1` / `.55.1`)。部分客户端直接将它作为替代默认网关;gfw 再将默认路由指向同 VLAN 的 `.254`
- 交换机部署在卧室,散热和噪音须在采购前确认。
## 决策
### 三层职责
| 组件 | 承担职责 | 不承担职责 |
| --- | --- | --- |
| 最终硬件网关(当前首选 UCG-Ultra | PPPoE、IPv4 NAT、IPv6 PD/RA、防火墙、VLAN55/66 网关、DHCP、WireGuard、必要端口转发 | DNS 递归解析、交换机二层接入 |
| 核心交换机(当前优先 TL-SE5420,三层机型、本项目仅启用二层能力) | VLAN access/trunk、二层转发、RSTP、环路/风暴保护、DHCP Snooping、管理面 | DHCP、VLAN 网关、跨 VLAN 路由、NAT、防火墙 |
| AdGuard Home `.66.36` | DHCP 下发的唯一 DNS、过滤和上游 DoH | DHCP、网关、VLAN 路由 |
| gfw `.66.1` / `.55.1` | 被明确选择的客户端的代理出口 | VLAN55 ↔ VLAN66 直通路由、WAN NAT、公网防火墙 |
| UCG-Ultra 内置 UniFi Network | 管理 UCG-Ultra 和 UniFi AP | TP-Link 交换机管理、客户端转发以外的 PVE 工作负载 |
### 二层与地址设计
- TL-SE5420 是三层网管交换机(支持 RIP/静态路由、SVI、DHCP Server/Relay)。本设计**仅启用其二层能力**:必须关闭路由/RIP、SVI、DHCP Server 等三层功能,避免误配为三层核心而绕过网关的安全边界。
- 网关与核心交换机间仅使用一条 tagged trunk,允许 VLAN55、VLAN66;业务 VLAN 不作 native/untagged VLAN。
- 若交换机要求 trunk PVID,PVID 必须是没有任何客户端或管理业务、且网关没有三层接口的专用 VLAN。
- 终端使用对应 VLAN 的 access 口;AP 端口按实际 SSID 需要配置 access 或 tagged trunk。
- 交换机管理地址位于 VLAN66;仅 VLAN66 与 WireGuard 可管理网关、交换机和 PVE。
- 只有网关 trunk 是 trusted DHCP 端口;其余接入口不可信。
### 防火墙与旁路由边界
1. WAN 入站默认拒绝,只显式开放所需端口转发;IPv6 入站应用同等原则。
2. 允许已建立/相关流量,丢弃无效流量。
3. VLAN66 可主动访问 VLAN55VLAN55 → VLAN66 默认拒绝,仅以“目标 IP + 协议 + 端口”添加服务例外。
4. 两个 VLAN 都可经网关访问 WAN;DHCP 只下发 `.66.36` 为 DNS。VLAN55 客户端无论以 `.55.1`gfw)还是 `.55.254` 为默认网关,对 `.66.36:53` 的跨 VLAN DNS 请求都须在网关放行;该放行仅限 `目标 IP .66.36 + 协议 TCP/UDP + 端口 53`,不得扩大为整段互访。
5. 使用 gfw 的设备配置 `.1` 为默认网关;其他设备配置 `.254`。这不是主网关 PBR,也不形成必然回路。
6. 禁止 gfw 在两个 VLAN 之间直接转发;验证代理模式的回程/NAT 行为。
7. IPv6 必须逐项验证:使用 gfw 的客户端不能因接收 `.254` 的 RA 而绕过 gfw。
## 选型关联
当前首选 **UCG-Ultra**,因为它将网关和 UniFi Network 管理面合并,官方标称 1×2.5GbE WAN、4×1GbE LAN、1Gbps IDS/IPS 和 6.2W 最大功耗。它没有 SFP+;其到核心交换机的 trunk 是 1GbE。若该单一 LAN 上联、IPv6、gfw 或业务迁移不满足验收,再改选 RB5009,而不是让两台网关叠加工作。[UCG-Ultra 官方规格](https://techspecs.ui.com/unifi/cloud-gateways/ucg-ultra?s=us)
TL-SE5420 是三层网管交换机(16×2.5G RJ45 + 4×10G SFP+,支持 RIP/静态路由、DHCP Server/Relay)。作为核心交换机时,其公开规格支持 RSTP、DHCP Snooping 与对应二层保护能力;本项目仅使用其二层功能,三层功能须关闭。TL-SE2420 的公开规格没有同等证明。两者的散热方式均须在购买前确认。[TL-SE5420 规格](https://www.tp-link.com.cn/product_2899.html?v=specification)、[TL-SE2420 规格](https://www.tp-link.com.cn/product_2935.html?v=specification)
## 拒绝的方案
| 方案 | 不采用原因 |
| --- | --- |
| 交换机承担两个 VLAN 的三层网关 | IoT 的跨 VLAN 安全策略会分散到交换机 ACL 与网关,IPv6、DHCP、VPN、NAT 的排障和回滚复杂度增加。 |
| gfw 成为所有客户端的默认网关 | 不需要代理的流量被迫经过 VM,扩大故障域;也会模糊硬件网关的安全和 NAT 边界。 |
| UCG-Ultra 与 RB5009 串联运行 | 没有当前功能需求,会增加双 NAT、策略归属和故障排查风险。 |
## 后果与重新决策条件
**正面后果:**跨 VLAN 访问始终经过同一状态防火墙;DHCP、IPv6、VPN、NAT 与端口转发集中,安全策略和回滚路径明确。
**接受的代价:**UCG-Ultra 的核心上联是 1GbE;高流量跨 VLAN、VPN 或端口转发回内网会共享该链路。核心交换机仍是单点,网关也是单点。
在以下情况重新评估硬件,但不改变“网关负责三层、交换机负责二层”的边界:
- UCG-Ultra 无法通过 PPPoE、IPv6 PD/RA、gfw、WireGuard、隔离或服务迁移验收;
- 需要持续的多千兆网关 LAN 上联、10G SFP+ 或更复杂的主网关选流;
- 已有明确的(如一年内)≥2G 宽带升速计划——此时 UCG-Ultra 的 1GbE LAN 上联会在升速后成为瓶颈;
- TL-SE5420 的噪音不适合卧室,且不愿放宽 RSTP/DHCP Snooping 要求。