大小型网络构建-BGP加实验验证

BGP

-定义 -概述 -原理 #建立邻居表 #同步数据库 : *network {精确的路由条目} *import-route {protocol} BGP数据库中每个条目的状态,必须是: > , 表示的是“best -- 最好的”。 1.尝试着放入自己的路由表; 2.发送给自己的 BGP 邻居; #计算路由表

#-报文

			open :包含BGP建立邻居时需要协商的参数
		 update:包含的是 BGP 路由条目 
		 keep-alive : 用于周期性的发送,维护邻居关系;
		 notification : 通知报文。用于通知报错信息

BGP的结构和功能

		#BGP用于在不同的自治系统(AS)之间交换路由信息。当两个AS需要交换路由信息时,每个AS都必须指定  一个运行BGP的节点,来代表AS与其他的AS交换路由信息。这个节点可以是一个主机。但通常是路由器来执行BGP。两个AS中利用BGP交换信息的路由器也被称为边界网关(Border Gateway)或边界路由器(Border Router)
		#由于可能与不同的AS相连,在一个AS内部可能存在多个运行BGP的边界路由器。同一个自治系统(AS)中的两个或多个对等实体之间运行的BGP 被称为 IBGP(Internal/Interior BGP)。归属不同的AS的对等实体之间运行的BGP称为EBGP (External/Exterior BGP)。在AS边界上与其他AS交换信息的路由器被称作边界路由器(border/edge router)。在互联网操作系统(Cisco IOS)中,IBGP通告的路由的距离为200,优先级比EBGP和任何内部网关协议(IGP)通告的路由都低。其他的路由器实现中,优先级顺序也是EBGP高于IGP,而IGP又高于IBGP。
		 #BGP属于外部网关路由协议,可以实现自治系统间无环路的域间路由。BGP是沟通Internet广域网的主用路由协议,例如不同省份、不同国家之间的路由大多要依靠BGP协议。BGP可分为IBGP(Internal BGP)和EBGP(External BGP)。BGP的邻居关系(或称通信对端/对等实体)是通过人工配置实现的,对等实体之间通过TCP(端口179)会话交互数据。BGP路由器会周期地发送19字节的保持存活keep-alive消息来维护连接(默认周期为30秒)。在路由协议中,只有BGP使用TCP作为传输层协议。

BGP peer :

IBGP 邻居 EBGP 邻居 #通过直连端口建立邻居; -- 不太稳定; #通过非直连接口建立邻居;-- 非常稳定; * “更新源检测”机制 - IBGP 与 EBGP 都需要考虑 * “直连检测机制” - 仅仅当建立非直连的EBGP 邻居时,才需要考虑。 即 EBGP 邻居建立时,两个路由器之间必须使用 直连的物理接口的IP地址; (1.ebgp邻居之间的报文的 TTL 为1;) (2.直连检测机制:去往对方的地址时) ( 必须使用“直连路由”。)

R1的配置
undo ter mo
system-v sysname R1 interface loopback 0 ip address 10.10.1.1 255.255.255.255 q interface gi0/0/0 ip address 192.168.12.1 255.255.255.0 q

R2的配置
undo ter mo system-v sysname R2 interface loopback 0 ip address 10.10.2.2 255.255.255.255 q interface gi0/0/1 ip address 192.168.12.2 255.255.255.0 q inter gi0/0/0 ip address 192.168.23.2 255.255.255.0 q

R3的配置
undo ter mo system-v sysname R3 interface loopback 0 ip address 10.10.3.3 255.255.255.255 q interface gi0/0/1 ip address 192.168.23.3 255.255.255.0 q inter gi0/0/0 ip address 192.168.34.3 255.255.255.0 q

R4的配置
undo ter mo system-v sysname R4 interface loopback 0 ip address 10.10.4.4 255.255.255.255 q interface gi0/0/1 ip address 192.168.34.4 255.255.255.0 q inter gi0/0/0 ip address 192.168.45.4 255.255.255.0 q

R5的配置
undo ter mo system-v sysname R5 interface loopback 0 ip address 50.50.50.50 255.255.255.255 q interface gi0/0/1 ip address 192.168.45.5 255.255.255.0 q

~~~~~~~~~~~~~~~~~ AS 234 内部配置 ~~~~~~~~~~~~~~~~~

1.配置IGP=RIP ;

R2: rip version 2 network 192.168.23.0 network 10.0.0.0 q

R3: rip version 2 network 192.168.23.0 network 192.168.34.0 network 10.0.0.0 q

R4: rip version 2 network 192.168.34.0 network 10.0.0.0 q

2.BGP的配置: 非直连的IBGP邻居关系 - R2<--->R4

R2: bgp 234 router-id 2.2.2.2 peer 10.10.4.4 as-number 234 peer 10.10.4.4 connect-interface loopback 0

R4: bgp 234 router-id 4.4.4.4 peer 10.10.2.2 as-number 234 peer 10.10.2.2 connect-interface loopback 0

~~~~~~~~~~~~~~~~~~~ AS 234 与 AS 500 ~~~~~~~~~~~~~~~

1.BGP的配置 : R4--R5 之间的“直连” EBGP

R4: bgp 234 peer 192.168.45.5 as-number 500

R5: bgp 500 router-id 5.5.5.5 peer 192.168.45.4 as-number 234

2.R5通过 Network的方式宣告路由 bgp 500 network 50.50.50.50 255.255.255.255

~~~~~~~~~~~~~~~~~ AS 234 与 AS 100 ~~~~~~~~~~~~~~~~~~~

1.创建loopback 12 ,用于建立 非直连的 EBGP 邻居关系

R2: interface loopback 12 ip address 10.12.12.2 255.255.255.255 quit ip route-static 10.12.12.1 255.255.255.255 192.168.12.1

R1: interface loopback 12 ip address 10.12.12.1 255.255.255.255 quit ip route-static 10.12.12.2 255.255.255.255 192.168.12.2

2.创建 非直连的 EBGP 邻居关系:

R1: bgp 100 peer 10.12.12.2 as-number 234 peer 10.12.12.2 connect-interface loopback 12 peer 10.12.12.2 ebgp-max-hop 20

R2: bgp 234 peer 10.12.12.1 as-number 100 peer 10.12.12.1 connect-interface loopback 12 peer 10.12.12.1 ebgp-max-hop 20

3.在 R1 上通过 import-route 的方式宣告路由

R1: bgp 100 import-route direct ->宣告 10.10.1.1/32进入BGP;

~~~~~~~~~~~~~ AS 100 与 AS 500 之间的路由传递 ~~~~~~~~

在接下来的配置命令之前,应该首先去查看 :

display bgp routing-table ->查看BGP的数据库

R2 上面的 BGP 数据库中的 50.50.50.50/32的状态,不优; R4 上面的 BGP 数据库中的 10.10.1.1/32 的状态,不优;

原因: 1. 对于 R2 的 BGP 数据库中的 50.50.50.50/32 而言, 它的下一跳IP地址: 192.168.45.5 ,是路由不可达的;

2. 对于 R4 的 BGP 数据库中的 10.10.1.1/ 32 而言,
   它的下一跳IP地址: 10.12.12.1 ,是路由不可达的;	 

解决办法:

1.在 R4 做配置: 
    rip 
      import-route direct ->目的是为了引入 192.168.45.0/24		
  
2.在 R2 做配置:
    rip 
	   import-route static ->目的是为了引入 10.12.12.1/32