绑定是实现 ISP 冗余的首选方式吗?
在我看到的文本中,绑定设备有一个网络掩码,它自己的网关。如果两条上行链路有两个不同的网关,如何获得这一点,选择哪一个?
我是否需要任何特殊的路由规则来配合它,或者只是配置单独的接口(使用 Debian、/etc/network/interfaces),即 eth1、eth2 为其相应的上行链路并将它们绑定到 bond0 自动处理路由?
如果我想对客户端机器进行 NAT,它们是否使用绑定设备的 IP 作为网关?bond0 设备是进入 iptables nat 规则的设备吗?
谢谢
绑定不适用于这种情况。
对于您的解决方案:您将在使用多个 NIC 增加带宽中找到一些有用的说明。
对于绑定:您可以从 Wikipedia Link Aggregation和相关的频道绑定页面开始,以初步阅读绑定。
“绑定”(组合、中继或许多其他术语)NIC 用于增加交换机的带宽,或用于 LAN 连接的冗余。
WAN 连接(如到 Internet)的冗余和/或带宽扩展是通过路由协议(通常是 BGP)实现的。在服务器计算机上将 NIC 绑定在一起并不能实现这一点。
不,您不能使用绑定处理多个 ISP 上行链路。绑定严格来说是第 2 层(以太网)技术,无法检测上游故障或正确拆分超出直接以太网链路到上游交换机/路由器的流量。
Linux 可以在负载平衡(有限制)或冗余配置(或两者)中支持多个上游 ISP,使用基于策略的 IP 路由和多个路由表。这里有一个很好的理论和实践解释,带有图表:
但是,我不建议在生产环境中实施该教程。它非常原始,它会破坏您现有的特定于发行版的 IP 配置(网络脚本等),并且它不会自动处理上游故障。
Shorewall 项目 ( http://www.shorewall.net/ ) 提供了一种更容易和更易于管理的包装机制,尤其是在您还不是策略路由专家的情况下。它称自己为“防火墙”,但它可以严格用作多个 ISP 的负载平衡、故障转移处理网关。该项目有一个教程页面,其中概述了一些细节,这里:
Shorewall 与最流行的 Linux 发行版完美集成,并为 RHEL/CentOS、Fedora、Debian 和 OpenSUSE 积极维护软件包。
具体来说,Shorewall 提供了一组简化的、基于规则的配置文件,您可以根据需要对其进行编辑,以描述您的配置并实现所需的功能。它也有很多例子可以复制。
您可以通过多个 ISP 绑定,但也有很大的缺点。它涉及通过绑定服务器/集群跨您现有连接到单个 ISP 数据中心的隧道。然后你会使用这个 ISP 的 IP 传输到互联网和 IP 寻址等。
您的 LAN 将呈现一个完全路由的 IP 范围,并应对故障等,但缺点是:您仍然依赖单个 ISP 进行数据中心/IP 传输。然后,您将通过公共互联网进行绑定——这意味着您无法保证延迟等,如果您遇到问题,解决起来会困难得多。
与单个 ISP 的正常绑定显然有其缺点,但对我来说,与多个 ISP 进行的质量/支持/灵活性问题超过了它们。
您可以使用 DrayTek 2950 http://www.draytek.co.uk/products/vigor2950.html
将您的互联网线路/连接都插入它,然后在负载平衡模式或故障转移模式下运行它
希望有帮助