我是计算机网络的新手,正在阅读有关路由的主题。
根据我的理解,每个路由器都有一个与之关联的路由表。从该表中,它可以知道为特定目的地选择哪个输出链接,以及距离。
如果是这样,则“Internet”中的每个路由器都必须维护有关连接到 Internet 的所有其他路由器和主机的信息。
由于每个地址是 4 字节长的 IPv4,每个路由器最多需要 17 GB 的空间来单独存储 IP 地址(2^32*4=17179869184 字节 =17 GB)
我的理解有误吗?我没有清楚地了解这是如何工作的。
我是计算机网络的新手,正在阅读有关路由的主题。
根据我的理解,每个路由器都有一个与之关联的路由表。从该表中,它可以知道为特定目的地选择哪个输出链接,以及距离。
如果是这样,则“Internet”中的每个路由器都必须维护有关连接到 Internet 的所有其他路由器和主机的信息。
由于每个地址是 4 字节长的 IPv4,每个路由器最多需要 17 GB 的空间来单独存储 IP 地址(2^32*4=17179869184 字节 =17 GB)
我的理解有误吗?我没有清楚地了解这是如何工作的。
所以有几件事 - 首先,不,所有连接到互联网的路由器都不需要整个地址空间。如果设备只有一个 Internet 连接,它们将有一个默认路由,例如:0.0.0.0/0 指向其上游路由器,仅此而已。这表示路由器没有更好的路由的任何 IP 地址。
ISP 内的路由器可能包含“整个”Internet 路由表。
至于关于保存路由表所需空间的问题的第二部分 - Internet 路由不是作为单独的主机路由存储,而是作为摘要前缀存储。IPv4 Internet 路由的一般规则是,任何 ISP 都不会将任何超过 /24(例如:255 个地址的块)作为单个路由更新进行广告,并且您会发现许多路由聚合得比这更远(每个前缀最多可达 /8s 或 65K 个地址)。
随着时间的推移,随着互联网的发展,路由分解(例如:采用更大的前缀并将其分解为更小的前缀)导致所需的互联网路由数量增加,因此保持表的硬件要求也增加了。
截至今天(2018 年 5 月),共有 717,613 个前缀被广告,这些前缀可以由具有 2GB 内存的路由器轻松存储,并有足够的空间运行路由器操作系统。
如果您有兴趣,我建议您通读https://www.cidr-report.org以获取最新的前缀计数和聚合报告。
路由器不需要知道每个地址。路由器交换前缀(网络),而 ISP 通常只会/24
为 IPv4通告或更短的前缀(/48
或更短的 IPv6前缀)。路由表包含前缀和到达每个前缀的接口。也有聚合前缀的机会,所以你只需要一个前缀来表示多个连续的前缀,这些前缀都在同一个接口上。这就是默认路由:将所有可能的前缀最终聚合到0.0.0.0/0
.
请记住,流量只需要到达 LAN(网络),然后第 2 层在 LAN 上传送流量。
话虽如此,有很多路由器都有完整的互联网路由表,超过 600,000 条路由,但那些是真正的路由器,不像消费级路由器,而且,是的,它们有很多 GB内存。
企业客户也有选择: