4 ms·
> I was trying to say something like this; I don't think it's true that you don't ever store full addresses in a router (You don't always store the address, som
by tjgq 12y ago
> I was trying to say something like this; I don't think it's true that you don't ever store full addresses in a router (You don't always store the address, sometimes just a prefix), but when you are describing a destination for a block, you would need a full address to finger that gateway, wouldn't you?
Oh, I see your point now. You mean the IPv6 addresses assigned to the nodes that the router forwards the packets through (i.e., the egress nodes), not the destination addresses for those packets.
> Unless the gateway is always at the front of the address block, which I'm sure "they never taught us" in small network design school, at least I believe I've seen routes where the gateway was inside the netblock range or at the end rather than beginning, but again... big networks maybe.
Sure, the gateway address almost never belongs to the address block you are forwarding to. You could be forwarding to a very distant network which isn't directly connected to, nor belongs to the same address block, as your gateway.
I can't tell for sure how routers implement this, but it's safe to say that the total number of egress nodes for a router is much, much smaller than the total number of routes (prefixes). So the obvious optimization is to store the egress node addresses in a lookup table, and only store an index into that table for each route. That way, the fact that you are now forwarding through IPv6- instead of IPv4-addressed gateways does not increase the routing table size (though it does increase the size of the much smaller lookup table).
> What I was trying to say was that when you have the freedom to write bigger ranges by an exponent factor of four like you have if you're the governing bodies of the internet with IPv6 vs IPv4, the expressive part of your network number can be made shorter, at least until your new network begins to approach the size of your old network.
I think you probably meant "at least until the used fraction of your new address space begins to approach the used fraction of your old address space".
> You don't avoid this problem at all, even if you are not storing 128 bits of address there are probably never scenarios where two internets of the same size last longer on the same hardware because IPv6.
I'm not sure I understand the last sentence. The sense in which the IPv6 network will "last longer" in the same hardware is that, for the foreseeable future, you will be able to satisfy most new allocations by choosing an address block that is adjacent to an already existing allocation for the requesting entity. Because the two blocks can then be aggregated into a single prefix, the routing table stays the same size.