0

I'm trying to host a web server through a Raspberry PI 4, but found some problems in the final steps of my configuration. What I did is the following:

  1. Install Nginx.
  2. Install Node to host my site (I'm using Express).
  3. Started server on localhost:7070.
  4. Modify Nginx configuration setting proxy_pass http://localhost:7070; inside location / {}.
  5. Install No-IP on my Raspberry and connected it to my No-IP account.
  6. Started the No-IP Dynamic Update Client (DUC).
  7. Configured port forwarding in my router.

With this my Raspberry was supposed to work, the site works fine when I see it through the LAN IP address, but doesn't appear at all when looking for it through the internet. Checking my router I found that its public IP address is different from the normal public IP address. This means that my router is not connected directly to the internet, but to another subnet of your ISP.

I'm thinking that No-IP might not work for this specific router configuration. When I try to look up my normal public IP address on a browser (http://XXX.XXX.XXX.XXX) it sends me the 'This site can't be reached' error and when I look it up through my No-IP Hostname (http://ramonorraca.ddns.net) the same thing happens. I'm sure that my No-IP Hostname is connected to the correct IP address, I can validate that through the photo I just linked.

Do you know if No-IP works in this particular case where the Router's public IP belongs to a subnet (some NAT given by my ISP) that is then connected to the actual public IP address? I've checked all over my configs, but I'm not able to find anything wrong.

The steps I followed are explained in this tutorial.

Thank you for your time!

PS: I tried to find a specific No-IP community, but had no luck. I hope this community can help.

  • Before you start dealing with No-IP DNS, first check if you actually have a public IP address from the provider. Use the CLI command `curl https://ipinfo.io/ip` or a web browser and a page with the URL `https://www.whatismyip.com/` to find out the public IP address through which your packets leave the internal network and which is also their source address when travelling on the Internet. If the address detected in this way differs from the address that your router has on the outside interface, it is the end of your hopes. The solution is to negotiate a real public address from the provider. – DigiBat Aug 21 '22 at 21:21
  • Thanks, this is exactly what happened. In the end I took my server someplace else with a real public address (not a NAT inside another NAT that is out of my control) and everything worked well. – Ramon Orraca Aug 22 '22 at 23:45
  • I'm looking forward to a not-to-distant future in which IPv6 addresses manage most internet connections and thus everyone has his own public address. – Ramon Orraca Aug 22 '22 at 23:47
  • IPv6: Even so, all problems will not be over. I have and use an IPv6 address. But many providers can't use IPv6 properly and only allocate a block of addresses of /64 to customers' Internet connections. This is essentially the equivalent of a single IPv4 public address. They should correctly assign the /48 block or at least /56. Only in this way does the user have the option to set up internal routing inside the LAN behind their router without further restrictions. – DigiBat Aug 23 '22 at 11:00
  • For what I understood from [this article](https://www.ripe.net/about-us/press-centre/understanding-ip-addressing#:~:text=Chart%20(PDF)-,IPv6,-IPv6%20is%20similar) the /64 block size is huge; it allows 18,446,744,073,709,551,616 LAN connections. Compared to the most common LAN allocation of an IPv4 address (256 connections, subnet mask 255.255.255.0) this seems like a big improvement. I think I didn't fully understand your previous comment, could you give me some sources to dive deeper into this topic? – Ramon Orraca Aug 25 '22 at 03:00
  • The IPv6 mask length and subnet concept depends on a principle how the "automatic" IPv6 addresses are created. The 64 bit mask length is maximum for a usual normal situation, when 64 bits are used for the network address part and 64 bits for the network node address part of the complete 128 bit IPv6 address. See the IPv6 subnet table here: https://docs.netgate.com/pfsense/en/latest/network/ipv6/subnets.html The 64bit mask assigned from the ISP allows you to create only 1 subnet. It is exhausted by link between your router and IPS router. You cannot create any IPv6 LAN subnet behind router. – DigiBat Aug 25 '22 at 14:24
  • Oh okay, I think I got that. Thanks for the explanation! – Ramon Orraca Aug 26 '22 at 01:03

0 Answers0