57

What's the history behind 192.168.1.1?

 6 years ago
source link: https://www.tuicool.com/articles/hit/VNZvYnj
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
BjAzEf6.png!web

Timothy Dutton , Call Agent

Answered 24w ago · Upvoted by Ed Bell , 20+ yrs prof experience supporting networked DOS/Windows and Unix computers. · Author has 167 answers and 81.2k answer views

To answer this properly you need to start at looking at how internet addresses were originally assigned.

Originally there were 5 classes of Internet address A, B, & C which were for general use D which was reserved for multicast addressing and E which was reserved for experimental use. This class system was used when allocating out IP addresses to a company.

Class A, B & C addresses

Although we write out IPv4 addresses in decimal the definitions of A, B, & C addresses actually considers how the address appears in binary. In this the address is represented by 4 groups of eight bits. Also note that IP addresses are actually split into two parts. A part representing the network and a part representing the host.

On a typical IP address as used on a home network.

192.168.1.1

In Binary that is.

11000000 10101000 00000001 | 00000001

Network Part | Host part

192.168.1 is the network part of the address and the last 1 is the host part.

Class A address

The highest bit is set to 0 with the next 7 bits denoting the the network part. The remaining 24 bits being the host

0xxxxxxx | xxxxxxxx xxxxxxxx xxxxxxxx

This gives us a network with up to 16777216 hosts but limits us to 126 networks of this size

Class B address

The highest two bits are set to 10 with the next 14 bits denoting the network and the final 16 bits representing the host.

10xxxxxx xxxxxxxx | xxxxxxxx xxxxxxxx

Which gives us 16384 possible networks each with up to 65,534 hosts

Class C address

The highest THREE bits are set to 110 with the next 21 bits denoting the network and the final 8 bits denoting the host

110xxxxx xxxxxxxx xxxxxxxx | xxxxxxxx

Which gives us 2097152 each with up to 256 hosts.

As the internet began to expand the following was realised.

Businesses that weren’t currently connected to the internet were using addresses on their internal networks that were already used elsewhere. So for this the IETF came up with private addresses. They decided that they should reserve a class A, Class B and Class C range for this purpose. This would allow companies to use the private ranges for themselves and that traffic to these ranges would never route over the Internet as a whole.

The ranges chosen were.

10.0.0.0 - 10.255.255.255 - Class A network

172.16.0.0 - 172.31. 255.255 - Class B network

192.168.0.0 - 192.168.255.255 - Class C Network.

There were further changes later that allowed IP allocation without using the previous class definitions. But these three private ranges remain in use today.

When networking companies wanted to start selling NAT routers. One of the aims would be to make connecting to them as simple as possible. So ideally you want to make their IP address as easy to remember as possible. So it makes sense to have the host address for the router as the first available host IP

However it should be noted that not everyone uses 192.168.1.1 for their routers.

Netgear for example have used 192.168.0.1 as well as 192.168.1.1

Belkin (which was one of the first home routers I set up) preferred to use 192.168.2.1

So router manufacturer are actually free to use any of the above private address ranges. But as most home networks are unlikely to grow above 256 individual hosts most home routers tend to use the class C network convention by default.

As for 127.0.0.1 - The IETF actually set aside the whole 127 class C network for use in the loopback mechanism whereby all requests sent to any address in that range are processed by the local computer. We tend to use 127.0.0.1 out of simplicity.

Address Allocation for Private Internets

8.7k Views · View Upvoters

Qf6j6zM.jpg!web

Phillip Remaker , connecting your computers since 1988

Updated 3d ago · Upvoted by Kelly Kinkade , Network engineer for a dozen years and counting · Author has 7.3k answers and 33.2m answer views

First, some background:

Originally, IP (v4) addresses were broken into “classes.” The upper bits of the first octet indicated the network class, which implied how a specific address should be split into a network and host portion. These bits dictated how the address should be interpreted by routers.

00000000 - Class A.

That was 0 - 127. First octet network, the rest host.

10000000 - Class B.

That was 128 - 191. First two octets network, the rest host.

11000000 - Class C.

That was 192 -223. First three octets network, the rest host.

11100000 - Class D.

That was 224 - 239. Used for multicasting.

11110000 - Class E.

That was 240 - 255. Reserved for future use.

The IP address space has to be globally unique. This means that only one of each address can exist on the whole network. As a result, address “blocks” had to be assigned to end user networks. These days, IP address space for the public internet gets handed out by the Internet Assigned Numbers Authority , but in Ye Olde Days, Jon Postel personally managed the address space allocations.

Loopback interfaces were created on hosts to assure that there was a place for IP traffic to go even if all interfaces were down, or to be able to test IP traffic without any worries about hardware or driver issues associated with a network interface. The address assigned was called Localhost , and the address chosen was just the last of the class A networks. In retrospect, that was a wasteful choice, but who knew at the time? Since the upper bits were easy to check, convenience ruled the day over long-term vision. So it goes.

Stan Hanks digs a little deeper into the history of the loopback interface at Stan Hanks' answer to Who first established 127.0.0.1 as the loopback address, and why?

The 10.0.0.0/8 network was originally assigned to MILNET and the Defense Data Network (DDN). A LOT of early devices had 10.x.x.x networks hardcoded into the software. In the mid-1990s, those networks were shut down and moved into other forms, but the 10.x.x.x space was considered “poisoned” since so many non-MILNET/DDN systems had hardcoded configurations that continued to send traffic to those long-defunct networks.

As IPv4 address exhaustion took hold, a need for non-routable addresses for Private networks arose. At first, people picked random address spaces, but they ran the risk of failing to reach any network that their randomly-chosen space overlapped with. To address the problem and set a reserved private address space, RFC 1597, Address Allocation for Private Internets , specified reserved a number of specific networks for use as private networks. RFC 1597 (and its later revision, RFC 1918) specifed a Class A, Class B, and Class C space. For Class A, the RFC specified the poisoned 10.0.0.0/8 MILNET/DDN space. For class B and Class C, the next available unassigned blocks at the time of the RFC authoring were assigned by Jon Postel. For the Class B networks, the space happened to be the 172.16.0.0/12 blocks (172.16.0.0 - 172.31.255.255). For the class C space, that happened to be 192.168.0.0/16 blocks, (192.168.0.0 - 192.168.255.255). Most consumer router vendors I have seen use 192.168.x.0/24. Many use 192.168.1.x, or 192.168.0.x. I have seen some that use 192.168.123.x, and others that use 192.168.2.x. Personally, I set all of my home routers to 192.168.10.x, so I can use my home network on the WAN side of any home router I am testing with using its default addresses.

Some vendors use the 10.x.x.x address space, and a silly minority use the 172.16.x.x address space. After all, if you’re going to use an address space that is too large for your device to handle, go all the way and use 10.x.x.x to let people type less.

The 1.x.x.x and 2.x.x.x address space ended up being very problematic, since lots of people had reflexively used that space for testing without coordinating with anyone. It had been left as a reserved space from nearly the beginning of IPv4, for that reason. Geoff Huston researched just how poisoned that space was in his paper Traffic in Network 1.0.0.0/8 . Based on that research, some of the 1.0.0.0/8 network was released to be used for real traffic, isolating some of the most poisoned parts of the space. Despite the poisoning, Cloudflare used their extensive content delivery network to set up an Anycast DNS server at 1.1.1.1 ( https://1.1.1.1/ ), serving as both a DNS server and packet sink. Seems to be working for them.

You can read more about special Reserved IP addresses.

71.7k Views · View Upvoters

QzmmAzf.jpg!web

Biswajit Maharathi , PhD Biomedical Engineer '20 | UIC | Data Science enthusiast

Updated 172w ago · Author has 112 answers and 140.9k answer views

192.168.x.x is basically the IP address for private network use. Since in home or small networks there is not much number of devices used , its a common practice to use this one. There are large private networks which use 10.x.x.x . The speciality of the 192.168.1.1 may be because in old days it was lynksys who was providing routers and those people decided the default to be 192.168.1.1. Its been a common practice since.

http://trendblog.net/ever-wonder...

Edit: 127.0.0.1 or commonly known as localhost, is an address to talk to yourself in IPv4 version. the same in IPV6 is 0:0:0:0:0:0:0:1 which is straight forward. Back then in 80's the computers were slow and the registers were 8bit. So 127 is the last possible number that could be possibly used (look at the binary) you can also try for 127.1.1.1. t will talk to the same machine also. Question is why not any other combination. Well you can read a much detailed thread on this here : Why is localhost IP 127.0.0.1?

Previous IPs were for class A network. 10.x.x.x is for large networks like apple or comcast. For this series, 10.0.0.1 is the default IP which I believe sounds logical.

3.9k Views · View Upvoters

Thank you for your feedback!

Your feedback is private.

Is this answer still relevant and up to date?

ruiqUvZ.jpg!web

Adam Helps , Software Engineer at Autodesk

Answered 172w ago · Author has 1.2k answers and 3.2m answer views

Part of the answer is that these numbers are semi-special in binary. 192.168 looks like 11000000.10101000 in binary, which is kind of a round number (lots of trailing zeroes). This is mostly because routing equipment is a little easier to build when you use round binary numbers, because the hardware has to look at the bits directly, and it's nice to be able to pay attention to only the first few bits when figuring out how to route the packet.

The other part of the answer is that the Internet routing scheme used to work a little differently, with the IP addresses offering lots of hints as to how packets should be routed. You can read about this older address scheme here: http://en.m.wikipedia.org/wiki/C...

While we don't still use classful networking in its entirety, a few pieces are left, especially the use of 10.x.x.x for large local networks and 192.168.y.x for small local networks. The 192 prefix would have been a class C address, so its value really isn't a coincidence.

The 127.0.0.1 address is actually 01111111.0.0.1 in binary so also counts as a particularly "round" number from binary's point of view.

6.4k Views · View Upvoters

3M3yu2y.jpg!web

Dave Whitla , 20+ years a software engineer specialising in internetworked applications

Answered 118w ago

192.168/16 is within a set of IP address ranges reserved by RFC 1918 for private non-routable network use. The other such ranges are 10/8 and 172.16/12 expressed in classless inter-domain routing notation (CIDR). Their intended purpose in 1996 was to conserve IPv4 address space in cases where internetwork users had no need to route packets outside their own organisations and therefore were designated non-routable so that they could be safely reused in many places within enterprise walls. To that end several size blocks were reserved for use by varying size organisations as their needs dictated: one Class A (10/8), 16 Class Bs (172.16/12) and 256 Class Cs - 192.168/16 is actually intended to be used as a contiguous block of 256 /24 subnetworks (Class Cs in the older class-routing terminology).

The reason behind reserving contiguous blocks of smaller networks is that it simplifies routing rules as expressed in the configuration for IP routers. It is possible for a router to pass a contiguous set of networks with a single rule where they would otherwise require one rule per subnet. If a large network is viewed as a tree structure (which they often are), at each branch in the tree a single rule (or at least a minimal number of rules) can be used to represent routing information for successively finer grained contiguous blocks. Why this was important or at least useful in 1996 is that routers had a relatively small capacity of working memory in which to keep all their tables and on routers connecting many networks it was easy to exhaust memory if routing rules could not be simplified somehow.

Most people are familiar with at least the 192.168 prefix because its subnetworks are intended for the smallest of private networks catered for by RFC 1918 (each /24 contains one network address, one broadcast address and 254 addressed available for use by hosts). Although using CIDR you could create a subnet for only 2 hosts if you wanted (/30) a /24 caters for all foreseeable needs of a user not knowledgeable enough to reconfigure networks to suit their purpose. Hence a /24 is almost invariably the pre-configured network on a consumer network appliance.

192.168.0/24 was once ubiquitously used simply because it was the lowest numbered /24 subnet in the 192.168/16 block and network administrators are generally logical people who tend to allocate from the bottom of the bucket up. Exceptions to this practice of course exist: the 254 (the last) host address is conventionally reserved for the default gateway of a subnet. Similarly many network admins allocate from the tail end of the subnet for network infrastructure IPs such as other routers,  switches, firewalls etc, and allocate host IPs starting at 1. Popular consumer appliance manufacturers seem to like 1 as the router IP for some reason - perhaps because they suspect .1 will appear more logical than an apparently random .254 to ab-initio users.

The 192.168.1/24 subnet is typically used as simply the next subnet in that /16 block, but at some point it started being used as the default range shipped on many consumer routers. I suspected at the time that this may just be some pointless security-through-obscurity ploy by the manufacturers of early 802.11 WIFI access points or due to some people feeling strangely uncomfortable with zero-based addressing. In either case it doesn't matter - any /24 from RFC 1918 is as useful as any other.

But why 192.168 specifically and not say 189.2?

When written in binary in "network byte order" 192.168 is 1100000010101000. Indeed the "dotted decimal" notation 192.168.0.1 is just a convenience for humans to concisely write what is actually a 32bit number one byte at a time and to simplify the mental arithmetic of resolving the host components of IP addresses. "Round" binary numbers allow efficient address manipulation by bit-masking whole chunks of the address. So why then wasn't 255.0 chosen?

The rationale for the specific prefixes wasn't addressed in RFC 1918 but the numbers were chosen by Jon Postel prior to that RFC being drafted to supersede his earlier RFC 1597, authored while he was still the Czar of Numbers. It seems that his reasons were as follows:

  • 10.0.0.0/8 was already essentially a reserved range, having been allocated to the original ARPANet which was no longer connected to what had become the Internet. Hence it was the most obviously uncontested (only?) Class A network available to reserve for large entities' internal use (2^24 addresses).
  • 192.168.0 was the next Class C in Jon's allocation database for Class C networks that fell on a /16 boundary, thus allowing him to reserve a /16 of contiguous Class Cs.
  • 172.16/12 IIRC (and this is pretty hazy but I was taking TCP/IP Internetworking as a course at the time this all transpired in 1996) was already being used for this purpose by a large entity at the time - a University maybe. It may be mentioned in Douglas Comer's text - I can't recall exactly.

4.8k Views · View Upvoters

UveaMv7.jpg!web

Saurabh Rai , Software engineer, Arista Networks and Cisco

Answered 96w ago

Lets see how each octet is significant here.

First of all ,

Why 192.x.x.x ?

Range of private IPs :

10.0.0.0 - 10.255.255.255

172.16.0.0 - 172.31.255.255

192.168.0.0 - 192.168.255.255

Why do we have such design?

Instead of having devices inside your home or business network each using a public IP address, of which there's a limited supply , private IP addresses provide an entirely separate set of addresses that still allow access on a network but without taking up a public IP address space. The IP packets from these address spaces are not routable over the internet and they have to go via the ISP router configured with Network address translation (NAT).

The routers used for home, office or a small enterprise network fall into the private network category. So that answers why we do not have 1.1.1.1 or any other random IP on our routers. It’s ought to be one from the above mentioned IP ranges.

Why 192.168.x.x? why not 10.x.x.x or 172.16.x.x??

Now, each range has a significance. The first range, which can accommodate 2^24 IPs, is intended for an enterprise with a huge requirement of subnets and hosts. The third range is the one intended for smaller subnets, with each subnets having a small number of hosts. And hence the 192.168.x.x was chosen.

Why 192.168.1.x?

Well, If I give an IP address, and ask you to give me the first few subnetworks, how are you gonna go about it??

You will probably start with 192.168.0.x/24, 192.168.0.1/24 and so on…

Thats the whole thought process behind using 192.168.0.x and 192.168.1.x, the two widely used IP address space.

Strange as it may sound, some equipment vendor (Linksys I believe) started using it in the 90s and thats how many, if not all, vendors ended up using the same.

Lastly, Why exactly 192.168.1.1??

The first and the last IP addresses of any subnetwork are reserved for the network and the broadcast address. Hence 192.168.1.0 and 192.168.1.255 are ruled out.

Its a common practice to use the first usable address in the network as the default gateway, which is none other than, Man of the decade, 192.168.1.1.

Apart from these IPs, any other IP in private range is usable and there are enterprises that use a different address than 192.168.

You can find few other well used router IPs here:

A List of Common Default Router IP Addresses

As far as the loopback address is concerned, this link would help you

Why is localhost IP 127.0.0.1?

Hope this helps.

11.2k Views · View Upvoters


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK