Have you ever changed the static IP address of a computer? You just “recycled” a “globally unique” ID.
Recycling unique IDs (more precisely: changing the underlying thing the ID points to) is not impossible; there’s lots of pathological failure modes; for certain ID-spaces it’s kinda a required use case; so we have to deal with it.
You're right but for the wrong reason. You are referencing the private blocks that are designed for private use. The vast majority are not designed for private use.
The reason it's not unique (using my rudamentry understanding of networking) is because multiple routers can broadcast the same IP so devices can use the closest router.
However I think it's fair to say IP address are intended to be unique to an org while private ips are not.
> You are referencing the private blocks that are designed for private use.
Sure, but the person I'm replying to wasn't making a distinction here. They're just saying, "Have you ever changed the static IP address of a computer", where does that exclude RFC1918 IP addresses? I'm right for the right reasons IRT to the person I'm replying to. There are IP addresses which are absolutely not globally unique in any way, shape, or form by design.
> I think it's fair to say [public] IP address are intended to be unique to an org while private ips are not.
"Unique to an org", that's massively different from "globally unique" which is what the person I replied to suggested.
> multiple routers can broadcast the same IP so devices can use the closest router.
100% correct here, that's the biggest reason why you'd have an IP address shared among a lot of different devices.
I’ve been working in tech for 20 years, am coming off a year-long sabbatical, and for the past couple of months have been struggling with the feeling that the joy is gone and I should consider a radical career change.
Reading (what feels to me as) the aggressive pedantry of parent commenter in this thread is giving me a straight up anxiety attack. I’m not sure I have it in me anymore to be in meetings with people whose brains work this way.
Is it like this in every industry or is it more concentrated in tech? I don’t know who’s going to see this, but if you have any perspective or feedback you’d like to share, I’m all ears.
If someone says, "Tom Hanks played Jon Snow in Game of Thrones", and then you reply "that's incorrect, it was Kit Harrington", and then people say "well it's really Tom Hank's cousin that played him", which is still incorrect, is it aggressive pedantry to point out that's still wrong?
IP addresses are not globally unique. IP:PORT is not globally unique. Kit Harrington played Jon Snow in the HBO series Game of Thrones. These are just cold, hard, facts.
Looking for real feedback here, as I don't really want to give anyone panic attacks, but what would you suggest I say to posts attempting to correct me saying I'm wrong when I know they're factually incorrect? Just accept the falsehoods?
This is the new world we live in, the large group finds 'social correctness' more important than actual correctness.
> but what would you suggest I say to posts attempting to correct me saying I'm wrong when I know they're factually incorrect? Just accept the falsehoods?
If you find a good answer to this please let me know.
I've read books on this topic, and they say to come at the problem from an empathetic view point asking questions and trying to understand the person, however I suggest that you simply dont waste your time, you can't fix peoples broken understanding.
I've had hyper-pedantic arguments in many workplaces, but they're usually focused in tech or other "intellect driven" fields.
A lot of people (Americans especially, I guess due to their Silicon Valley) think you need to work in tech to work in tech. There are tech jobs in every industry, both IT and other types of tech. I recommend not being in the tech industry - working for a manufacturer with embedded systems or doing IT for a finance company is a lot better for your mental health.
Because of NAT, it’s actually “IP + Port#” that is globally unique, and ultimately associated with a single physical network interface on a device (e.g an ethernet port on a PC).
There’s exceptions like broadcast IPs, but the point is that it is a system for uniquely locating devices and listening OS processes with IDs routinely shifting around.
> it’s actually “IP + Port#” that is globally unique
So which globally unique box is 192.168.1.1:443? Can you point to exactly one device out there with that IP:PORT combo? There's probably hundreds of millions of that IP:Port combination currently running and listening.
Which globally unique box is 8.8.8.8:53? You think there's seriously just one network adapter listening for traffic at 1.1.1.1:53? These aren't "broadcast IPs".
And even then, "ultimately associated with a single physical network interface on a device" isn't correct either. You can have multiple physical interfaces listening on the same IP and end up with the same ports.
Well the 192 case would probably have an external IP + Port uniquely mapped to it in the router’s NAT table. I think you’re missing the larger point though. No one said IPs are exclusively used as GUIDs. Just that they are used as GUIDs, which they are in the majority of cases, and those GUIDs are re-assigned over time.
My Macbook Pro currently has unique IP + Port, associated with a single process listening to it over NAT and packets you send are routed to its network interface. Next week, someone else’s laptop could have that same IP + Port. That’s the main idea here, not these exceptions.
> would probably have an external IP + Port uniquely mapped to it in the router’s NAT table.
Only on really crappy NAT implementations. My home router can have hundreds of thousands of NAT states, and yet there are only ~61k high number ports. How do you think that works?
Because it is not just "external IP at this port goes to this LAN host". Its the whole session information, SRC_PORT, DEST_PORT, SRC_IP, DEST_IP, all get figured into it.
At this moment there are several NAT states in my home router that share the same public IP:PORT combination, going to different LAN IP:PORT combinations.
An IP address is not globally unique. An IP:PORT is not globally unique. Treating them as globally unique shows a misunderstanding of networking concepts. They're often unique to a single host, but that's not a requirement.
Once again, do you really think there's a single network adapter out there that has 8.8.8.8:53?
there are a handful of ranges in IPv4 that are NOT globally unique. You're describing a much smaller set of IP ranges that are designed to be used+reused but not routable.
if you take someone elses public IPv4 address and they're using it, neither one of you will be functional, and they will come knocking on your door.
> if you take someone elses public IPv4 address and they're using it, neither one of you will be functional, and they will come knocking on your door.
Sure, but if I have the IP address 1.2.3.4 I can have lots of unique physical things have that publicly routable IP address and have them all work if I do it right.
If that was supposed to be the case it's been fucked up since they first gave 19.0.0.0/8 to a car company in 1988, or when IPv4 was originally designed with such a small address range.
Recycling unique IDs (more precisely: changing the underlying thing the ID points to) is not impossible; there’s lots of pathological failure modes; for certain ID-spaces it’s kinda a required use case; so we have to deal with it.