There are many questions which deal with this but here is a crash course on what are called 'Private IP Addresses' as defined in RFC 1918
IP addresses were broken up in to what are called classes as seen here, this is no longer used (replaced with CIDR) but may help to understand different sizes of networks:
There are a couple basic distinctions regarding addresses. You have what are called "Networks", "Network Addresses", "Public Addresses", "Private Addresses", and "Subnets"
In short, your computer gets and IP address which resides in a particular IP network, your computers IP address and your network's address (usually defined in your local router) are 'Private addresses'. Private addresses differ from Public addresses in that private address are not assigned to public networks. For instance, if you ping 'google.com' you will receive a response from the public address which google.com resolves to. That is a public address. There are some networks which are 'special' and do not get assigned publicly, they are called Private IP addresses. For more, read here: http://whatismyipaddress.com/private-ip
Here are a list of the private network ranges:
> 192.168.0.0 - 192.168.255.255 (65,536 IP addresses)
> 172.16.0.0 - 172.31.255.255 (1,048,576 IP addresses)
> 169.254.0.0 - 169.254.255.255 (65,536 IP addresses)
> 10.0.0.0 - 10.255.255.255 (16,777,216 IP addresses)
The easiest way, I think, to visualize this is to imagine the following. Your internet provider gives you a single IP address. Let's call it 188.8.131.52. This is plugged in to your modem/router of your home. That is the public interface's IP address. However, you have more than on device you want on your network, so what your modem/router does is it creates an 'internal' network. Let's say it picks the number 192.168.1.0 for the network and it's a standard netmask (read related links to find out more). This means that you can plug in devices inside of your router and give them any IP address which fits in this pattern: 192.168.1.1-254. The last octect (space after the last period) is your 'available range' of host IP addresses. There are some special IP addresses (network address, broadcast address, etc.) but, if you don't use a 0 or a 255, you'll be fine in most cases.
So, the short answer is, 10.x.x.x, 192.168.x.x, 172.16-31.x.x are all IP addresses which you can use in your own home network which will never conflict with public IP addresses. This is important for the following reason:
When you try to go to a website, say google.com, and your browser goes to the DNS servers on the internet and says 'Where is google.com?' it gets a response back in the form of an IP address. The response is basically, "If you want to get to google.com, go to 184.108.40.206" So your browser then sends a request to 220.127.116.11 and loads whatever page is there.
So, what if you used 18.104.22.168 for an IP address in your network? Well, you might have an issue because your router may say "I know where 22.214.171.124 is, it's right over there!' and then you end up losing access to google.com because you can't get out of your network and resolve the correct 126.96.36.199 address. Since private IP address ranges are designated for private use public websites should never be using them and therefore you shouldn't ever lookup a website address (outside of your LAN) which points to one of them.
127.0.0.1 is a special type of address called your 'localhost' address and I won't go in to it here. It does cover the whole 127 range:
127.0.0.0 - 127.255.255.255 Think of it as a way to give a device it's own IP address without anyone or anything else being able to do stuff with that address.
Let me know if you have further questions!