Junos:策略声明和 AS-Prepends

网络工程 bgp 瞻博网络
2021-08-02 04:44:40

我正在尝试创建一个策略声明,在将本地路由广告给一个新的上游传输提供商之前(假设它是 AS1234)在本地 AS 编号之前添加 5 次(不需要通过这个上游的入站流量)。MED 和社区在此处不可用(并且超出了此问题的范围)。我最初写的策略是这样的;

  policy-statement PS-AS-Prepend-x5 {
     from {
         route-filter 0.0.0.0/0 orlonger;
     }
     to protocol bgp;
      then {
          as-path-prepend "1234 1234 1234 1234 1234";
          accept;
      }
  }

  protocols {
      bgp {
        group new-upstream {
        type external;
        export [ PS-AS-Prepend-x5 ];
      }
  }

上游有一个镜子,我可以在上面看到,当执行类似于“show ip bgp prefix/mask”的操作时,他们只能看到通往这条路由的路径中的一个 AS(以及所有通告的路由)。我将政策声明更改如下;

  policy-statement PS-AS-Prepend-x5 {
     to protocol bgp;
      then {
          as-path-prepend "1234 1234 1234 1234 1234";
          accept;
      }
  }

重置 BGP 会话后,与之前相同的行为仍在发生,没有前置。我的问题有两个;

  1. 您需要在政策声明中使用“from”子句吗?我在原始语句中使用了 0/0,因为只宣传了本地前缀,因此我没有将它们全部写出来,而是使用 0/0 来匹配它们。我一直在搜索在线文档,但没有找到任何确定的内容。这就是为什么删除“from”子句以尝试以这种方式匹配所有前缀的原因。我也尝试过,to protocol bgp但这也失败了。

  2. 我现在怀疑策略语句的语法不是问题,所以我的第二个问题是您能否在 JUNOS 中将自己的 AS 预先添加到 eBGP 对等体的广告中?

更新

me@r1# run show route advertising-protocol bgp 11.22.33.44 detail 

inet.0: 471821 destinations, 512598 routes (471815 active, 0 holddown, 12 hidden)
* 123.0.0.0/8 (3 entries, 1 announced)
 BGP group new-upstream type Externa
     Nexthop: Self
     AS path: [1234] I
     Communities: 1234:1234
1个回答
  1. 您需要在政策声明中使用“from”子句吗?

不,你没有。如果没有“from”类,一切都会匹配。

  1. 您可以在 JUNOS 中将自己的 AS 预先添加到 eBGP 对等方吗?

是的,当然可以,这是完成 AS 前置的典型方式。

所以真正的问题是:为什么这不起作用?我不确定的一件事是to protocol bgp声明,我从未在策略中使用它来预先准备。最好的办法是通过检查您正在宣传的内容来验证您是否真的预先准备:show route advertising-protocol bgp aaa.bbb.ccc.ddd detailaaa.bbb.ccc.ddd对等 IP在哪里