Socket升级失败故障排除

Prev Next

概概览

Socket升级失败可能发生在各个阶段,从初始部署到计划维护窗口和手动升级。 及时理解和解决这些问题对于维护网络完整性至关重要。 以下是解决Socket升级失败问题的故障排除过程概览。

症状

  • 初始升级失败:发生在Socket部署期间。

  • 维护窗口问题:大量Socket未在计划维护期间升级。

  • 升级失败后建立的隧道:Socket升级失败,但隧道仍保持开启。

  • 升级后无法访问:Socket在升级后变得无法访问。

可能的原因

  • 连接性问题:由于互联网缓慢或MTU设置错误导致超时。

  • DNS解析失败:无法解析cc2.catonetworks.com。

  • 防火墙限制:具有SSL检查的防火墙。

  • 端口限制:WAN1/Port1限制。

重新安排自动升级

如果由于 ISP 链接不稳定导致升级被跳过,从而导致整个账户的自动升级被跳过,我们可以暂停自动升级为受影响的 Socket,并为下一个维护时间窗口重新安排自动升级。

问题解决后,我们可以手动升级有问题的Socket。

Socket升级失败故障排除

注意:

在开始故障排除之前,请务必了解Socket 升级在Cato中是如何工作的,您可以在以下文章中了解详情:了解Cato的托管Socket升级服务

Socket升级将在CMA中配置的维护时间窗口或初始部署期间进行。 本节将深入探讨解决Socket升级失败问题所涉及的步骤。 升级失败主要有三个可能的结果:

  1. 初始Socket升级在Socket部署期间失败。

  2. 尽管升级失败,隧道仍然保持开启并已建立。

  3. 隧道无法建立,并且Socket在升级失败后变得无法访问。

初始升级失败

当新部署或工厂重置的Socket首次连接到互联网时,它将持续尝试通过其WAN端口连接到Cato,并试图升级其固件版本。

要排除初始升级失败,请查看初始固件升级故障排除

升级失败后已建立隧道 

在维护窗口期间,Socket升级过程可能未成功,导致升级失败,阻止整个账户的其他Socket进行升级。 重要的是要识别失败的升级,并在安排新的维护窗口之前专注于升级这些Socket。

分析CMA事件

通过将子类型过滤为Socket升级并将操作过滤为未成功来查看与Socket升级相关的事件。

带有操作已跳过的事件可能表明在维护时间窗口期间Socket处于离线状态,或者不同的Socket未能升级(宽限期后没有打开隧道),导致所有剩余的Socket被跳过。 跳过操作的原因可以在事件消息中看到。 例如:

  • 已跳过升级。 在维护窗口期间主要Socket处于离线状态。

  • 已跳过升级。 已跳过此Socket的待处理升级,因为不同的Socket无法完成升级。

带有操作失败的事件表示尝试进行了Socket升级,但升级过程本身失败了。 失败操作的原因可以在事件消息中看到。

如果Socket在此失败后变得无法访问,请前往隧道在升级后无法建立。

通过关注带有操作失败的Socket继续故障排除过程。

升级过程中故障排除

在升级过程中,Socket将尝试下载固件镜像。 以下原因可能导致超时:

  • 无法正确解析cc2.catonetworks.com的DNS

  • 缓慢或不可靠的互联网连接阻止固件下载。

  • WAN接口上不正确的MTU设置。

为排除上述原因,请检查以下内容:

  • 使用WebUI中的Ping工具确认Socket可以通过隧道解析cc2.catonetworks.com。 如果FQDN无法解析,请检查WAN端口上的DNS设置。

  • 在网络分析中检查隧道在维护时间窗口期间是否出现数据包丢失。 如果是,请检查是否有最后一英里的数据包丢失,并将此问题报告给ISP。

  • Cato Sockets通过与PoP进行PMTUD(MTU发现)来确定隧道上允许的MTU。 然而,在WAN接口上手动设置MTU可能导致数据包分段和性能下降。 在WebUI中检查配置的MTU值。
     

升级后的故障排除

一旦固件已下载并安装到Socket上,Socket将进入宽限期(10分钟),期间将运行多个检查以确定新安装的版本是否稳定:

  • Socket进程正在运行。

  • Ping通过互联网工作到cc2.catonetworks.com、8.8.8.8和Facebook

  • 与PoP的连接已建立至少5分钟。

  • Socket和PoP之间至少有十次成功同步。

  • cURL通过隧道工作到cc2.catonetworks.com。

如果在宽限期间检查未成功,Socket将回滚到以前的版本,假设新版本不稳定。 确保Socket在升级完成后保持互联网访问10分钟。

执行Socket重启

在某些严重升级失败的情况下,重新启动Socket可能有助于在重新尝试固件升级之前恢复。 如果在升级失败后隧道仍然在线,可以通过WebUI下的管理选项卡进行远程Socket重启。

如果在升级失败后Socket无法访问,请访问升级后隧道无法建立。

手动Socket升级和重新安排

在维护窗口期间操作为已跳过的Sockets可以在Socket上线后从CMA手动升级。 操作为失败的sockets在尝试手动升级之前必须遵循上述故障排除步骤。 有关在CMA中手动升级的信息,请参见CMA手动升级。

对于大型账户,CMA手动升级可能需要很长时间才能完成。 在第一个维护窗口期间故障排除并升级第一个失败(操作为失败)的Socket,然后安排一个新的维护窗口,而不是手动升级每个Socket。 有关在CMA中重新安排维护时间窗口的信息,请参见重新安排升级进程。

如果升级过程在相同或其他Sockets上继续失败,请提交一个支持工单,并附上上述故障排除的结果。

升级后隧道无法建立

分析CMA事件

Socket升级事件操作为失败,事件消息为超出宽限时间后无打开的隧道,表示Socket升级期结束(17分钟)后,Socket被报告为离线。

现场人员需要在现场,并按照解决升级后不可访问的Socket中解释的步骤进行操作。

解决已发现的问题

CMA手动升级 

升级失败可能是由于瞬时连接性问题引起的,第二次尝试可能会成功。 要尝试新的Socket升级,手动从站点配置>Socket>操作>升级来启动升级。 请参见手动升级Socket

建议选择最新可用的固件版本,升级机制为“Cato Cloud 启动”。 手动固件升级启动17分钟后,CMA将显示“升级成功”通知,指示Socket在宽限期后报告成功升级。

解决升级后不可访问的Socket

现场人员需要遵循以下步骤:

注意:

在可能的情况下,联系Cato支持,通过控制台在重启Socket之前收集Socket日志文件。 这些日志对于根本原因分析至关重要。

  1. 收集控制台日志。 将控制台电缆连接到 Socket。 进入设备管理器 > 端口,并记录控制台电缆的 COM 端口。 打开 Putty 或类似的终端应用程序并使用以下参数。将控制台输出保存为文本文件以供将来调查。

    • 对于物理 Socket,此步骤必须在重启 Socket 之前完成,因为重启后 Socket 日志会丢失。

    • 对于 Azure vSockets,控制台日志可以从 Azure 的 VM > 帮助 > 引导诊断 > 串行日志 > 下载串行日志中获取。 这些日志最多收集 6 次引导。

  2. 重启。 如果隧道无法建立或在升级后 Socket 无法访问,下一步是重启。

  3. 解除分配并重新分配 Socket 到站点。 如果重启没有帮助开启隧道/Socket,请在 CMA 中解除分配 Socket。 如果检测到 Socket,几分钟后它将出现在 CMA 通知中。 将 Socket 分配回同一站点。  

  4. 重置 Socket。 如果没有 CMA 通知,下一步是将 Socket 恢复到出厂默认状态。 您可以按住 F/D 按钮 30-35 秒或执行 USB 重置来做到这一点。

    • 有关F/D 重置,请参阅重置 Socket。

    • 如果由于某种原因 F/D 重置未成功,您可以执行USB 重置。 请参阅以下文章以了解如何对相应的 socket 型号执行 USB 重置:
      - X1500
      - X1500B
      - X1600
      - X1700
      - X1700B

  5. 联系支持。 提交收集到的控制台日志到支持部门,并请求启动RMA流程以更换Socket。 如果以上所有步骤都已执行且未成功,我们建议启动此流程。

向 Cato 支持提交问题

提交支持工单,附上上述故障排除步骤的结果。 请在工单中包含以下信息:

  • 受影响的 Socket 的详细信息和整体影响。

  • 相关的 CMA 事件和通知显示 Socket 升级失败。

  • 手动升级和维护窗口重新安排的结果。

  • 如果 Socket 无法访问,所收集的控制台日志。