This is a topic of general interest, since we all have an Internet service at home. If you use it to watch Netflix, YouTube, social media, download music and movies, you are probably happy with your current ISP. By ISP I mean "Internet Service Provider" or simply the company that provides you Internet service. However, if you have a Play Station at home, play online on your PC, have surveillance cameras or plan to put them in the near future, you are probably not entirely satisfied with your current ISP. Normally, residential Internet plans are not prepared to optimally handle some of these situations and this is usually due to the fact that these plans have a private IP address, which has restrictions at the Internet level,something that does not happen with a public IP and that is usually delivered in corporate Internet plans..
What is a public IP
An IP address is a set of numbers that identifies a computer or device on a network. More precisely, it is the logical or "virtual" identifier of that computer's network card. A public IP address is the identifier of a computer at the Internet level. That is, it can be seen and located on the Internet. By deduction, a private IP is not visible on the Internet but only within a particular private network and therefore has Internet connection limitations.
Public IP vs. Private IP at ISP level
In the case of ISPs, they can provide Internet service to their subscribers by assigning them a public IP or a private IP. The most normal currently is the second case in order to reduce costs and due to the limitation of public IP addresses. In any case, whatever the type of IP, it will be associated with the subscriber's router.
Since a public IP can be seen or located on the Internet, it has a direct contact or free communication with any equipment or online service. As there are no intermediaries involved, there are no Internet connection problems. This is not the case with a private IP, which although it gives a subscriber access to the Internet and generally will not have problems for normal use, there are cases in which it will be a problem.
This is where the issue of ports comes in. When two computers establish a connection, say the subscriber's router (or a device on your network that will communicate to or from the outside through that router) and a server on the Internet, they do so through communication channels called ports. These ports must be open or free so that there are no connection problems. When an ISP assigns a private IP to the subscriber, this IP is assigned by a server which has control over that connection and becomes a wall or barrier between the subscriber and the Internet. This is what is known as Strict NAT or CG NAT .
If the ports on the ISP server are blocked, there is some firewall, filter or restriction for free connection, something that is usually always the case, even if you open the ports on your router , you will have problems with services, especially related to remote access ( how to access your surveillance cameras), P2P applications such as download managers, or video games. ISPs do this in order to protect outside attacks on their network and computers, as well as on their customers, but it has these disadvantages.
How to know if I have a public IP
To find out if you have a public IP, you must check the IP address that appears in the WAN information on the router or modem of your Internet service. Public IPs can have from 1 to 191 in the first octet (with the exception of IPs starting at 10.0.0 and 172.16.0). Here are several examples of public IPs:
The first octet of all these IPs, 98, 157 and 172, is within the indicated range, therefore they are public IPs. The last IP would be the exception if it started with 172. 16.0 , but since its first three octets are 172. 67.138 , this is not the case..
Another way to find out if your IP is public is to check that the IP shown in the WAN information of your computer matches the IP address that appears in speed meters such as speedtest.net, or in pages "What is my IP" of the which there are a lot on Google. If these IPs are different, then you have a private IP.
How to have public IP
The conventional thing is to request it from your ISP. Some can assign it to your residential or home Internet plan for an additional monthly value, which in Ecuador is usually $ 5 or up to $ 10 in certain cases. This is the most convenient modality economically speaking, but not all ISPs give you this benefit. With the scarcity of IPv4 addresses, it is becoming more and more common for you to purchase a corporate or business Internet plan that includes or should include a public IP in your monthly fee. Unfortunately, these types of plans usually cost double or triple the cost of a domestic plan.
Another way to get a public IP is by hiring a VPN service, like NordVPN , which offers dedicated or static public IPs for $ 70 a year. If you configure this VPN on your router, you could have remote access to your internal network from anywhere in the world, for example to access your security cameras.
Additionally, this GitHub page explains how to remove the double NAT or CGNAT performed by the Internet provider, for free, which is one of the things that is searched for with a public IP. I tried to do what is explained there, but it was too technical for me, so I leave it here.
Public IP and ports closed
Despite having a public IP, it is likely that your ports appear closed, and if you have already opened them correctly in the router as I explained here , then there is nothing left but to deduce that it is the ISP that has blocked your ports, because finally they are the ones in control of the connection. It is illogical for an ISP to do this, especially if you are going to pay a monthly fee for a public IP or a corporate plan with this type of IP. In this case, you will have to solve the problem with your provider or change your ISP ..
I have two public IPs!
You must ensure that the public IP assigned to you is a real or "traceable" public IP on the Internet. That is, you should check that the IP that appears in the WAN information on your router or modem is the same that appears on the Internet, for example, when consulting pages such as "what is my IP" or speed meters such as speedtest.net. Some ISPs give "fictitious" public IPs , that is, a public IP appears on your router but on the Internet you appear with a different public IP, the latter over which you have no control. That is, both IPs are public but different . This prevents open ports from working or DMZ, for example. I can't tell if they do this on purpose or have a logic problem on their computers. Anyway, that implies that you can still be behind a router or server and you do not have direct contact with the internet. You can access your router from anywhere with the IP displayed on the WAN, but that is the only advantage you will have with this type of "fake" public IP .
How to open ports on a router or modem (DMZ, UPnP, public IP)
Changing ISPs: 3 Internet Providers Reviewed and How to Choose the Best One
What is double NAT (strict or NAT 3) and how to remove it