内容发布更新时间 : 2024/12/24 22:13:01星期一 下面是文章的全部内容请认真阅读。
local-as 伪装AS
no-prepend 向其他EBGP邻居通告前缀时不携带LOCAL-AS伪装过的AS号
replace-as 使用LOCAL-AS的隐藏真实的AS号,即在向外通告前缀是只携带LOCAL-AS伪装的AS号 dual-as 可以对等体一侧使用两个AS号与对端建立邻居关系不管那个邻居关系成立都可以,即对端可以指定本地真实的AS号来建立邻居,也可以指定LOCAL-AS伪装的AS号来建立邻居
r1#sh run | b r b router bgp 1
no synchronization
bgp log-neighbor-changes
network 1.1.1.0 mask 255.255.255.0 neighbor 12.1.1.2 remote-as 2 neighbor 13.1.1.3 remote-as 3 no auto-summary !
r2#sh run | b r b router bgp 2
no synchronization
bgp log-neighbor-changes
network 2.2.2.0 mask 255.255.255.0 neighbor 12.1.1.1 remote-as 1 neighbor 23.1.1.3 remote-as 3 no auto-summary !
r3#sh run | b r b router bgp 3
no synchronization
bgp log-neighbor-changes
network 3.3.3.0 mask 255.255.255.0 neighbor 13.1.1.1 remote-as 1 neighbor 23.1.1.2 remote-as 2 no auto-summar !
为使ISP2(R2)平滑过渡到ISP1(R1)而且又不要影响客户R3的数据流量。 第一步 在R1 和 R3之间建立 ISP 2 的邻居关系,使用以下命令: R1(ISP 1): router bgp 1
neighbor 11.11.13.3 local-as 2 (R1使用ISP 2的AS号与R3建立邻居关系) R3(客户AS):router bgp 3
neighbor 11.11.13.1 remote-as 2 (将原来所指的AS号由AS 1,改变成了伪装的 AS 2)
此时R3上的邻居关系: 未变之前:
改变之后:
但是做完此步后在R2 (ISP 2)上出现了问题,问题是由于R3和R1向R2通告时均携带了R2的AS 2 号,所以BGP 运用默认的EBGP基本防环机制将这些路由拒绝了。
在这里R2(ISP 2)可以采取Allowas-in 1 或者2的方法放宽对AS-PATH的限制,但此方法所要考虑的方面太多,又要防环又要对R1和 R3分别调整,所以太麻烦而且又容易出错。 所以可以在R1上采用No-Prepend的关键字来避免此种尴尬。 造成问题的起因及现象:
r2 注意此处是与以前相比有了很大的变化