You are on page 1of 3

howt ogeek.

com

http://www.howtogeek.com/126304/why-is-the-localhost-ip-127.0.0.1/

Why Is the Localhost IP 127.0.0.1?

Geeks the world over know their local host as 127.0.0.1, but why is that specific address, of all available addresses, reserved for the local host? Read on to delve into the history of local hosts. Image by GMPhoenix; available as wallpaper here. Todays Question & Answer session comes to us courtesy of SuperUsera subdivision of Stack Exchange, a community-drive grouping of Q&A web sites.

T he Question
SuperUser reader Roee Adler, curious about the default localhost IP, posed the following question to the community:

I wondered what is the origin of the decision to make localhosts IP address 127.0.0.1. What is the meaning of 127? what is the meaning of 0.0.1?

What is the meaning, indeed? While its possible to live out your entire geeky existence not knowing the answer to those questions, were ready to dig in.

T he Answers
Several contributors pitched in to answer Roees question, each one of their contributions helps

shed more light on how 127.0.0.1 is the place we all call home. John T writes:

127 is the last network number in a class A network with a subnet mask of 255.0.0.0 . 127.0.0.1 is the first assignable address in the subnet. 127.0.0.0 cannot be used because that would be the wire number. But using any other numbers for the host portion should work fine and revert to using127.0.0.1. You can try it yourself by pinging 127.1.1.1 if youd like. Why they waited until the last network number to implement this? I dont think its documented.

Hyperslug does some archive sleuthing by digging through old memorandums on the subject:

Earliest mention I can find regarding 127s assignment as loopback is November 1986 RFC 990 authored by Reynolds and Postel: The address zero is to be interpreted as meaning this, as in this network. For example, the address 0.0.0.37 could be interpreted as meaning host 37 on this network. The class A network number 127 is assigned the loopback function, that is, a datagram sent by a higher level protocol to a network 127 address should loop back inside the host. No datagram sent to a network 127 address should ever appear on any network anywhere. Even as early as September 1981 RFC 790, 0 and 127 were already reserved: 000.rrr.rrr.rrr ... 127.rrr.rrr.rrr Reserved Reserved [JBP] [JBP]

0 and 127 were the only reserved Class A networks by 1981. 0 was used for pointing to a specific host, so that left 127 for loopback. I know this doesnt answer the question, but this is as far back as I could dig. It might have made more sense to choose 1.0.0.0 for loopback but that was already given to BBN Packet Radio Network.

While we all know and love 127.0.0.1 as the localhost, its worth noting that it wont be the localhost forever. 127.0.0.1 is how the localhost is designated in IPv4 communications and, as IPv6 slowly takes over, it will be designated by a much more intuitive number: 0:0:0:0:0:0:0:1.

You might also like