Originally I planned to write out this whole configuration, but I came to realize I have basically written out everything already.

So I decided the approach should instead be to snapshot my configuration in a text form and explain my reasoning so I have sort of a mental map of where I’m at currently.

So here it is!

TAIL - VPN interface

Description

This is the VPN interface for Tailscale remote access (and at-home access to bypass firewall rules).

Firewall rules

  • Default allow any ingress

Other

  • NAT outbound (2x, one for IPv4 and one for IPv6)
    • Interface: WAN
    • Source: MGMT net
    • Translation target: interface address
    • Static-port: checked

USER - VLAN 10

Description

This is the trusted VLAN for end-user devices - laptops, desktops, phones.

Information

  • Subnet: 10.0.10.0/24
  • Services: Unbound DNS, ISC DHCPv4

Firewall rules

  • Default allow any ingress

MGMT - VLAN 99

Description

This is the VLAN for all management interfaces on the network, such as router, switch, WAP, KVMs.

Information

  • Subnet: 10.0.99.0/24
  • Services: Unbound DNS, ISC DHCPv4

Firewall rules

  • Allow MGMT traffic egress (internal communication)
  • Allow TAIL traffic egress
  • Allow SERVER traffic egress
  • Block all other RFC1918 traffic egress
  • Default allow any ingress

SERVER - VLAN 20

Description

This is the VLAN for all services offered on the LAN.

Information

  • Subnet: 10.0.20.0/24
  • Services: Unbound DNS

Firewall rules

  • Allow SERVER traffic egress (internal communication)
  • Allow MGMT traffic egress
  • Allow USER traffic egress
  • Block all other RFC1918 traffic egress
  • Default allow any ingress

GAME - VLAN 30

Description

This is the VLAN for all gaming devices or consoles. Specifically isolated because of the NAT rules required.

Information

  • Subnet: 10.0.30.0/24
  • Services: Unbound DNS, ISC DHCPv4, UPnP

Firewall rules

  • Allow SERVER traffic egress (internal communication)
  • Allow MGMT traffic egress
  • Allow USER traffic egress
  • Block all other RFC1918 traffic egress
  • Default allow any ingress

Other

  • NAT outbound
    • Interface: WAN
    • Protocol: UDP
    • Source: GAME net
    • Translation target: WAN address
    • Static-port: checked

IOT - VLAN 40

Description

This is the VLAN for all LAN devices that need internal communication, but not internet access. Smart TVs or printers is the list at this point, although I have this ready to go for the future.

Information

  • Subnet: 10.0.40.0/24
  • Services: ISC DHCPv4

Firewall rules

  • Allow RFC1918 ingress only

MINE - VLAN 50

Description

This is the VLAN for cryptomining. It is isolated due to the port forwarding rules necessary.

Information

  • Subnet: 10.0.50.0/24
  • Services: Unbound DNS, UPnP

Firewall rules

  • Allow DNS and DoT
  • Allow MINE net ingress (internal communication)
  • Allow all except RFC1918

Other

  • NAT Port Forward (3x rules, one for each port)
    • Interface: WAN
    • Protocol: TCP
    • Destination: WAN address
    • Destination port range: 18080, 37888, 37889
    • Redirect target IP: 10.0.50.10
    • Redirect target port: 18080, 37888, 37889

GUEST - VLAN 90

Description

This is the VLAN for the untrusted guest WLAN. Anyone who comes over gets this wifi password.

Information

  • Subnet: 10.0.90.0/24
  • Services: Unbound DNS, ISC DHCPv4

Firewall rules

  • Allow DNS and DoT
  • Allow all except RFC1918

Other

DNS redirection rule

This is a port forward rule to catch any rogue DNS requests and redirect them to ensure all DNS passes through my Unbound blocklist. It catches any request over port 53 that’s not bound for a local address and redirects it to the router.

  • NAT Port Forward
    • Interfaces: GAME GUEST MGMT MINE SERVER TAIL USER
    • Protocol: TCP/UDP
    • Destination / invert: checked
    • Destination: RFC1918
    • Destination port range: DNS
    • Redirect target IP: 127.0.0.1
    • Redirect target port: DNS

RFC1918 alias

A convenient alias for all local networks as defined by RFC1918. Its contents are as follows:

10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16

EOF