A public IP (Internet Protocol) address is an IP address that can be accessed over the Internet. Like a postal address is used to deliver mails to your home, a public IP address is a unique address assigned to a computing device. On the other hand, a Private IP address is used to assign computing devices within your private space without exposing them directly to the Internet. For instance, if you have multiple computing devices at your home, you may want to use private IP addresses for each device within your home. In this scenario, your router will get the public IP address, and each of the computers, tabs, and smartphones connected to the router (via wired/wifi) will get a private IP address. Internet Assigned Numbers Authority (IANA) is the standard global organization that registers IP address ranges for businesses and Internet Service Providers (ISPs).
Why a Private IP Address is Used?
Private IP addresses are used for house and business networks. These addresses provide a separate set of addresses to provide access to a network. But it does not consume a lot of public address space. A common private IP address for routers used all over the globe is 192.168.1.1. The different computing devices that connect to it have addresses such as 192.168.1.2, 192.168.1.3, 192.168.1.4, and so on.
Why a Public IP Address is Used?
Internet Service Providers use public IP addresses for forwarding internet requests to their customers. So, when you attempt to access a website from your computer or smartphone, the request is sent to the router. This is performed through a private IP address. Your router sends a request to the webpage from your ISP using a public IP address. Then the request is processed. After that, the ISP sends the address of the website back to your router.
The Difference Chart
|Basis of Differentiation||Private IP Address||Public IP Address|
|Network||Private IP addresses are used for computing devices in a private network.||Public IP addresses are used for computing devices in global networks.|
|Uniqueness||In the global network, the private IP addresses need not to be unique. But, it should be unique in a private network.||A public IP address needs to be unique in the global network.|
|Authorization||Public IP addresses should be unique in the global network.||Public IP addresses are provided only by Internet Service Providers (ISP).|
|Rout-ability||Private IP addresses are not routable.||Public IP addresses are routable.|
|Internet Access||Devices with private IP addresses use NAT router to communicate with other devices in global network||Devices with a public IP address can easily communicate with any device in global network.|
|Cost||Using a private IP address is free of cost.||You have to pay to the ISP for using a public IP address for your system.|
|Retrieve IP address||You can retrieve a private IP address by entering “ipconfig” on the command prompt.||You can retrieve your public IP address by entering “my IP address” on a search engine like Google.|
|Coverage||The scope in a private IP address is local.||The scope in a public IP address in global.|
|Internet connection||It works only on LAN.||It requires an internet connection from an internet service provider.|
|Range||10.0.0.0 to 10.255.255.255 172.16.0.0 to 172.31.255.255, |
192.168.0.0 to 192.168.255.255
|Besides the private IP addresses, the rest of the addresses are public addresses.|
|Traffic||All the data transfers using a private IP address stay within the network without any external interference||The Internet Service Provider controls the data transfers using a public IP address|
As far as internet security is concerned, using a private IP address is more secure than using a public IP address, as private IP addresses are not directly noticeable on the Internet and are located behind NAT, which ensures the security of the home network. When using a public IP address, organizations need to provide additional security to the computer or server that are exposing their services to the Internet (e.g. by leveraging a firewall to block ports and protocols that the server is not using).