用环回口建邻居
⑴ 环回接口的创建环回接口的原因
用来建立路由邻居
我们知道路由协议要想正常运行,大多需要先建立邻居关系,邻居关系的稳定是路由计算正确的基石。实际运用中,常常使用环回接口来建立两个路由器之间的邻居关系,例如BGP协议。比起使用物理接口建立连接,使用环回接口可以使邻居关系更加牢固,因为就算某个物理链路和接口发生了故障,只要能从其他途径访问到该设备,那么邻居关系就不会中断。 用来作为Router-ID
在常用的OSPF、BGP等路由协议中,都有Router-ID的概念,这相当于一台路由器的身份证号,在一个指定的范围(如一个自治系统)内唯一标识一台设备,不能有重复。因为环回接口的稳定性,我们常使用一个环回接口地址来作为Router-ID,使整个设备的标识稳定可靠。
使用环回接口作为Router-ID还有一个好处就是可以节省地址,因为环回接口的地址一般和业务地址没有关系,是独立规划的。 用于虚拟隧道连接
在建立IPSec或GRE之类的虚拟隧道时,使用loopback接口可以保证整个隧道的稳定性。 用于网络连通性测试
创建并配置好环回接口之后,它的地址是能被ping或telnet的,这就可以被用来测试网络的连通性。 在Cisco路由器中可以使用interface loopback命令来创建它。
注意:启动OSPF路由选择进程时会选择OSPF的路由器ID。这发生在手动执行了router ospf命令或者在启动过程中加载路由器配置时。因此,如果在启用了OSPF之后再创建环回接口,那么该环回接口将不会被用作路由器ID;然而,如果重新启动路由器,默认将使用环回接口。因此,建议优先创建环回接口并先给它分配IP地址,然后再启用OSPF,这样可以消除关于路由器ID的困惑。
以下为配置环回接口的指令:
Router(config)#interface loopbacknumber
⑵ BGP建立邻居为什么要做更新源呢
因为bgp邻居建立是基于tcp连接的,必须有本端地址和对端地址。指定更新源,实际就是指定发出open包的源地址,也就是tcp连接的本端地址。
举个例子:
RTA直连RTB,网段12.1.1.0/24。RTA环回口1.1.1.1/32,RTB环回口2.2.2.2/32。as都为1。
如果直接RTA neighbor 2.2.2.2 remote-as 1
RTB neighbor 1.1.1.1 remote-as 1
因为没有指定更新源,就像发icmp包一样,bgp默认会用出口地址作为源,也就是RTA的open包源为12.1.1.1,RTB的open包源为12.1.1.2。
这样:对于RTA,我要跟2.2.2.2建邻居,却收到了12.1.1.2的open包,我当然不理它;对于RTB同理,邻居建不起来。
下面这点很多人都不知道,就是只要有一台路由器做了update-source loopback0,邻居就能构建成功。因为bgp邻居只建立一条tcp连接。
比如:RTB neighbor 1.1.1.1 update-source loopback0
这样RTA要跟2.2.2.2建邻居,而且也收到了2.2.2.2的open包,tcp连接构建成功,bgp邻居建立。
至于RTB收到的open包,并不是它想建的邻居,毫无影响。
及时双方都做了update-source loopback0,show tcp brief也可看到,只会构建一条tcp连接。
这样说你应该能明白了吧?
⑶ 华为设备BGP采用的环回口IP地址建立邻居后为什么不是最优和有效的
建立邻居就是建立邻居啊,你只是查看状态的时候能看到邻居已经建立,版你要发布路由啊权。还有路由优先级,了解一下
DIRECT 0
OSPF 10
IS-IS 15
STATIC 60
RIP 100
OSPF ASE 150
OSPF NSSA 150
IBGP 256
EBGP 256
UNKNOWN 255
⑷ 为什么bgp使用环回口制定邻居关系
用环回口建立邻居可以使的邻居关系更稳定,因为如果是接口建立,一出现接口动荡就会影响邻居关系,用环回口会一直在。环回口还可以使链路有冗余。
⑸ 求教bgp问题,不胜感激!
1、R3,ping R1 ETH1失败,应该是R1上没有到R3 E0口网段的回程路由,你需要在R2的bgp进程中发布。
2、关于sh ip route,看不到1.1.1.1/32路由,原因应该是你没有在AS200中关闭同步。在同步打开状态下,R3从IBGP邻居R2处学到的路由,必须要在AS200内的igp路由表中发现才可以。显然,你AS200内的igp中没有这条路由,所以,你要关闭同步功能。
3,需要在R2/R3上关闭同步
补充:
1、需要你在R2的bgp进程中network 3.3.3.0这条路由。
2、你在R1上配置的静态路由岂不是多余?
⑹ BGP建立邻居时应考虑的问题
我个人觉得,在EBGP建立邻居的时候没有什么特别的地方要注意的专,只是如果你有很多个EBGP邻居或者是每个EBGP邻居之前有拉多条线做冗余的话那么要注意点,可以使用PEER-GROUP来对简化建立多个邻属居,如果有做冗余那么肯定是要用环回接口做更新源,并且要设置EBGP多跳属性。之后就没有什么了。在IBGP建立邻居的时候要注意的东西就对一点,首先IBGP邻居肯定是需要全互联的,因为AS_PATH属性不会在AS内增加……增加了也没有任何意义,这样AS内就没有办法防环了,所以需要全互联。如果不想全互联那么也是有相应的办法的,可以使用RR或者是联盟。当然当网络环境够大的时候肯定是两个都要用啦,还有就是建议关闭IBGP的同步功能,不然是会有很多麻烦的…………。最重要的是千万不要忘记设置下一跳自我属性,还有就是更新源设置成环回增加稳定性。
⑺ bgp邻居关系的建立
BGP的TCP报文发送方式默认是采用两台ROUTER互连的物理接口,如果指定了LOOPBACK口的话那回就采用LOOPBACK口来发送TCP报文和对等体答建立BGP的邻居关系。
另外需要注意的是,BGP并不能主动在网络中寻找邻居,必须手工指定BGP邻居的地址,那么BGP才会将数据包发往指定的地址来请求建立邻居,与此同时,BGP发出的请求数据包除了写明目标IP地址外,还要写上自己的IP地址,即BGP源地址。
当一台BGP路由器收到建立邻居的请求后,如果发现数据包的目标IP不是自己的BGP源地址,那么就拒绝该连接请求,只有当请求数据包的目标IP与自己的BGP源地址相同时,才可建立BGP邻居。
需要注意的是,这个条件只在两个邻居之间,任意一个邻居满足条件即可,并不需要双方都满足,也就是说一方收到的数据包目标IP与自己的BGP源地址相同即可,另一方收到的数据包目标IP与它的BGP源地址不同也没关系,只要单方面符合条件就行,但我们通常都将BGP两端的源与目标保持一致。
BGP的源地址是可以随意更改的,但只能是路由器上的接口地址。
⑻ 为什么在BGP中在建立EBGP对等体是要加上一条多跳的命令
EBGP建立邻居的tcp包TTL值是1
当EBGP使用环回口建立邻居时,数据包达到对端邻居的直连接口时因为TTL值要减去1,导致数据包的TTL=0结果被丢弃,这样就无法达到对端邻居的还回口,致使邻居状态一直处在active状态
⑼ 用环回口建立EBGP要到达对方的路由吗
EBGP领居默认只有1跳,除了要有到达对端环回口的路由以外,EBGP邻居多跳也的配置,所以说就算有到达对端环回口路由不配EBGP多跳也没用,那个单向领居起的有什么用呢?
⑽ 为什么必须在 LAN 接口和环回接口上禁用 OSPF 更新。
Passive-interface 在距离矢量路由协议只监听不发送
在高级距离矢量路由协议不监听不发送不建立邻居关系
在链路状态路由协议不监听不发送不建立邻居关系
没有必须只是在必要的环境下减少数据流防止路由器环路还有就是在重发布路由条目过大可以用静态路由+Passive-Interface的方式来减少路由更新因为被动接口在OSPF不会建立邻接关系所以要把不用建立邻居关系的端口关闭只保留建立邻居端口的接口