什么是多宿主,需要设置什么?

不,多宿主与您在伦敦的顶层公寓,落基山脉的小屋以及巴哈马的海滨别墅无关。而是将您的计算机或家庭网络同时连接到多个网络以执行负载平衡,提高吞吐量,提供冗余或建立网关服务。

在这里,我们将向您介绍多宿主,向您展示

什么是Multihoming?

Simply put, multihoming is giving your computing device or network a presence on more than one network. In fact, many people already have a multihomed device: the router connecting their home network to the Internet. It is also used in network bridges, repeaters, range extenders, firewalls, proxy servers, gateways, and when using a virtual machine configured to use network address translation (NAT).

Multihoming的优势

让我们看看整个网络多宿主的示例。这将涉及来自两个ISP的连接。现在,您网络上的所有计算机都有两条通往Internet的路径。定向到Internet的所有流量都可以通过任一链路发送,从而在任何单个链路上提供负载平衡并缓解拥塞。只要两个链接都建立,您就可以完全饱和两个链接,从而提高整体吞吐量。而且,如果其中一个链接出现故障,则另一个链接仍会承载流量,因此您就有了冗余。

我使用多宿主主机的另一个实例是网络备份。由于我不希望这些备份在生产网络上造成拥塞,因此我的计算机都具有两个网卡。一个连接到生产网络上的交换机或路由器,第二个连接到我专用备份网络上的交换机。所有网络备份都通过第二个网络进行,即使我在计划的备份期间进行工作,也可以使生产网络清晰地进行“实际工作"。

硬件要求

为了实现多宿主一台主机设备,您需要一个有线网络接口卡(NIC)或有线和/或无线适配器的任意组合。

您不能仅使用一个无线适配器就可以真正将计算机多宿主,因为它只能连接到一次一个无线网络。如果希望将计算机连接到两个不同的无线网络,则必须具有两个无线适配器,尽管更常见的是只有一个有线连接和一个无线连接。

对于多宿主网络,每个ISP都需要一个调制解调器需要。如果您可以从提供商那里获得一个简单的调制解调器,而不是调制解调器/路由器的组合,那么我建议您这样做。这样可以简化设置,通常价格较低,而且您不会有太多潜在的攻击面。

您还将需要一个路由器将调制解调器连接到网络。请记住,将直接连接到路由器的任何其他设备的端口数。最好使用支持边界网关协议(BGP)的边缘路由器,因为它将根据BGP配置规则自动平衡所有连接的调制解调器上的流量。

多宿主配置

在这些描述中使用的术语地址空间表示一个或多个网络上使用的传输协议的适当地址或设备的媒体访问控制(MAC)地址。在几乎所有情况下,除非您要设置协议网关(根据其所连接的网段使用不同的传输协议),否则传输协议都是Internet协议(IP)。这种类型的应用程序通常不在业务环境之外使用。

要记住的关键是地址空间可以是单个MAC地址或2、4、8或更多IP或其他的块传输协议地址。

有时用于将多个地址分配给单个Web服务器,每个地址代表服务器上的单个域。这就是为什么一些较早的资源将多主机或多租户服务器称为多宿主服务器的原因,即使这种配置已很少使用。

在示例图中,我列出了与示例Web服务器相关联的地址。从DNS获得。如果网络浏览器在www.example.com上请求该站点,它将解析为地址192.7.3.16。当网络服务器看到此请求时,它将到达域www.example.com的数据,因为它到达的是服务器的192.7.3.16地址,而不是其他地址。请记住,所有这四个地址都与服务器中的同一网络适配器相关联。

结合使用IPv4地址的穷竭和其他从单个服务器访问服务器上单个域的方法IP地址(例如使用域名来连接虚拟主机)在某些专用网络之外,这种特定用途似乎已不受欢迎。由于只有一个网络适配器,因此此配置无法提供负载平衡,冗余或吞吐量方面的好处。

在Microsoft Windows计算机上,该配置只能与静态地址一起使用;如果在适配器上启用了动态主机配置协议(DHCP),则无法执行此操作。

设置起来很简单:

  • 转到控制面板>网络和共享中心或右键单击通知区域中的网络图标,然后选择打开网络和共享中心
  • 单击更改适配器设置
  • 右键单击要修改的适配器,然后选择属性> Internet协议版本4>属性
  • 选择使用以下IP地址:单选按钮,然后输入适当的主IP地址,子网掩码和默认网关。您还应该手动为此网络连接适当地设置DNS服务器。
  • 在大多数情况下,您将不需要定义其他网关,因此除非您有特殊需要,否则不要这样做。

    对于Linux系统,您可以修改/ etc / network / interfaces以创建虚拟接口,方法是将多个IP地址放置在单个接口上,如下所示:

    auto eth0allow-hotplug eth0iface eth0 inet static address 192.168.1.42 netmask 255.255.255.0 gateway 192.168.1.1auto eth0:0allow-hotplug eth0:0iface eth0:0 inet static address 192.168.1.43 netmask 255.255.255.0auto eth0:1allow-hotplug eth0:1iface eth0:1 inet static address 10.10.2.24 netmask 255.0.0.0

    Linux机器可以将DHCP用于

    此配置的最常见用法是具有一个或多个内部接口和一个或多个外部接口,每个接口都有自己的MAC和IP地址,这些地址将本地网络连接到世界其他地方。有些人可能会立即将其视为路由器配置,尽管它也用于网关,代理,防火墙和其他安全设备。

    注意:在上图中,台式机和小型机都有两个网络适配器,其中一个连接到日常工作的主要网络,另一个连接到服务器的备份网络。

    默认情况下,Windows计算机使用这种类型的适配器。遇到多个NIC时的配置。与以前只能使用静态寻址的配置不同,它可以在支持DHCP的所有网络上使用DHCP。

    这也是用于在Virtualbox或VMware下运行的虚拟机的配置类型。托管的管理程序为VM实例创建虚拟专用网络。虚拟机管理程序本身具有自己的IP地址,VM实例将其用作默认网关,以使用NAT通过主机的网络适配器通过主机的网络适配器连接到其他网络,并将其变成自己的软件路由器。

    如果地址空间是单个IP​​或MAC地址,通常将其称为链路聚合,但是还有其他等效术语,例如端口中继,链路捆绑,NIC绑定或NIC分组。这是一种增加设备(通常是服务器)往返网络其余部分之间的吞吐量并提供一点冗余的方法。网络流量在所有组合的NIC之间进行负载平衡,并且如果其中一个组合的NIC出现故障,其余的NIC仍将继续正常运行,以保持设备在网络上的可用性。

    经常使用这是为了允许往返于现有基础架构上的服务器的通信量更多,而不必替换基础架构本身。通过简单地将成组的网络适配器添加到服务器并在交换机之间绑定它们,以便为比特提供通过端口的更肥壮的管道,从而增加了吞吐量,同时在网络适配器发生故障的情况下提供了冗余。只需花费升级网络交换机,路由器和电缆所需的一小部分费用即可完成此操作。

    如果网络交换机无法处理绑定,仍然可以使用。在这种情况下,设置循环DNS将为服务器执行简单级别的负载平衡。处理每个DNS请求时,尽管在客户端计算机上特定的解析器行为和缓存DNS服务器会干扰该过程,但它会循环遍历每个卡的地址,从而分散每个网络适配器之间的工作。

    何时在站点或网络级别执行时,路由协议(例如BGP)用于提供聚合和故障转移功能。换句话说,当路由器注意到某个链接发生故障时,两端的路由器将不再通过失败的链接发送流量。

    通常用于通过专用硬件来实现负载均衡,以实现更高的性能。 -可用性系统,这是诸如Google之类的高流量Internet站点使用的解决方案类型,这些站点每秒处理数万笔事务。它也用于多家庭整个网络。例如,将单个网络连接到两个不同的ISP以实现冗余将属于此类。

    尽管某些家庭用户可能希望考虑这种类型的选项,但这并非没有缺点。

    首先,您正在寻找与两个ISP的合同,因为来自同一源的两个连接不会提供冗余,尤其是在住宅区,几乎可以保证两个连接都在完全相同的硬件上运行。设备在此单一路径中的故障仍然会断开两个连接。

    第二,为实现真正的故障转移功能,需要更昂贵的边缘路由器,该路由器应支持BGP进行链路故障检测和隔离以及链路聚合。这些通常是企业级路由器,因为它们的价格明显超过300美元。诸如Ubiquiti之类的公司确实提供了针对小型办公室/家庭办公室(SOHO)环境的便宜产品,但即使是经验丰富的网络管理员,其可靠性和用户友好性也受到了不同的评价。

    Third, it requires cooperation from both ISPs in order to properly configure BGP on both ends of each link. Depending on the level of cooperation and competition among your local ISPs, this may be the biggest hurdle.

    家庭网络多宿主如果没有这些边缘路由器,仍然可以实现,这也不是没有问题:

  • 故障转移并不顺利。
  • 每个开放的连接都会突然终止,而带有BGP的边缘路由器可以提供更平滑的连接过渡,并且某些高层协议可能会遇到一点打ic,然后继续进行,就好像什么也没发生。
  • 如果不使用网络上所有计算机的路由配置进行游戏,则吞吐量可能不会受到影响。例如,通过一个连接运行到特定站点的所有流量,并通过第二个连接运行所有其他站点的流量。即使这样,在冒着潜在降低网络性能的风险的同时,任何收益也可能很小。
  • 链路故障可能最终会导致更多问题,例如在路由表中设置首选路径时频繁超时
  • 没有边缘路由器,事情变得过于复杂,几乎没有收益。我认为,额外的麻烦是不值得的。

    结论

    虽然多宿主计算机是一个相当简单的过程,并且可以有效地用于多种目的,对于家庭或SOHO网络而言,同样的做法可能无法提供足够的利益来证明费用合理。

    如何使用多宿主主机?您是否对网络进行了多宿主?您所有的预期收益都实现了吗?它在哪里表现出色,又有何不足?在以下评论中让我们知道。

    图片来源:D-link DFE-528TX 10 / 100Mbps快速以太网PCI网络适配器(CC BY 2.0),作者蒂姆·吉林(Quimga Prefix List)(CC BY 2.0),由Linux屏幕截图

    标签: 计算机网络 局域网