故障转移后 UDP 会话卡住
50676
Created On 11/30/20 02:01 AM - Last Modified 10/23/24 20:17 PM
Symptom
- 主链路发生故障后,未转发到备份链路的 UDP 流量。
- 备份出口接口将被忽略。
- 这可能是 PBF 规则或其他路由。
Environment
- 任何当前的 PAN 操作系统
- 双家庭配置。
- 出口接口的路径监视。
Cause
防火墙正在跟踪会话。
由于我们可以确定会话开始和会话结束,因此很容易跟踪 TCP 流量。
但是,在 UDP 上无法这样做。
对于 UDP,防火墙在第一个 UDP 数据包上创建会话,然后会话在会话 TTL 达到 0 时保持打开状态。 只要存在与该会话匹配的 UDP 流量,会话 TTL 将重置为默认值(默认情况下为 30 秒)。
由于会话由于连续传入数据包而未过期,因此无法清除会话,并且 UDP 流量被卡在错误的出口接口上。
Resolution
注意
:简单的解决方案是清除已卡住的 UDP 会话。
>会话所有筛选器协议 17
但是,不可能在每次发生故障时手动执行此操作。
下面显示的方法是利用 XMLAPI 清除会话。
因此,以下步骤将允许您在 PBF 发生故障时自动清除这些会话。 但是,对于静态路由上的路径监视失败,也可以进行类似的配置。
第 1 步 - 为 XML API 创建用户帐户
对于我们的用例,用户帐户至少需要具有"设备管理员"角色。- 转到设备>管理员
- 单击 "添加"。
- 输入用户帐户信息
- 创建帐户后,提交配置更改。
第 2 步。 生成 XML API 密钥。
- 使用 Web 浏览器,打开 URL
https://firewall/api/?type=keygen&user=username&password=password
- 将钥匙保留在记事本中,因为我们以后需要它。
第 3 步。 PBF 需要生成日志
- 确保 PBF 规则具有路径监视,因为我们将使用此日志触发操作。
- 在 PBF 规则上启用路径监视
步骤4。 查找要使用的日志
- 请注意,在系统日志中,PBF 的日志与筛选器"(子类型 eq pbf))一起可见
- 若要避免在短时间内清除多个会话,请使用筛选器
(子类型 eq pbf) 和 (描述包含 [下一跳是])
第 5 步 . HTTP 配置文件的配置。
- 转到设备> HTTP
- 单击添加
- 单击"添加"。
- 为服务器设置以下参数:
名称 : 任何名称 地址 : 本地主机 协议 : HTTP 端口 : 80 HTTP 方法 : 获取
- 单击有效负载格式。
- 单击系统(因为我们正在处理系统日志)。
- 在有效负载格式窗口中,设置以下值:
名称 : 任何名称 在参数中: 键 : 之前检索到的 API 密钥 类型 : 操作 厘米 : <clear> <session> <all> <filter> <protocol>17</protocol></filter></all></session></clear>
- 完成后,单击"确定"两次。
步骤6。 将 HTTP 配置文件应用于日志。
- 转到设备>登录设置
- 单击"添加"
- 为规则命名。
- 单击箭头展开筛选器选项
- 单击筛选器生成器。
- 在筛选器生成器中,可以粘贴筛选器"(子类型 eq pbf) 和 (说明包含 'nexthop 是 ')"。
- 单击 "确定"。
- 单击 HTTP 部分中的"添加"。
- 选择我们之前创建的 HTTP 配置文件
- 单击 "确定"。
- 单击提交。
步骤7。 验证
- 若要检查某些会话正在关闭,请检查流量日志并查找因未知原因结束的会话。
- 与系统日志相关。
Additional Information
管理员
指南获取 API
密钥配置日志转发