Registro de Direccionamiento de Red — fuente autoritativa de toda VLAN & subnet¶
Read in your language: English · Português · Español
Esta es la única fuente de verdad para el direccionamiento de red. Donde cualquier otro documento (ARCHITECTURE, README, una ADR, un comentario de manifest) discrepe de este registro, este registro gana y el otro documento está stale. Fue creado (audit-v6 DOCS-ARCH) para terminar el desacuerdo de tres vías sobre el plano de management (
100.127.252.0/24VXLAN vs100.127.252.0/22VLAN 2777 vs10.254.254.0/24VLAN 99). Última verificación contra los manifests en v4.0.0.
1. Resumen de planos¶
| Plano | Propósito | Portador | Subnet(s) | ¿Aplica NetworkPolicy? |
|---|---|---|---|---|
| eth0 (OOBI/control) | K8s flannel, dashboard, scrape de Prometheus, control | NIC del node | cluster CIDR | sí |
| Data plane (net1) | Tráfico bajo prueba agente → NGFW → persona | Multus macvlan | ver tabla de VLANs | no (macvlan bypassa NetworkPolicy por diseño) |
| SNMP / DUT-management | Polling SNMP de las interfaces mgmt del NGFW + Nexus | VLAN 99 | 10.254.254.0/24 |
sí (lado eth0) |
| Fabric OOBI | Orquestación Out-Of-Band Infrastructure entre MÓDULOs | VLAN 2777 | 100.127.252.0/24 + IPv6 ULA |
sí |
2. Registro de VLANs¶
| VLAN | Función | Subnet (IPv4) | IPv6 | Gateway | Notas |
|---|---|---|---|---|---|
| 20 | Agentes Playwright (datos) | 172.16.0.0/16 |
— | NGFW | Leg de carga browser-real |
| 30 | Agentes k6 (datos) | 172.17.0.0/16 |
— | NGFW | Leg de carga de volumen |
| 40 | Egress ISP del Cloner | DHCP del router upstream | — | router ISP upstream | Único camino hacia la Internet pública (k8s/80-cloner-nad.yaml) |
| 99 | SNMP / DUT-management | 10.254.254.0/24 |
— | 10.254.254.1 |
.2 Nexus MGMT0 · .3 NGFW mgmt · .10–.49 infra SNMP · .50–.82 orquestación de MÓDULOs |
| 101–120 | Personas — una VLAN por país | /24 público por país (ver abajo) |
dual-stack según ADR 0058 | VyOS-ISP (.1 por country LAN) |
5 personas por VLAN × 20 = 100 (61 baked-in + 39 cloned) |
| 1982 | Módulo peer OSPF (hacia el DUT) | 200.130.0.8/30 |
2001:db8:0:1982::/126 |
— | k8s/dut/42-vlan1982-ospf-peer-nad.yaml |
| 2001 | Enlace outside del NGFW (edge) | 200.130.0.0/30 |
— | — | NGFW-outside .1 ↔ VyOS-inside .2; la única interfaz del NGFW del lado de las personas en v4.3 (edge_link en platform/network/public-ip-pool.yaml) |
| 2777 | Fabric OOBI (control) | 100.127.252.0/24 |
fd5a:7c5e:a72::/64 (ULA) |
fabric | 802.1Q puro — sin VXLAN (ADR 0043 supersedió el modelo VXLAN de la ADR 0019) |
| 2809 | Módulo peer BGP (hacia el DUT) | 200.130.0.12/30 |
2001:db8:0:2809::/126 |
— | Feed eBGP full-table sintético hacia el NGFW (k8s/dut/41-vlan2809-bgp-peer-nad.yaml); nunca origina prefijos del pool |
2.1 Direccionamiento superseded (NO usar)¶
- ❌ VXLAN VNI
254254sobre UDP/4789 — el overlay OOBI fue removido por la ADR 0043. La fabric OOBI ahora es una VLAN 802.1Q pura (2777). Cualquier doc que aún describa VXLAN para OOBI está stale. - ❌
100.127.252.0/24en la "VLAN 99" — la VLAN 99 ahora es SNMP/DUT-management (10.254.254.0/24). La subnet OOBI100.127.252.0/24se movió a la VLAN 2777. - ❌ Subnets RFC1918 de persona
10.1.x.0/27/10.2.x.0/27(VLANs 200–209) — el modelo v4.2. Reemplazado por/24público por país (ADR 0007 / esquema v4.3). Nunca use RFC1918 para personas.
3. Pool de IPs públicas de las personas (VLANs 101–120)¶
Las personas llevan /24s públicos reales, un país por VLAN, asignados desde
platform/network/public-ip-pool.yaml
y validados en pre-flight por tools/validate-ip-pool.sh
(invariante BGP no-announce + WHOIS/GeoIP/DNSBL). Ejemplos:
| País | VLAN | Prefijo (ejemplo) |
|---|---|---|
| US | 101 | 198.32.10.0/24 |
| CN | 102 | 202.112.10.0/24 |
| NG | … | 196.32.0.0/24 |
| … (20 países en total) | 101–120 | ver public-ip-pool.yaml |
El módulo de gateway BGP (VyOS + FRR) es el default gateway de las personas; mantiene un invariante de no-announce para que el espacio público prestado nunca sea anunciado fuera del lab.
Asignación de hosts por país (como se genera): .1 = gateway VyOS-ISP; la persona
i (0-based, orden del personas.yaml dentro del país) posee el bloque IPAM
disjunto .{10+10i}–.{19+10i} del /24 de su país — bloque 0 = .10–.19
(ej. shop en 198.32.10.10), bloque 4 = .50–.59 (ver cualquier
personas/_generated/<name>/network-attachment.yaml). La primera dirección del
bloque es el IP primario del pod; el resto es headroom de réplicas, y el
certificado de cada persona lleva IP SANs solo de su propio bloque. Los bloques
disjuntos son lo que mantiene a los asignadores host-local por-persona libres
de colisión — antes del fix, todo NAD de persona de un país compartía un range
.2–.30 con un asignador independiente, así que dos pods en la misma VLAN de
país podían recibir el mismo IP. .60–.254 queda reservado para crecimiento
futuro (allocation_convention en public-ip-pool.yaml).
4. Cómo mantener este registro correcto¶
- Cuando un manifest cambie una subnet/VLAN, actualice la fila aquí en el mismo PR.
- Las ADRs que cambian direccionamiento (0007, 0043, 0058) deben enlazar de vuelta a este registro.
- Un check de doc-drift debe grepar por los valores superseded de la §2.1 y fallar si reaparecen fuera de este archivo.