Why use private network addresses?

It happens less and less, but I still see systems where people have used public ip addresses for private networks. These systems sometimes even end up behind a NAT firewall and while they "work", problems are out there.

There are several ranges of IP addresses that you SHOULD use for internal, private networks:

  • 10.0.0.1 through 10.254.254.254
  • 172.16.0.1 through 172.31.254.254
  • 192.168.0.1 through 192.168.254.254

This is the subject of RFC-1918, Address Allocation for Private Internets

Let's say you ignore this and just arbitrarily pick some other scheme for your internal network. You have a firewall that happily maps your internal addresses to a real public address, so things do work - until you need to access a site that actually has the address range you incorrectly used for your network. Your packets won't be routed to that site at all, because they are seen by your router as being local.

The opposite side of this is that if you do use the reserved private IP addresses, you can't look them up on the internet to resolve host names. You need to resolve those locally, not look to your ISP's DNS server.

Why is THAT important? Well, programs like telnetd will try to do a reverse DNS lookup when your local machines try to connect. This is often a cause for slow telnets on the local network.

From Telnet/FTP is very slow to connect: Slow telnet or ftp connections are often caused by the server wanting to do a reverse DNS lookup to find out who is connecting. If you aren't running DNS, you can fix this just by listing all the machines in /etc/hosts. Note that you don't have to be accurate about the names: I often use the ip adress with "_" substituted for the "."'s, like "host_192_168_2_3" and so on. A simple script:

#!/bin/ksh
x=1
while [ $x -lt 255 ]
do
echo "192.168.2.$x   host_$x"
x=$((x + 1 ))
done >> /etc/hosts
 

Understand that being slow to give up on name resolution is an annoyance on small networks and a Good Thing on large networks. Systems that give up quickly work well on small networks, but don't get the information they should have on larger nets.

See Networking 101.

Do you need to renumber?

Are you facing a renumbering problem? Are you looking at renumbering and envisioning horrible pain and massive downtime?

I have a customer using a 210. scheme, so I've been a-googling. - I'm looking for a way this customer doesn't have to pay the piper in full just yet. I haven't found much. I found Issues with Private IP Addressing in the Internet which might offer some illumination or motivation, but no help to make it easier..

It's a nasty problem..



Got something to add? Send me email.





(OLDER) <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

-> -> Why use private network addresses?


2 comments



Increase ad revenue 50-250% with Ezoic


More Articles by

Find me on Google+

© Tony Lawrence



"There are several ranges of IP addresses that you SHOULD use for internal, private networks:

* 10.0.0.1 throuugh 10.254.254.254
* 172.16.0.1 through 172.31.254.254
* 192.168.0.1 through 192.168.254.254"

It's generally not a good idea to use a zero in any part of an IP address. I have seen some cases where such addresses would not route.

--BigDumbDinosaur

That doesn't surprise me (bad programmers), though these are for internal networks, where most are too small to need any routing.

However, I have used 10.0.0 addresses as one side of a vpn with 192.168 on the other side without problems.

--TonyLawrence




------------------------
Kerio Samepage


Have you tried Searching this site?

Unix/Linux/Mac OS X support by phone, email or on-site: Support Rates

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us





The only thing I'd rather own than Windows is English. Then I'd be able to charge you an upgrade fee every time I add new letters like N and T. (Scott McNealy)

Any inaccuracies in this index may be explained by the fact that it has been sorted with the help of a computer. (Donald Knuth)








This post tagged: