5 ms·
Router hardware cannot keep up with any real number of IPv6 addresses. You'll quickly overflow router tables if you try to use even a tiny fraction of that /48
by devicenull 11y ago
Router hardware cannot keep up with any real number of IPv6 addresses. You'll quickly overflow router tables if you try to use even a tiny fraction of that /48 at once.
For example, Cisco Nexus 9000 can deal with 30k IPv6 neighbors. Once you cross that, things start blowing up.
This isn't really a limit for the backbone routers, because they're all dealing with routes, not individual IPs (they know that 2001:DB8::/32 goes to peer A, which only consumes one routing table entry). It's only a provide when you get to the network edge.
- tw04 11y agoAnd thus SDN was born.
- nisa 11y ago> ...when you get to the network edge. I'm not a networking guy. Where is the difference? One table entry for the /48 should be enough? Where is the difference to a /64 that still allows enough IP addresses to blow something up? I can't image that a lot of people map their ULA network 1:1 to a /48 or is this the reason? As far as I undetstand it it shouldn't matter because the prefix translation is happening on the server itself on not on the router. So a single router should suffice? Wasn't at least the IPv6 header explicitly designed to be more router friendly?
- devicenull 11y agoAt the edge, the last router before your server has to have a mapping that a single particular IPv6 address maps to a specific MAC address. You can't really condense this down to a single entry, because any given switchport might have multiple MAC addresses active (think of the case where you have a dumb switch attached to your router, and 20 servers attached to that dumb switch. You're looking at 20 different mac addresses, so no way to condense that down to a few entries). Even a /64 is more then enough to blow up a router at this point. The /48 just makes it a lot more likely that that will happen. The simplest solution here is to route the entire /48 at a specific IPv6 address. This brings you back down to a couple table entries, but requires that your customer configure things properly.
- X-Istence 11y agoThat's when you do DHCP-PD and the router (last hop before your server) sets up a route for that entire /48 to the link-local address of your server. Or you set up a static route (as a provider this would be recommended) or let the edge do a BGP announcement of it's address space.
- simoncion 11y agoWhy do either of these solve the problem mentioned, and why would you allocate a /48 to a single server?
- simoncion 11y agoWait, when you said "...the router (last hop before your server) sets up a route for that entire /48 to the link-local address of your server." Was "your server" the ISP's server, or the customer's server? If the former, why are you saying "server", rather than "router"?
- X-Istence 11y agoIt's the customers server. If they need a /48 of address space, you just want to route all of it to them.
- virtuallynathan 11y agoThe router should only care about the prefix, right? If a server has a /48, what it does with that is not really the upstream routers business.
- devicenull 11y agoThe upstream router doesn't care, but the closest router to your server needs a mapping between IPv6 address and MAC address.
- X-Istence 11y agoRoute the /48 to the edge (the customers server)