why is loopback IP address from 127.0.0.1 to 127.255.255.254?

I do know that 127.0.0.1 ~ 127.255.255.254 are the loopback IP addresses for most modern operating systems and we could use these IP addresses to refer to our own computer. But isn't 127.0.0.1 enough?!?! why a wide range? why from 127.0.0.1 to 127.255.255.254?


Solution 1:

The 127/8 network can be used for a number of things.

1) Simulating a large number of different computers in a fast network (simply bring up more interfaces and bind services to them) without using virtual machines. This might be helpful if you wanted to have a number of different web servers running locally on port 80 for some reason.

2) Permitting more locally running services than the 64k TCP would permit (though it seems unlikely that you would hit that limit rationally)

3) Playing games with people who aren't familiar with this factoid; "Hey, you're a loser hacker, I bet you can't even hack me. Go ahead and try; I'm at 127.45.209.66"

Probably other things too.

Solution 2:

http://www.ietf.org/rfc/rfc1700.txt

Back in the day, IP addresses were considered as plentiful, with entire /8 and /16 blocks being given to whoever asked for them.

Mind you, even though 127/8 is reserved, the RFC states that only 127.0.0.1/32 is ordinarily used (http://www.ietf.org/rfc/rfc3330.txt).

Solution 3:

Back when this standard was designed, it probably made sense to have as many bits in the loopback subnet as the largest classful subnet possible, which is 24 bits. Of course we don't care about classful subnets much anymore. This is why IPv6 merely allocates one address to this purpose.