candygoogy

Subnet planner

Type your network ranges to see them as a map, with the numbers worked out and the clashes named in plain words.

One range per line, with a name first if you like.

Example: a homelab plan

This plan works, but one thing is worth a look.

172.16.0.0/12 Private Free: 172.24.0.0/13

192.168.0.0/16 Private Free: 192.168.128.0/17

Not to scale: small ranges and gaps are drawn larger so they show.

What’s worth a look

  • lab is Docker’s default bridge (172.17.0.0/16). A Docker host routes that range to its own bridge, so the host and its containers can’t reach devices in lab.

Good to know

  • home, iot, guest, and servers are in 192.168.0.0/16, which Docker also gives compose networks (in /20s) once 172.17 to 172.31 are used up, so on a busy Docker host a compose network can clash with them.
  1. home

    192.168.1.0/24

    home holds 254 devices, from 192.168.1.1 to 192.168.1.254.

    Mask and counts
    • Network 192.168.1.0, broadcast 192.168.1.255.
    • Mask 255.255.255.0, wildcard 0.0.0.255.
    • 256 addresses.
  2. iot

    192.168.20.0/24

    iot holds 254 devices, from 192.168.20.1 to 192.168.20.254.

    Mask and counts
    • Network 192.168.20.0, broadcast 192.168.20.255.
    • Mask 255.255.255.0, wildcard 0.0.0.255.
    • 256 addresses.
  3. guest

    192.168.30.0/24

    guest holds 254 devices, from 192.168.30.1 to 192.168.30.254.

    Mask and counts
    • Network 192.168.30.0, broadcast 192.168.30.255.
    • Mask 255.255.255.0, wildcard 0.0.0.255.
    • 256 addresses.
  4. servers

    192.168.40.0/27

    servers holds 30 devices, from 192.168.40.1 to 192.168.40.30.

    Mask and counts
    • Network 192.168.40.0, broadcast 192.168.40.31.
    • Mask 255.255.255.224, wildcard 0.0.0.31.
    • 32 addresses.
  5. lab

    172.17.0.0/16

    lab holds 65,534 devices, from 172.17.0.1 to 172.17.255.254.

    Mask and counts
    • Network 172.17.0.0, broadcast 172.17.255.255.
    • Mask 255.255.0.0, wildcard 0.0.255.255.
    • 65,536 addresses.