3 ms·
Correct me if i'm wrong, but doesn't an IPv6 /64 give you 2^64 globally routeable addresses? How is that not sufficient?
by mappu 12y ago
Correct me if i'm wrong, but doesn't an IPv6 /64 give you 2^64 globally routeable addresses? How is that not sufficient?
- simoncion 12y agoYou can't subnet a /64. This RFC [0][1] describes the IETF's thoughts on why allocating a block larger than /64 is to be strongly encouraged. [0] https://tools.ietf.org/html/rfc6177 https://tools.ietf.org/html/rfc6177 [1] Particularly, see page 3
- matteotom 12y agoAFAIK, it's customary to assign a /64 to each machine, and the last 64 bits are used for other purposes (usually the MAC address I think?). https://en.wikipedia.org/wiki/IPv6_subnetting_reference https://en.wikipedia.org/wiki/IPv6_subnetting_reference
- simoncion 12y agoPerhaps we're using different terminology, but it's absolutely not customary to assign a /64 to each machine. IME one advertises one or more /64's on a given network, then (either through DHCPv6, or SLAAC [or both]) machines attached to that network acquire addresses within those spaces. These machines will have a XXXX::XXXX/64 address, but that just means that they're attached to a network that advertises a /64, not that that machine has been assigned an entire /64 for its use.
- ghshephard 12y agoWith IPv6 you assign a /64 to the network. All networks in IPv6 are 64 bits long, with 64 bits assigned to the host's interface ID. There are lots of ways for a host to generate an Interface ID - (http://technet.microsoft.com/en-us/library/cc736439(v=ws.10).aspx http://technet.microsoft.com/en-us/library/cc736439(v=ws.10)...) is a nice reference.
- zAy0LfpBZLC8mAC 12y agoYes, it does, but individual IPv6 addresses are not directly comparable to individual IPv4 addresses, because protocol mechanisms assume that every network ("LAN") segment has its own /64. For example, IPv6 stateless auto configuration (for automatic stateless address assignment, another central innovation of IPv6) only works with a /64, so you can't use it if you have to subnet a /64. As far as the RFCs are concerned, a /64 is the minimal allocation that is used for a network segment, anything else is a hack.
- ghshephard 12y agoIPv6 doesn't work like IPv4. In IPv4 Parlance, you would be given a CIDR block which you could then subnet as you saw fit. I.E. The ISP might give you a /19, which you could then turn into 32 /24s (or 64 /25s, etc...) With IPv6, /64s are the basic unit, and you don't further subnet the network. So, instead of thinking of "addressable space", you should now think of "deployable networks." . An ISP that hands out a /64 is basically just giving the customer a single network. The smallest network any ISP should hand out to a customer is a /48, which lets the customer deploy up to 2^16, or 65K networks as they see fit.