Comment on Phones have unique phone numbers, why dont computers have unique computer-numbers?

<- View Parent
ArbiterXero@lemmy.world ⁨6⁩ ⁨months⁩ ago

It’s not just the address space, but also the sheer number of lookups.

DNS has authoritative name servers based on tld, and then domain, and then maybe subdomain.

When you’re dealing with IP addresses, there is no such tree that I lookup, I just fire it into the abyss and let the routing hardware do the lookups. I know who my gateway is to the internet, but I usually don’t keep the routing information.

My ISP’s routing hardware then says “this IP was last found somewhere in Europe so I’ll fire it at my European connection and hope they get it right.”

Losses are expected.

IPv6 CAN route with larger address tables, but the “fire and forget” method still exists.

There’s also a method to scream at all my peers “do you know where 5.5.5.5 is, because I don’t know” I’ll remember their answer for a bit because that’s useful, but I’ll eventually forget it because I expect it to move. I expect this ip movement because I’m fault tolerant. I might not find the fastest way there, but I’ll find it.

Philosophically, the internet is designed to be fault tolerant and pseudo anonymous. So if 5.5.5.5 is somewhere in Spain and my Spain peer dies, I recognise that the packets are failing and then I start blasting them at England, because my British connection knows all about the Spanish villa and can pass along my messages. I don’t really care where Spain is, I care about who can get my message there and that’s it. It’s too onerous to always keep track of where everyone is, and MOST people on the internet I don’t actually know about because they’re behind a Nat gateway and I don’t care about them. This makes it so I only have to care about edge devices and greatly simplifies my list.

So for example, your laptop isn’t actually on the internet. Your modem/router is, but your laptop doesn’t exist to the internet. When I want to send you a packet, I just send it to your router and let the router handle it. I don’t even know that your laptop exists, and I don’t care.

Well your router will send the data to your laptop instead of your phone because the Nat is keeping track of who requested it and your phone didn’t ask for it. This causes problems because it means that from outside your network, I can’t just connect and send data inside your network unless someone asked for it. So I can’t just call your cell phone unless it reaches out first because I don’t know that your cell phone exists, and even if I did, the router would block it. This is why port forwarding exists, it allows you to have your laptop get ALL data sent to the router on port 12345. I still don’t know about your laptop, but I know that there’s a server on your IP address on port 12345 that I can connect to and request/send data to. Keeping track of all of this just so that I always know where your laptop is requires a fair bit of coordination at many layers.

Ideally it has a domain at a registrar that I can ask about where it currently is. The routing is still “fire and forget “ because it simplifies my list of “where every IP is” and even then, I only know about the laptop’s edge connection to the internet and let that edge take care of where to actually send the data so I don’t have to think about it.

In IPv6, Nat works a little different, but it’s still close.

I’m honestly not sure how many mistakes I made, I just kinda brain dumped info, so let me know which pieces don’t make sense.

source
Sort:hotnewtop