- •
Adopted a Phased, Layer-by-Layer Configuration ApproachInstead of configuring routing, VLANs, DHCP, and firewall rules simultaneously, I rebuilt the network in isolated phases verifying basic connectivity at each layer before adding the next. This became the core best practice going forward: test one variable at a time, confirm it works, then move on.
- •
Diagnosed DNS Failures SystematicallyUsed a structured diagnostic sequence (cat /etc/resolv.conf → ping <external IP> → nslookup <domain> <specific DNS server>) to isolate whether a failure was routing level or DNS-level, rather than guessing. This distinguished 'host unreachable' (misconfigured DNS server) from actual connectivity loss.
- •
Corrected DNS Configuration at the Right LayerFixed the stale DNS entry permanently through Proxmox's System DNS settings (the actual source of truth that regenerates /etc/resolv.conf) instead of editing the resolver file directly, which would have been overwritten.
- •
Enabled VLAN-Aware BridgingIdentified that the physical bridge (vmbr0) needed the 'VLAN aware' option enabled before per container VLAN tagging would function correctly, resolving the confusion between host level VLAN interfaces and container assignable bridges.
- •
Restructured Firewall Rule PlacementRebuilt the block rule as a standard interface rule (rather than a Floating Rule) with an explicit interface assignment, and repositioned it above the default allow rule since OPNsense evaluates rules top down and stops at the first match.