实验背景:
在建立可组建互联网时先组件骨干网,然后将各种ISP连接到骨干网上,最后我们的局域网在连接到骨干网上,就这样组成互联互通的大网!
1.局域网内部运行IGP协议来实现网络互通
2.局域网到ISP之间通过NAT转换
3.ISP到骨干网之间运行EBGP协议
4.骨干网之间运行IBFP协议互通
实验图:
实验步骤:
1.
首先为每一台路由器配置IP,在R1和R5上为回环口配置地址!
2
.在每一台路由器上开启bgp路由协议。将5台路由器划分为3个bgp 自治系统
router bgp 1 //自治系统1
bgp router-id 1.1.1.1 //自治系统1里R1路由器的标识
neighbor 12.1.1.2 remote-as 234 //起邻居R2
network 1.1.1.1 mask 255.255.255.255 //将路由表中信息添加到bgp路由表中
router bgp 234 //自治系统234
bgp router-id 2.2.2.2 //自治系统234里的R2路由器的标识
neighbor 12.1.1.1 remote-as 1 //起邻居R1
neighbor 23.1.1.3 remote-as 234 / /起邻居R2
router bgp 234 // 自治系统234
bgp router-id 3.3.3.3 //自治系统234里的R3路由器的标识
neighbor 23.1.1.2 remote-as 234 //起邻居R2
neighbor 34.1.1.4 remote-as 234 //起邻居R4
router bgp 234 // 自治系统234
bgp router-id 4.4.4.4 //自治系统234里的R4路由器的标识
neighbor 34.1.1.3 remote-as 234 //起邻居R3
neighbor 45.1.1.5 remote-as 5 //起邻居R5
router bgp 5 // 自治系统5
bgp router-id 5.5.5.5 //自治系统5里的R5路由器的标识
neighbor 45.1.1.4 remote-as 234 //起邻居R4
network 5.5.5.5 mask 255.255.255.255
注意:
在EBGP中传路由,下一跳改变
在IBGP中传路由,下一跳不变,且IBGP之间传递路由只能传递一跳。
导致的问题:
1.R2能学到R3的路由,但下一跳的地址错误
2.R2不能将R4的路由传递给R1
解决办法:
1.首先在IBGP中间起一个内部路由协议,如eigrp或osfp,让每个路由器相互之间能够学到彼此的路由。
2.在边界的路由器或在IBGP邻居上,将学的路由器的下一跳地址更改!
3.注意:IBGP之间,更改路由下一跳地址的前提是它们是邻居关系!
接着,在IBGP之间建立邻居关系:
在R2上添加:
neighbor 34.1.1.4 remote-as 234
在R4上添加:
neighbor 23.1.1.2 remote-as 234
接着就是修改路由的下一跳了,要在边界上修改只有一跳的。让运行IBGP的路由器能够学到路由
在R2上:
neighbor 23.1.1.3 next-hop-self
neighbor 34.1.1.4 next-hop-self
在R3上:
neighbor 34.1.1.4 next-hop-self
neighbor 23.1.1.2 next-hop-self
在R4上:
neighbor 34.1.1.3 next-hop-self
neighbor 23.1.1.2 next-hop-self