Internet of Things (IoT), tons of public IP Addresses?

The first few things that certain people think about when they hear the word Internet are Computers, smartphones, tablets and may be smart TVs. Today, in almost each household in the US, there is at least one cell phone and one computer. According to Satisfa.com, there were about 123,229 million households in the US in 2014. That makes at least 246,458 million connected devices in 2014, in US alone. According to world economic forum, by 2020 over 50 billion “things” will be connected.

The Internet of Things (IoT) is the ability for any object, animal or person (“thing”) to connect to an existing Internet infrastructure and to other “things” and transfer data to each other. For example your thermostat at home may need to connect to your cell phone and notify you that it is too hot inside. To tell which “thing” is which, a unique identifier needs to be assigned to each “thing”. 

How does the Internet work?

To communicate on the Internet, the nodes need to have some means to find each other. Each node is identified by its IP (Internet Protocol) address. No node knows where the other nodes are if they are not part of the same network. Routers between networks are used to route information. If the Router doesn’t know where the destination is, the information is sent to another router until the destination is found. 

An IP address can be private or public. A private IP address just like a public one can be dynamic or static. Normally, a node with a private IP address can only be contacted by other nodes within the same Local Area Network. Nodes like web servers, mail servers etc. need to be accessible from anywhere, these kinds of nodes are assigned public IP addresses. 

Considering the facts mentioned above about Internet and IP address, it looks like each “thing” would require a public static IP address in order to be contacted from anywhere and exchange information. Then, would there be enough public IP addresses? But wait, would that be even necessary? 

According to CISCO, with IPv6, the standard that replaced the former IPv4, there are enough Internet addresses for every atom on the surface of the earth to have 100. So to the question would there be enough public IP addresses the answer is we’re not running out IPv6 addresses any time soon. 

So I am away from home and I want to let my unexpected guest in, or I want to check to make sure the lights in the kids rooms are turned off and turn them on if they weren’t, or maybe I want to increase the temperature read from the thermostat to save some money since I will be away for a while, Would that require a public IP address for the thermostat, one for the door opener and one for the home lighting system? 

Not only each assigned IP address would have to be public, but also a dynamic IP address would not be suitable in this case because as the name indicates, the dynamic IP address can change. Every other “thing” in connection with this “thing” would need to be updated every time the IP address changes. To be reliable the “thing” would need a static IP address. For residential accounts, most ISPs provide one dynamic IP address to each customer, if a customer needs a static one they will pay extra. The more static IP addresses you need, the more you pay. So assigning a public static IP address to each “thing” could get very pricy. 

One way to save a lot and not have to upgrade your Internet service every time you add a new “thing” to your network is to set a main “thing” that will be responsible to get sensing information and to send commands to the other local “things”. For example, a computer in my house is connected wirelessly to the thermostat to read and set the house temperature and to the garage door opener that receives open and close commands. But the thermostat and the garage door opener don’t necessarily have to have a public static IP addresses. They will be connected through the main public facing “thing”. 

Here at Palm Beach Software Design, we are very interested in things to come for IoT. We take the time to determine the best implementation based on your business needs, we strive to create custom software for our customers that will increase profits and productivity.

So way to go IoT, let’s get every“thing” connected!