• 5 Posts
  • 494 Comments
Joined 3 years ago
cake
Cake day: June 5th, 2023

help-circle






  • Conclusion: kids are the cause of 60% of divorces.

    They might not be the original cause but often they are part of the process. Some people seem to think that a child will fix their already strained relationship. The problem is that while children make it harder to split up, they usually don’t fix the underlying reason why the relationship didn’t work in the first place. In the end, they get a divorce anyway only now there is a small human who has to suffer from it.

    Congratulations to the few where a child did fix a relationship but for everyone else, maybe sort out your problems before you add another innocent bystander into the mix.










  • And your point is? Yes, everything on a PC is a list of numbers. That alone doesn’t make an IP address (four 8-bit numbers / one 32-bit number) inherently more meaningful than the ASCII representation of a domain name (eleven 8-bit numbers in the case of “lemmy.world”). The mapping between a letter and its ASCII code is literally one of the most basic things a computer does.

    The advantage comes from IP addresses having a fixed length, from IPv4 addresses being relatively short overall (IPv6 is 16 bytes which is about the same as many domains) and from prefixes being used for routing so you don’t need a directory of every single IP address at every router (roughly analogous to country and area codes in phone numbers). None of that is relevant for understanding DNS and none of it means that computers don’t “understand” text.

    Edit to fully illustrate my point: IP addresses could just as well be strings like “de/hetzner/falkenstein12/rack42/server23”. That would work. It would take up a lot of memory and be much slower than what we have but it would absolutely be possible to build a version of the internet that uses that instead of opaque numbers. And it would still need DNS on top because nobody wants to remember (or even know) where a website’s server is physically located.



  • DNS itself isn’t that complex. We can ask for multiple things (A, AAAA, MX, NS, TXT, …) and servers form a hierarchy so not everyone has to directly talk to the server that has authority over a domain. Maybe add DNSSEC if you feel fancy. That’s about it.

    The complexity comes from actually running these things at an enterprise or even global scale. Giving out different replies depending on who asks so everyone can contact a server that’s geographically close to them. Load balancing between multiple nameservers. Aggressive caching. Failovers. Rights management. The reasons why DNS is the culprit for so many outages are a) the complexity we have layered on top of a relatively simple protocol and b) a lot of other stuff relies on DNS so problems spread super fast.


  • That’s not true though. Your computer understands “lemmy.world” just as much or as little as “104.26.9.209”. If it couldn’t handle a string of letters, it couldn’t ask a nameserver for the corresponding IP address either.

    Explaining why we need IP addresses would include the ISO/OSI layer model, fixed size DEST fields in IP packet headers, subnets, routing techniques, BGP and a lot more.

    I could explain all that but it would take hours even when talking to someone who has a rough understanding of network technology and probably days when talking to a (virtual) 5-year-old. In the end it boils down to “Using numbers is more efficient” not to “Using names is impossible” and that must suffice for an ELI5.



  • DNS is like a phone book for the internet.

    Computers on the internet have IP addresses which are numbers like 104.26.9.209. Nobody really wants to remember dozens or even hundreds of those so we also give them names like lemmy.world which are a lot easier to remember. DNS is a service that you can ask “Hey, what’s the IP address for lemmy.world?” and you get a reply like “You can reach lemmy.world under 104.26.9.209, 104.26.8.209 and 172.67.71.35. You may remember those for 256 seconds. After that, better ask me again in case they have moved.”

    In reality, it’s a tiny bit more complex. For example, you can ask for different kinds of information, not just IP addresses and DNS servers talk to each other to efficiently distribute changes across the internet.