[Awesome Software NetWork] nip.io: Dead simple wildcard DNS for any IP Address

nip.io - Dead simple wildcard DNS for any IP Address

Stop editing your /etc/hosts file with custom hostname and IP address mappings.

nip.io allows you to do that by mapping any IP Address to a hostname using the following formats:

Without a name:

1
2
3
10.0.0.1.nip.io maps to 10.0.0.1
192-168-1-250.nip.io maps to 192.168.1.250
0a000803.nip.io maps to 10.0.8.3

With a name:

1
2
3
4
5
6
app.10.8.0.1.nip.io maps to 10.8.0.1
app-116-203-255-68.nip.io maps to 116.203.255.68
app-c0a801fc.nip.io maps to 192.168.1.252
customer1.app.10.0.0.1.nip.io maps to 10.0.0.1
customer2-app-127-0-0-1.nip.io maps to 127.0.0.1
customer3-app-7f000101.nip.io maps to 127.0.1.1

nip.io maps <anything>[.-]<IP Address>.nip.io in “dot”(.), “dash”(-) or “hexadecimal”(0x) notation to the corresponding <IP Address>:

  • dot notation: magic.127.0.0.1.nip.io

  • dash notation: magic-127-0-0-1.nip.io

  • hexadecimal notation: magic-7f000001.nip.io

The “dash”(-) and “hexadecimal”(0x) notation is especially useful when using services like LetsEncrypt as it’s just a regular sub-domain of nip.io

Troubleshooting

DNS Rebinding Protection

Some DNS resolvers, forwarders and routers have DNS rebinding protection - https://en.wikipedia.org/wiki/DNS_rebinding which may result in failure to resolve local and private IP addresses. This service won’t work in those situations.

References

[1] nip.io - wildcard DNS for any IP Address - https://nip.io/

[2] exentriquesolutions/nip.io - https://github.com/exentriquesolutions/nip.io

[3] localtls | Corollarium/localtls: DNS server for providing TLS to webservices on local addresses - https://github.com/Corollarium/localtls

[4] sslip.io | Welcome to sslip.io - https://sslip.io/

[5] local.gd | The easiest way to serve localhost. | local.gd - https://local.gd/