为什么需要路由器?

Max*_*bit 51 networking router switch dhcp hub

我一直在试图弄清楚为什么需要路由器。我知道路由器可以用于 DHCP 和其他一些东西,但我只是想用静态 IP 联网。所以如下:

是否可以使用静态 IP 执行以下操作:

Modem -> Switch -> PCs
Run Code Online (Sandbox Code Playgroud)

或者你需要去:

Modem -> Router -> Switch -> PCs
Run Code Online (Sandbox Code Playgroud)

那么路由器究竟是做什么的,为什么需要它?

use*_*686 77

我认为通常路由器作为接入点、DHCP、防火墙和交换机作为对网络不太了解的人的简单解决方案

不,路由器是一种独立于 AP 和交换机的设备。“路由器”不仅仅是一个通用名称——它描述了一个特定的功能,在网络之间路由 IP 数据包。

换句话说,您描述的是路由器 + 交换机 + AP 组合,最好将其称为“SOHO(小型办公室/家庭办公室)路由器”或“家庭网关”。

(但是,许多专用路由器确实具有集成防火墙,有时甚至具有 DHCP 服务器。)

我想知道为什么一般需要路由器

需要 IP 路由是因为纯以太网级交换不能很好地扩展。

以太网设备地址由制造商分配——其中没有有用的结构;就网络而言,它们是随机的。因此以太网交换机只有两种选择:保留连接到每个端口的每个设备的列表(如现代交换机所做的那样),或者简单地将每个数据包广播到每个端口(如在原始以太网中)。

这两种方法都只适用于一定的网络规模,但如果设备数量超过交换机所能记住的数量,网络将很快崩溃。(相关主题:CAM耗尽)

因此,类似于邮政编码或电话号码,IP 为网络提供了一个结构——每个网络、子网络、超级网络都被分配了一个地址块,您可以描述诸如“以 [10.7.xx] 开头的地址可以通过 [端口 3] 到达”。现在世界其他地方不需要知道数百万康卡斯特客户,它只需要几条通往康卡斯特本身的路线。

IP路由器掌握这些路由的知识,并相应地转发所有数据包。

(以太网和 IP 之间的这种分离实际上很有用,因为它提供了灵活性——同一个以太网可以承载几种不同的协议,例如 IPv4、IPv6,也许是 IPX……其他一些协议没有这种分离,例如 DECnet 或 NetBIOS,他们无法在网络增长中存活下来。)

是否可以去:调制解调器 -> 交换机 -> 具有静态 IP 的 PC

当然,技术上是可以的。甚至不需要静态 IP。

事实上,在我工作场所旁边的 ISP 中,该市大约 20 家企业客户实际上没有自己的路由器——他们的“外部”交换机直接连接到 ISP 大楼中的单个路由器(甚至为所有客户提供 DHCP 服务)。他们),就像你描述的那样。

但通常不这样做是有原因的。(诚​​然,其中一些来自 IPv4 地址的短缺——例如 NAT。但即使在纯 IPv6 世界中,许多地址仍然很重要。)

  • 就像现在一样,ISP 将一个“全局”IP 地址路由到您的网络。因此,当然,您可以将您的 PC 直接连接到调制解调器,并使用您的“全局”地址对其进行配置。(很有可能,它甚至会通过 DHCP 自动配置。)

    事实上,直到 2000 年代末,这曾经是这里非常常见的配置。大多数家庭客户只有一台计算机,而这台计算机通常会通过调制解调器直接与 ISP 的路由器通话——首先使用真正的拨号调制解调器,后来使用 ADSL 调制解调器。

    但是每个设备都需要自己的地址。由于您只能从 ISP 获得一个 IPv4 地址,因此您可以直接连接一台计算机,但不能直接连接两台- 除非您为第二个地址支付额外费用。

    这就是为什么您的家用路由器具有“网络地址转换”功能(又名 NAT)的原因,它为您提供一块“私有”192.168.x 地址并将它们隐藏在一个“全局”地址后面。

    (CGNAT 也值得一提,但研究留给读者。)

  • 除了 NAT,您的“路由器”还具有其他功能,例如防火墙、DHCP 服务器、DNS 缓存。是的,这些都可以由 ISP 的路由器来完成,但这会使 ISP 付出一定的代价,并且会给所有客户带来不便,而且不会给任何客户带来任何好处

    防火墙必须通过您的 ISP 提供的接口进行配置,并且大多数 ISP 只会提供最少的选项。(在配置我自己的路由器时,我可以完全控制——我可以将防火墙规则应用于不常见的协议;我可以创建多个子网;我可以试验 IPv6 隧道、RIP 或 OSPF……)

    防火墙和 NAT 都需要资源来跟踪连接——一定数量的内存,一定的 CPU 能力。目前这些资源是分散的,因为你的路由器只需要跟踪你自己的连接。但是,如果一切都由 ISP 完成,他们的路由器将需要与所有客户的路由器加在一起一样多的内存和 CPU ,这很昂贵。

    DHCP 服务器在您身边时工作得更好。即使互联网电缆被切断,您自己的设备仍然可以获取 IP 地址并在本地进行通信。(是的,是的,静态地址是可能的,但相信我,跟踪它们是一件很麻烦的事情。)

    DNS 缓存有效,因为它就在您家中。无论如何,您的 ISP 都有自己的 DNS 缓存,但您的路由器仍然有自己的小缓存,因为它离您更近,服务的设备更少,因此可以更快地响应。(缓慢的 DNS 非常明显。)

因此,拥有自己的家用路由器的原因是,1) 速度更快,2) 更便宜,3) 对您和 ISP 来说都更简单。

(我之前描述的 ISP?我不知道他们为什么这样做。也许当您只有十几个客户时与您拥有数千个客户时会有所不同。)


use*_*067 6

家用调制解调器通常只为您提供一个 IP 地址。路由器执行 NAPT(网络地址端口转换),允许您在网络上拥有多个私有 IP 地址。

如果您的 ISP 为您提供多个 IP 地址,则您可能不需要路由器。

  • @maxbit 除非您的调制解调器本身执行 NAPT(这会使它更接近路由器),否则您的 ISP 将看到来自 192.168.0.10 的数据包。但是,这是一个私有 IP,您的邻居也可以使用(并且他可能在该子网中使用了一个),因此回复将不知道如何回复您。实际上,您将其发送到的计算机可能具有完全相同的 IP。通常,ISP 甚至会丢弃来自这些 IP 的数据包,并且只接受来自他们提供给您的(公共)IP 的数据包。调制解调器只是将一种形式的信号转换为另一种形式,它们不了解 IP 并在较低层工作。 (2认同)
  • @ user2313067 我的 ISP 分发了多个。但即使 ISP 只分发一个 IP,如果您只连接一台计算机,您也可以不用路由器。所以对于can you这个技术问题,答案是肯定的。 (2认同)