this post was submitted on 09 Jun 2024
814 points (98.1% liked)

Programmer Humor

19512 readers
376 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 

Context:

People have been asking for IPv6 Support on GitHub since years (probably a decade by now)

... and someone even got so annoyed that they decided to setup a dedicated website for checking this: https://isgithubipv6.live/

you are viewing a single comment's thread
view the rest of the comments
[–] sloppy_diffuser@sh.itjust.works 10 points 5 months ago (1 children)

Ok. So a device didn't get a dhcp address? No problem... It creates it's open IP address and starts talking and try to get out on internet on its own....

Its not that different from a conceptual point of view. Your router is still the gate keeper.

Home router to ISP will usually use DHCPv6 to get a prefix. Sizes vary by ISP but its usually like a /64. This is done with Prefix Delegation.

Client to Home Router will use either SLACC, DHCPv6, or both.

SLACC uses ICMPv6 where the client asks for the prefix (Router Solicitation) and the router advertises the prefix (Router Advertisement) and the client picks an address in it. There is some duplication protection for clients picking the same IP, but its nothing you have to configure. Conceptually its not that different from DHCP Request/Offer. The clients cannot just get to the internet on their own.

SLACC doesn't support sending stuff like DNS servers. So DHCPv6 may still be used to get that information, but not an assigned IP.

Just DHCPv6 can also be used, but SLACC has the feature of being stateless. No leases or anything.

The only other nuance worth calling out is interfaces will pick a link local address so it can talk to the devices its directly connected to over layer 3 instead of just layer 2. This is no different than configuring 169.254.1.10/31 on one side and 169.254.1.11/31 on the other. These are not routed, its just for two connected devices to send packets to each other. This with Neighbor Discovery fills the role of ARP.

There is a whole bunch more to IPv6, but for a typical home network these analogies pretty much cover what you'd use.

[–] farcaller@fstab.sh 5 points 5 months ago (1 children)

SLACC doesn't support sending stuff like DNS servers.

It does

[–] sloppy_diffuser@sh.itjust.works 1 points 5 months ago

Oh nice! I'll have to dig into that. Wonder if its an implementation issue across vendors. I was always under the impression that DHCPv6 was the common convention if not static.