我的网络有多智能?

biz*_*dee 36 networking routing switching

在我的办公室里有一个关于我们建立的网络到底有多智能/高效的争论。

我们有一条光纤线和一条电缆线连接到负载平衡路由器,它有一个硬件防火墙,最后有一个 64 端口交换机连接到它。

我们的每个工作站都连接到交换机(大约 30 台机器)以及一个 NAS 和几个内部测试服务器(都分配了 192.168.0.x 地址)。

如果工作站A想与工作站B通信,我们的网络是否足够智能:

一种 ?转变 ?B并且仅通过第一个最常见的连接旅行,

或者路径是A ?转变 ?防火墙?路由器?防火墙?转变 ?B每次都必须走那条完整的路线?

Ben*_*n N 73

除非您的流量需要移动到不同的子网,否则不需要路由器。当一台计算机想要向其子网上的另一台机器发送一些 IP 流量时,它需要接收者的 MAC 地址,因为 IP 地址不是交换机层(OSI 模型的第 2 层)的东西。如果它不知道 MAC 地址,它会广播一个ARP 请求,说“嘿,谁有这个 IP 地址,你能告诉我你的 MAC 地址吗?” 当机器收到响应时,该地址会附加到数据包上,交换机使用它从正确的物理端口发送数据包。

当目的地不在同一子网上时,路由器需要介入。发件人将数据包提供给适当的路由器(通常是默认网关,除非您有特殊的路由需求),该路由器通过网络将其发送到预期的收件人。与交换机不同,路由器知道并拥有 IP 地址,但它们也有 MAC 地址,这是最初放置在需要路由的数据包上的 MAC 地址。(MAC 地址永远不会离开子网。)

您可以route print在 Windows 上输出的网关列中看到路由器 IP 地址。不需要路由的目的地在On-link那里。

  • +1 是对的。为了更清楚/更清楚,我添加了这一点:如果数据包必须路由到不同的子网(因此它必须转到路由器),那么系统仍会将帧发送到 MAC-48 地址。它只是将它发送到路由器的 MAC-48 地址而不是最终接收者。因此,无论哪种方式,帧都将使用 MAC-48 地址传送。交换机基本会忽略IP地址,只看需要什么MAC地址。 (12认同)

Nat*_*ams 29

如果 2 台计算机连接到交换机上的同一个 vlan 并共享相同的子网掩码 - 交换机应该在不击中防火墙或路由器的情况下传送数据包。

您可以通过运行tracert 192.168.0.X(假设为 Windows)来验证这一点,并且您应该会看到到该系统的直接路由。

  • 或者 Debian 上的 `traceroute` 或各种 Unicies 上的 `nc`。 (15认同)

200*_*ess 19

几乎可以肯定,通信路径将是A ?? 开关??B、不通过防火墙和路由器。假设工作站AB 的IP 地址具有相同的网络和网络掩码,它们应该能够与不涉及的路由器进行交互,因为交换机知道如何转发数据包。您应该能够验证是否有之间没有中间跳一个运行从命令提示符,。(在 Windows 上,该命令将代替.)traceroute ip_address_of_Btracerttraceroute

也就是说,替代方案是可能的,但可能性较小。

在过去,在以太网交换机流行之前,有以太网集线器。集线器的工作方式相同,不同之处在于它们会通过集线器的每个端口不智能地复制和转发传入的以太网数据包,而不是像交换机那样从适当的端口转发出去。如果您有一个集线器而不是交换机,那么路由器将看到(并忽略)AB之间所有流量。当然,这种不分青红皂白的数据包转发会产生大量不必要的流量,如今以太网集线器并不常见。

另一种可能(但不太可能)的情况是交换机可以配置为进行端口隔离。这将强制每个工作站的流量通过路由器。如果您认为工作站彼此敌对(例如,公共图书馆或不同酒店房间的端口)并且您根本不希望它们能够直接通信,您可能想要这样做。但是,在办公环境中,您的网络管理员不太可能以这种方式进行设置。

用外行的话回答你的问题:在你的情况下,网络自然应该做“正确的事情”。但是,它可以被故意重新配置为做不同的“正确的事情”。作为一个推论,它也可能被意外地错误配置来做一件愚蠢的事情。