So you want to have different web servers on your home network that are exposed to the outside world? How do you do that? Most web servers listen on the same ports: 80 for non-ssl and port 443 for ssl. If a request comes in for port 80
Say your home network is setup like this:
Your Study: 192.168.1.2 (running your personal wordpress blog )
Wife’s Office: 192.168.1.2 (running your personal wordpress blog)
Living Room Computer: 192.168.1.3 (Running Home Assistant web server)
Go to duckdns.org (super simple) to create a subdomain url for each computer you’d like to access in your internal network from any computer in the world. I won’t explain it here as the DuckDNS site does a good job. In my example you would need to set up 3 subdomains for your home network:
http://blog.duckdns.org -> your blog in your study
http://wifesblog.duckdns.org -> wife’s blog in her office
http://homey.duckdns.org -> home automation server at
Normally, if you are outside your home network, say at a coffee shop, and plug “http://homey.duckdns.org” in your browser you most likely will end up either with blank page/unauthorized page or will get the control panel login for your router which is at 192.168.1.1.
To set-up port forwarding within your home network go into your router (192.168.1.1 in my example) and navigate to the port forwarding section. I use ddwrt so in my home network I would selecte DD-WRT’s NAT/QoS menu selection and set the port forwarding as follows:
Port From (incoming set by url, e.g.: http://blog.duckdns.org:202) | Ip Address | Port To (This is port server is listening on) |
80 | 192.168.1.1 | 804 (fake port, nothing is listening here) |
202 | 192.168.1.2 | 80 |
203 | 192.168.1.3 | 80 |
204 | 192.168.1.4 | 8123 |
Here’s a screen shot of my example setup:
http://blog.duckdns.org:202 -> your blog in your study at 192.168.1.2 port 80
http://wifesblog.duckdns.org:203 -> wife’s blog in her office at 192.168.1.3 port 80
http://homey.duckdns.org:204 -> home automation server at 192.168.1.4 port 8123
If someone leaves the port out (http://blog.duckdns.org) it would just go to a blank page because it would be forwarded to 192.168.1.1:804 which is a fake port with nothing listening.
Also, if you’re using ssl you’ll need to set up ssl certificates (use LetsEncryptfor free ssl certifices)
As a final note, you could have all of these sites on one computer (personally I’m doing this on Raspberry Pi 3 using lighttpd and homeassistent), but you would have to change the default listening ports on each server that is running. For example, instead of your blog’s server software listening to 443, you would have the ssl port listen to say 452. Likewise, your wife’s ssl port would listen to say 574, etc. .
While working on fixing my KuLED light switches from magically but unexpectedly switching on, I…
WP-CLI is a great command line tool to help you manage Wordpress. I had trouble…
Tired of downloading zip or tar files, decompressing, and then having to delete the compressed…
The Microsoft Virtual Hard Disk - An Ideal Backup Image Format Microsoft's Virtual Hard…
Browser getting cluttered with Ads ? Want to achieve a nearly total ad-free browsing experience…
Want to peek in on your dog ? Have an elderly parent or friend that…