大约三个月前,我们的网络中开始出现一种奇怪的现象。
首先,让我描述一下网络布局(仅我认为我可以透露的细节):
- 我们有一个路由器,可以通过互联网与我们客户的网络建立 VPN 连接。
- 检查点用于 VPN 连接
- 我不知道路由器的具体型号。但我们的 IT 管理员将其称为“诺基亚防火墙”
- 工作站将其网关设置为路由器的 IP 地址,这样它们就可以访问互联网和 VPN。
那么问题来了:
大约四个月前,Linux 工作站间歇性失去互联网和 VPN 连接。 Windows 工作站不会发生这种情况。该问题似乎只困扰在 Linux 上运行的系统。
我们可以看到数据包被发送到网关,但没有收到响应。这持续大约 3-5 分钟,然后重新建立互联网和 VPN 连接。我们看不到这一事件的任何规律。上述问题每隔几秒到几小时就会重复出现。
为了排除 Linux 工作站的问题,我们尝试将其中几个工作站切换到不同的网关。普通路由器(我们称之为 GateWay-B)。使用不同的网关时不会出现此问题。
我做的一件事是设置 IP 表,以便:
- 所有通过 VPN 绑定到工作站的数据包均使用“Nokia/checkpoint”网关
- 所有其他数据包使用另一个网关;网关-B。
有了这个,我不再失去互联网连接。但是,VPN 连接仍然时断时续。
问题:
有谁知道问题是什么?网关是否可以确定传入数据包来自的操作系统?
答案1
这听起来像是潜在的一些 arp 缓存混乱。
一种可能性是,如果“诺基亚防火墙”是高可用性 (HA) 对的一部分,则可能会发生一些故障转移或负载平衡事件。如果存在一对 HA,并且其中一个成为活动防火墙,则 Linux 工作站可能会由于不正确的 arp 缓存条目而继续向错误的防火墙发送请求。
下次失去与 VPN 站点的连接时,您可以轻松地进行测试。确保 Linux 工作站已iproute
安装该软件包。执行ip neigh flush dev eth0
(替换正确的接口)。这将暂时清除 arp 缓存,直到它重新填充,可能会使用正确转发流量的防火墙的硬件地址。
如果您可以辨别哪个硬件地址正在正确转发流量,则可以将其添加为静态 arp 映射(尽管这可能会破坏防火墙执行的任何 HA 或负载平衡)。
最终,应该向负责维护和配置防火墙的小组指出这一问题,以便解决该问题。