我搜索了很多有关该问题的内容,但找不到适合我的情况的解决方案。
我们有一台运行 Advantage Database Server (ADS) 的 Windows 2003 服务器,我们的网站通过它连接到我们的会计系统。该网站连接到静态 IP 82.xxx.xxx.147,运行多个查询并断开连接。每 5 分钟执行一次。服务器有 2 个 NIC - 一个用于网站 (192.168.5.1),另一个用于本地网络 (192.168.0.1)。服务器通过 ADSL 调制解调器/路由器 (LAN IP 192.168.5.9) 连接到互联网,路由器的 NAT 配置为将端口 45677 转发到服务器。
一切都很顺利,除了一件事 - 互联网连接不够稳定。因此,我们获得了另一个 ADSL 连接,IP 地址为 178.xxx.xxx.181,并将该端口转发到服务器。第二个调制解调器/路由器的 LAN IP 是 192.168.5.3。
我们的站点正在检查 IP 地址 82.xxx.xxx.147,如果没有响应,它会尝试另一个 IP 178.xxx.xxx.181。但是它没有连接。看起来服务器拒绝了来自第二个路由器的连接。
我尝试在服务器网卡的高级 TCP/IP 设置中将第二个路由器的 IP 192.168.5.9 添加为第二个网关。但这没有用。
我知道,这与路由有关,但我无法理解那些掩码、指标、网关 IP 中的任何内容。这对我来说太难了。
我不希望服务器使用任何网关来访问互联网(浏览器和其他服务)。我只希望它从固定端口号接收来自两个网关 IP 的传入连接。这可能吗?
答案1
除非我误解了你的设计,否则我相信可以用更少的歧义来描述:
因此,您的站点拥有非常好的互联网连接。它连接到互联网上负责您的会计工作的另一个地方。由于互联网正常运行时间较差,这个地方有两个互联网连接,每个连接一个公共地址。这两个公共地址都应该可供您的站点使用,以便在其本地地址上访问您的会计系统。会计系统只有一个活动的默认路由,该路由指向其互联网连接路由器中的一个,但不是两个。它不知道路由器的状态。
您可以将冗余设备配置为 HA 对,并使用(例如)内部 VRRP 设置为在外部链路丢失时进行故障转移并支持双 WAN,如另一个答案中所述。
或者执行源地址重写(又称为源 NAT 或 snat),这样您的服务器就会认为客户端是本地地址而不是远程地址。因此,它不会使用其默认路由与您的站点进行通信,而是使用您的任一 snat 路由器接口(流量来自 192.168.5.3 或 192.168.5.9)。这假设您的路由器能够对传入连接进行 snat。
如果它们不能,您可以配置可以实现此目的的中间设备(每个路由器一个,默认路由就是这样)。负载平衡器通常使用此技术来短路内部服务器原本要使用的默认路由,而不是通过通常需要的负载平衡器进行回复。
因此,如果你的路由器不能胜任这项任务,你可能会廉价的负载均衡器或使用免费软件(一个链接中有两个解决方案)作为中介。或者使用最先进的东西,但不知为何,这似乎并不是那样的情况。
答案2
您需要一个通过 2 个冗余路由器(具有 2 个 WAN 接口)接受传入请求的服务器。这是典型的 HSRP/VRRP 设置。一个路由器将作为 HSRP 活动路由器运行,即传入和传出流量的主要 WAN。第二个路由器将作为 HSRP 备用路由器运行。有两种情况会使备用路由器成为活动路由器,一种是活动路由器关闭,并且不响应备用路由器,另一种是活动路由器由于其 WAN 链路关闭而降低其优先级。现在,关于默认网关,为了工作,HSRP 为您提供了一个虚拟默认网关 IP 地址,您将在服务器上配置该地址,这使得双路由器设置对服务器透明,即服务器不知道有 2 个路由器正在运行,因为它始终使用虚拟 IP 地址作为其默认网关。HSRP 活动路由器始终响应虚拟 IP。在您的路由器上查找 HSRP/VRRP 支持。还请检查 VRRP RFChttp://tools.ietf.org/search/rfc5798。