计算机网络BGP问题求助?

admin 2026-07-14 05:43:04 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文解答了BGP网络中iBGP邻居为何需中间路由器转发数据的问题。作者指出BGP基于TCP建立逻辑连接,数据包实际必须依赖物理路径转发。文章揭示了BGP作为路由表消费者与生产者的双重特性,若修改iBGP管理距离并通告建邻接口IP,将触发循环路由死锁,导致邻居周期性断连。建议读者通过实验理解该机制,并在网络规划时区分物理与逻辑拓扑。 综合评分: 81 文章分类: 网络安全,安全培训


cover_image

计算机网络BGP问题求助?

原创

车小胖谈网络 车小胖谈网络

车小胖谈网络

2026年7月13日 16:13 上海

在小说阅读器读本章

去阅读

这里R4与R2之间不是有iBGP连接吗?

为什么还要通过R3来转发?

这个拓扑图,对于初学者不太友好。既有物理连接,比如R1与R2之间是物理连接,采用的是粗实线。又有逻辑连接(虚拟连接),比如R4与R2之间的虚拟连接,采用的细虚线。

如果画2个拓扑图:

物理连接拓扑:用于描述Router之间的物理连接关系

虚拟连接拓扑:用于描述BGP之间邻居关系

概念就会清晰许多。

什么是物理连接?

用一根网线一端连着电脑,另一端连接路由器,这就是物理上的连接,简称物理连接

什么是逻辑连接/虚拟连接?

你用上文的电脑访问微信公众号平台,你的电脑与公众号服务器之间需要建立TCP连接,由于TCP连接是软件意义上的连接,故称之为软件连接、虚拟连接,即软件层面上的逻辑连接。

无论你一天与Internet上多少个服务器建立多少个TCP连接,但是你依然只有一个物理连接,假如该物理接口为eth0,所有TCP连接的建立数据传输连接拆除都必须从eth0进出。

写到这里基本上就回答你的问题。

有读者可能会很疑惑,这个问题明明是BGP相关,为何要扯到TCP连接?

不要忘记,BGP是建立在TCP连接上的,HTTP也是建立在TCP连接上的。

假设上文的电脑名称为R4,与它物理连接的是路由器名称R3,公众号服务器名字为R2。

R4(eth0)—– R3—– R2

那么R4与R2之间的TCP连接、BGP连接,是不是一定要经过R3的中继?

如果R3 down掉了,或者R4-R3,或者R3-R2之间的物理连接down掉了,R4与R2之间的TCP连接、BGP连接,也会很快超时断掉。

无论R4与R2之间交换了多少条BGP路由,其中也包括图中的X路由。

如果R4收到一个packet的目的地== X路由,查询路由发现:

BGP学习到的,即next-hop =R2

可是,如何将packet扔给R2呢?

扔给R3啊,因为R4与R2之间的通信,唯一的选择就是R3,因为只有这一条物理连接eth0。

这就是循环路由查找,也是这本书想传达的内容。

如果R4与R2之间有一条更高速的物理连接,那么R4与R2之间的流量就无需R3的中继了。

BGP路由协议,既是TCP/IP Routing table的consumer(TCP Socket),又是producer(Route Socket),一不小心就会循环路由查找死锁,造成通信障碍。

如果将BGP 的IBGP 的AD值从默认的200(cisco),修改成20。OSPF/isis保持默认的110/115。

BGP双方或者其中的一方,将建立BGP邻居的接口IP,用BGP adversied出去。180秒BGP邻居就会断掉,然后再建立,180秒再断掉….

有兴趣的读者可以做实验试一试,这是真正认识BGP路由协议consumer/producer双向人格!


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:车小胖谈网络 车小胖谈网络 车小胖谈网络《计算机网络BGP问题求助?》

评论:0   参与:  0