Junos:如何更改辅助节点的 BGP MED?

网络工程 BGP 杜松-朱诺斯
2022-03-03 16:31:08

我有 vSRX 集群,它通过 IBGP 宣布一些受保护的地址。每个节点与两个路由器有两个会话。(为此,我使用 ge-0/0/1 和 ge-7/0/1)。

我发现如果发生故障转移,并且 node1 成为主节点,由于使用集群结构传输将数据从 node0 发送到 node1,会产生额外的延迟。

我想让来自 node1 的会话更可取(通过减少 MED)。但我想根据冗余组当前为主的节点使其自动化。

如何将 (?) MED 属性与 RG 放置相关联?

1个回答

我首先要回应 Ron Maupin 的评论,即 MED不是在您描述的环境中通过 iBGP 会话实现您的目标的正确属性。相反,您应该在较少首选的链路上配置更高的 IGP 成本(如果一个节点的上行链路始终是所有网络的首选)或使用本地首选项。

但是,如果必须使用 MED,则可以进行如下配置。请注意,我们正在匹配我们希望 MED 值为 10 或 20 的路线。如何匹配适当的路线取决于您;这只是一个例子。

policy-options {
  policy-statement BGP-export-node0 {
    /* match routes for traffic that should arrive via node0 */
    term set_med_node0 {
      from {
        interface [ ge-0/0/0 ge-0/0/2 ge-0/0/3 ];
      }
      /* set MED to 10 */
      then metric 10;
    }
    /* higher med on the other routes */
    term set_med_node1 {
      from {
        interface [ ge-7/0/0 ge-7/0/2 ge-7/0/3 ];
      }
      then metric 20;
    }
  }
}

创建一个反向策略BGP-export-node1并反转您匹配的内容。

在 BGP 导出策略的开头添加这些术语。您现在需要针对与每个节点的上行链路相关的 BGP 会话使用不同的导出策略,例如:

protocols {
  bgp {
    group node0_uplinks {
      export BGP-export-node0;
      ...
    }
    group node1_uplinks {
      export BGP-export-node1;
    }
  }
}