
What's the history behind 192.168.1.1? - vinnyglennon
https://www.quora.com/Whats-the-history-behind-192-168-1-1-Why-not-192-169-1-1-or-any-other-IP-address-When-did-it-start-being-used-Who-started-it-Why-Why-not-1-1-1-1-What-is-the-relation-to-127-0-0-1-What-about-10-0-0-1-Apple?share=1
======
insickness
This explains the reason private ranges were designated but not why
192.168.0.0 in particular within the Class C range was designated to be
private. Does anyone know why that number in particular was chosen?

~~~
egwynn
Found this link in one of the responses on that page:

[https://superuser.com/questions/784978/why-did-the-ietf-
spec...](https://superuser.com/questions/784978/why-did-the-ietf-specifically-
choose-192-168-16-to-be-a-private-ip-address-class)

    
    
        Similarly, I expect Postel picked 192.168 because, at the time he made the
        choice, it was the next available, or nearly the next available, network to be
        assigned from the former Class C space. This probably can't be proved one way
        or the other, but the pace of address assignments shown in the RFCs strongly
        suggests that they would have been in this general vicinity around 1993-1994
        when the assignments were made. (Addresses in 192.159 were being assigned in
        1992. No dates are available for assignments in 192.160-192.167 as these were
        at some point reallocated to RIPE.)

~~~
danpat
To be clear, the 192 part is the lowest "Class C" network prefix. The 168 part
was the arbitrary time-dependent part from the allocation database.

~~~
egwynn
Correct, thanks for making that explicit.

------
garganzol
What the given article does not address is when to choose 10.x.x.x, 172.x.x.x
and 192.168.x.x and why it's important to choose the right one.

Here is the prescribed solution:

\- Use 10.x.x.x for office/enterprise LANs

\- Use 192.168.x.x for home LANs

\- Use 172.x.x.x for supplementary services like guest networks, DMZ etc

Why so? The reason is VPN.

When you connect to office VPN from home, you connect from 192.168.x.x to
10.x.x.x. This makes it very easy for routers to avoid address range clashes.

If you break that rule then you may end up with a weird situation when you
connect from a home network 10.0.1.1/24 to an office network 10.0.1.1/24\.
Good luck trying to connect to that specific 10.0.1.12 machine: there is no
easy way to determine where the packet should be routed.

~~~
keshav_
what if I have two homes?

~~~
forapurpose
Or if you are visiting someone else, you're in a cafe, a hotel ...

~~~
limeyx
Or your home is in a hotel but you walk down to the cafe ... should you
renumber ?

------
6t6t6t6
Something I never understood is why people choose 192.168.1.1 for private
networks.

Being all the other factors equal, isn't 10.1.1.1 easier to type and more
"aesthetically pleasant"?

~~~
forapurpose
> Something I never understood is why people choose 192.168.1.1 for private
> networks

While interviewing someone for an entry-level job, I told the interviewee that
there was a network using 10.0/16 (a 16-bit subnet mask, or more popularly
10.0.x.x). He corrected me and said that 10.0.0.0 networks should have an 8
bit subnet mask (10.x.x.x). On one hand, I definitely liked that he was
willing to challenge me, even during an interview, and that he knew the spec
(RFC 1918 does assign an 8-bit mask to the 10. private network). On the other
hand, I wasn't sure he was technically correct that a 16-bit mask was wrong,
even if 8-bits was 'correct', and I couldn't see what negative consequence the
16-bit subnet had - his thinking seemed a bit rigid. Anyway, maybe there are
other purists who believe smaller networks should use 192.168/16, or maybe
they instinctively use it because the RFC gives it the smaller network
allocation. Or maybe they know something that I don't.

> isn't 10.1.1.1 easier to type and more "aesthetically pleasant"?

And it's much easier for non-technical people to understand and to remember
without error. In fact, I recommend something even easier, such as 10.9.8.x.
For people supporting the non-technical, those little details can save hours,
even a day. I've seen cases where after hours of frustration, the support tech
discovers that the user typed in something like 129.168, or 192.16.8. Great
support reps are great humanitarians, able to handle those situations with
grace, without humiliating the poor user, and without heavy drinking.

EDIT: clarifying edit

~~~
srj
10/8 is a class A range (high order bit = 0), but CIDR says that you can
separately describe which bits are for the network. Unless this interview was
conducted more than 20 years ago I'd say your interviewer was mistaken.

~~~
forapurpose
> I'd say your interviewer was mistaken

Is that what you meant to say? The interviewer (me) thought that 10.0/16 was
fine, which I think agrees with your analysis. The interviewee said only 10/8
was correct.

(Re-reading my GP comment I realize that my role might have been ambiguous, so
I've clarified it.)

~~~
HighPlainsDrftr
If you said 10/24, I'd immediately think 10.0.0.0/24\. 10/8 would certainly be
valid. 10.0/16 is too.

I remember when CIDR came around back in the 90's. Man people were pissed off
when you would call out a 'Class A/B/C/D/E' block. I prefer to always be
specific when writing my CIDR. I understand when people don't do it.

Be liberal in what you accept and conservative in what you send.

~~~
forapurpose
Yes, Postel's advice applies to many things.

I think there is some misunderstanding. The question wasn't the notation but
the subnetting. See the story in the GGP.

------
HighPlainsDrftr
Up until 4 years ago, I used to always allocate addresses specifically on bit
boundaries. I did this mainly for one reason - aligning the bytes and trying
not to waste CPU cycles.

For example, in a /24 network: 0-15 - network equipment 16-31 - some special
gear 32-63 - mail servers or something like that 64-127 - split it up and
align more things 128-191... you get the point.

... The ultimate goal was to hit everything on a bit boundary so the CPU
wouldn't work so hard

These days, CPU power is so prominent, it doesn't matter. DHCP is probably the
way to go.

IPv6 is here. We have the opportunity to really make CPU's fast again with
IPv6!

~~~
anyfoo
What's a "bit boundary" in this context? And how does you subclassing scheme
prevent wasted CPU cycles. at all?

------
derekp7
I wish there was a netblock reserved for packets that never leave a physical
(or virtual) host, that could be used for the default internal network for
things like Docker. In my case, Docker defaulted to 172.17.0.0/16, which
happened to conflict with one of the IP ranges for my wing of the building at
work.

I've resorted to using RFC 5737 (test-net-1 through 3) IP ranges for this
purpose, even though that isn't what they are designed for.

~~~
y4mi
Uuh, 127.0.0.1 never leaves the physical machine. It's also a full subnet, so
127.0.0.254 would work as well.

Dockers main usecase just isn't purely internal, do using that ip range
wouldn't make any sense

~~~
y4mi
Too late to edit my message, so I'll use a response instead. Docker rebinds
the 127 network to each container, so you cant - by default - communicate
through these IP Addresses.

An easy fix could be to just let the container use the hosts network stack
(so, not network type: bridge). After that, you can bind the daemons to
specific IP Addresses in the subnet - i.e. 127.0.0.2:3306 DB1 127.0.0.3:3306
DB2 and they'll be able to communicate directly.

But as mentioned before: this is not the primary usecase for docker, so its
cumbersome to use.

------
k__
I still learned about net classes, subnetting and supernetting in 2003, to me
it was how networks worked till a few yeara ago :D

~~~
forapurpose
What changed a few years ago? IPv6?

~~~
k__
I read about classless internet domain routing.

------
dlhavema
I gotta try out the 127.0.0.x thing at the end of the article. I never knew
the range was so large!

~~~
jarfil
It's actually 127.x.x.x, a whole class A.

------
dlandis
Ugh, not another site that blocks pinch to zoom gestures on mobile. It doesn’t
make sense to me why so many (quite popular) sites care so little about
enabling their users to comfortably read their content. The solution, for now,
is to use Safari since it started ignoring that setting, but unfortunately
Chrome still allows it for some reason.

