设为首页 收藏本站
查看: 1223|回复: 0

[经验分享] Cisco OSPF 总结 (1)

[复制链接]

尚未签到

发表于 2018-7-11 09:47:22 | 显示全部楼层 |阅读模式
  声明:通过本文你将了解到OSPF的一些基本理论知识和基本配置方法,如有错误的地方还请指出。  文章部分资料出自思科官网以及《TCP/IP路由技术(第一卷)》。
OSPF基本简介  

  OSPF 全称:Open Shortest Path First , 即:开放式最短路径优先。该协议是工作在IP网络层的一套内部网关路由协议,最先由IETF(互联网工程任务小组)开发,该协议在 RFC 2328 中有定义。
  OSPF是一套基于链路状态的路由协议,什么是链路状态?我们可以认为,一条链路是从路由器的一个接口出发的,而该链路的状态是接口的描述信息和该链路所连邻居的信息。一个接口的描述信息包括IP地址、掩码、网络类型、邻居状态等。这些描述信息构成了所谓的链路状态,而OSPF会同步这些链路状态,这些同步信息也就是所谓的链路状态数据库。
  OSPF路径算法
  OSPF的选路结果是使用Dijkstra的SPF(路径优先算法)所产生的 ,该算法本身是相当复杂的,我们并不对其进行讨论,我们只关注OSPF的选路过程。OSPF初始化时会收集自己的所有链路状态,并生成生成链路状态通告。所有的路由器使用组播地址洪泛交换链路状态。每个路由器接收链路状态更新后将其存储在其链路状态数据库副本,然后更新到到其他路由器。在每个路由器数据库建成后,路由器计算出到达所有目的地的最短路径树。路由器使用Dijkstra算法,以计算最短路径树。最后通过对比所有计算结果,将最优路径添加到路由表中。 在OSPF网络中如果拓扑没有发生变化,OSPF的应该是很安静。如若发生变化,该路径将通过Dijkstra算法重新计算,以寻找最短路径。该算法的结果将是每个路由器都有自己独立的链路状态树,但是他们都使用同一个链路状态数据库来计算。
OSPF的Cost

  OSPF的开销与数据流向方向所途径的所有接口的带宽有关,其关系是成反比的,带宽越大开销越小,开销越小路由越优先。计算公式是 Cost= 100000000bit/bandwith 。例如在T1链路中,链路带宽是1.544M 则Cost为100000000/1544000 ≈ 64.
OSPF区域类型和路由类型

  OSPF是有区域的,主要有两大区域:骨干区域和非骨干区域。OSPF非骨干区域之间必须铜鼓骨干区域才能实现同步链路状态数据库。骨干区域就是所说的area 0 域。
  OSPF路由类型:
  · 内部路由器(Internal Router)——是指所有接口都属于同一个区域的路由器。
  · 区域边界路由器(Area Border Routers,ABR)——是指连接一个或多个区域到骨干区域的路由器,这些路由器负责不同区域间的通信。因而ABR路由器总是至少有一个接口是属于骨干区域的,而且必须为被一个与之相连的区域维护不同的链路状态数据库。ABR路由器会汇总与它相连的区域的拓扑信心给骨干区域,然后将这些汇总信息传给其他区域。
  ·骨干路由器(Backbone Router)——是指至少有一个接口是和骨干区域连接的路由器。这个定义意味着ABR路由器也可以是骨干路由器,但是并不是所有的骨干路由器都是ABR。
  ·自治系统边界路由器(Autonomous System Boundary Router,ASBR)——可以认为是OSPF域外部的通信信息进入OSPF域的网关路由器,也就是说,ASBR路由器是用来把其他路由协议学习到的路由通过路由重发布的方式注入到OSPF域的路由器。一台ASBR路由器可以是位于OSPF域的自治系统内的任何路由器,它可以是一台内部路由器、骨干路由器或者ABR路由器。
  OSPF的网络类型以及邻居建立

  OSPF的网络类型一共有5类,分别为:Point-to-point(点到点)、Point-to-multipoint(点到多点)、Point-to-multipoint nonbroadcast(点到多点非广播)、Broadcast(广播)、NBMA(非广播多路可达)接下来我们将在帧中继网络中分别配置实现这些类型。拓扑如下:
DSC0000.jpg

  · 一、 点到点网络类型(P2P)
  首先我们来实现点到点,用R1和R2来实现,基本配置如下:
  R1:
  interface Serial1/2
  ip address 123.1.1.1 255.255.255.0
  encapsulation frame-relay
  ip ospf network point-to-point
  no arp frame-relay
  frame-relay map ip 123.1.1.2 102
  no frame-relay inverse-arp
  router ospf 1
  router-id 11.11.11.11
  network 123.1.1.0 0.0.0.255 area 0
  R2:
  interface Serial1/2
  ip address 123.1.1.2 255.255.255.0
  encapsulation frame-relay
  ip ospf network point-to-point
  no arp frame-relay
  frame-relay map ip 123.1.1.1 201
  no frame-relay inverse-arp
  router ospf 1
  router-id 22.22.22.22
  network 123.1.1.0 0.0.0.255 area 0
  OSPF在帧中继中的默认网络类型是NBMA,所以我们要在接口下使用ip ospf network 来更改网络类型。上面的router-id用来指定OSPF的RID,network 123.1.1.0 0.0.0.255 area 0 用来宣告网段。上面命令配置后我们会发现OSPF的邻居并没有建立起来,但是我们的接口是可以Ping通的,如下:
  R2#ping 123.1.1.1
  Type escape sequence to abort.
  Sending 5, 100-byte ICMP Echos to 123.1.1.1, timeout is 2 seconds:
  !!!!!
  Success rate is 100 percent (5/5), round-trip min/avg/max = 60/86/124 ms
  我们Debug一下看看,命令:debug ip ospf events 结果如下:
  R2#debug ip ospf events
  OSPF events debugging is on
  R2#
  *Mar  1 00:14:29.659: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.2
  *Mar  1 00:14:39.663: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.2
  *Mar  1 00:14:49.667: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.2
  *Mar  1 00:14:59.671: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.2
  *Mar  1 00:15:09.675: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.2
  *Mar  1 00:15:19.679: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.2
  *Mar  1 00:15:29.683: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.2
  *Mar  1 00:15:39.687: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.2
  我们发现OSPF的Hello包是通过组播地址224.0.0.5来发送的,再看看我们上面的帧中继配置
  frame-relay map ip 123.1.1.1 201
  这样的配置广播包和组播包是不能发送出去的,我们更改为 frame-relay map ip 123.1.1.1 201 broadcast 试试:
  此时我们再到R1上查看邻居:
  R1#sho ip ospf neighbor

  Neighbor>  22.22.22.22       0   INIT/  -        00:00:39    123.1.1.2       Serial1/2
  邻居处在INIT状态,原因是因为我们只能收到HELLO包,但是我们的包对方不能收到也就不能给予回应。我们在R1上也配置
  frame-relay map ip 123.1.1.2 102 broadcas
  配置完成后邻居马上处于FULL状态,说明邻居建立成功了。我们来看看整个过程:
  *Mar  1 00:26:10.719: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:26:15.627: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:26:15.631: OSPF: Send immediate hello to nbr 22.22.22.22, src address 123.1.1.2, on Serial1/2
  *Mar  1 00:26:15.635: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:26:15.639: OSPF: End of hello processing
  *Mar  1 00:26:15.999: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:26:15.999: OSPF: 2 Way Communication to 22.22.22.22 on Serial1/2, state 2WAY
  *Mar  1 00:26:15.999: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0xA29 opt 0x52 flag 0x7 len 32
  *Mar  1 00:26:15.999: OSPF: End of hello processing
  *Mar  1 00:26:15.999: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x15B9 opt 0x52 flag 0x7 len 32  mtu 1500 state EXSTART
  *Mar  1 00:26:16.003: OSPF: NBR Negotiation Done. We are the SLAVE
  *Mar  1 00:26:16.007: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x15B9 opt 0x52 flag 0x2 len 52
  *Mar  1 00:26:16.299: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x15BA opt 0x52 flag 0x3 len 52  mtu 1500 state EXCHANGE
  *Mar  1 00:26:16.303: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x15BA opt 0x52 flag 0x0 len 32
  *Mar  1 00:26:16.467: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x15BB opt 0x52 flag 0x1 len 32  mtu 1500 state EXCHANGE
  *Mar  1 00:26:16.471: OSPF: Exchange Done with 22.22.22.22 on Serial1/2
  *Mar  1 00:26:16.475: OSPF: Send LS REQ to 22.22.22.22 length 12 LSA count 1
  *Mar  1 00:26:16.479: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x15BB opt 0x52 flag 0x0 len 32
  *Mar  1 00:26:16.491: OSPF: Rcv LS REQ from 22.22.22.22 on Serial1/2 length 36 LSA count 1
  *Mar  1 00:26:16.495: OSPF: Send UPD to 123.1.1.2 on Serial1/2 length 40 LSA count 1
  *Mar  1 00:26:16.563: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 64 LSA count 1
  *Mar  1 00:26:16.563: OSPF: Synchronized with 22.22.22.22 on Serial1/2, state FULL
  *Mar  1 00:26:16.567: %OSPF-5-ADJCHG: Process 1, Nbr 22.22.22.22 on Serial1/2 from LOADING to FULL, Loading Done
  *Mar  1 00:26:17.203: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 76 LSA count 1
  *Mar  1 00:26:20.723: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:26:25.679: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:26:25.683: OSPF: End of hello processing
  *Mar  1 00:26:30.727: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:26:35.643: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:26:35.647: OSPF: End of hello processing
  首先OSPF会从宣告网段的接口发送OSPF Hello包,当直连路由器都收到对方的immediate  hello包后开始进入2way状态
  *Mar  1 00:26:10.719: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:26:15.627: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:26:15.631: OSPF: Send immediate hello to nbr 22.22.22.22, src address 123.1.1.2, on Serial1/2
  *Mar  1 00:26:15.635: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:26:15.639: OSPF: End of hello processing
  *Mar  1 00:26:15.999: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:26:15.999: OSPF: 2 Way Communication to 22.22.22.22 on Serial1/2, state 2WAY
  在点到点网络中,邻居到2WAY状态后直接开始发送DBD报文,这个状态成为EXSTART,DBD信息交互完后后邻居状态被至为EXCHANGE状态,如下:
  *Mar  1 00:26:15.999: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0xA29 opt 0x52 flag 0x7 len 32
  *Mar  1 00:26:15.999: OSPF: End of hello processing
  *Mar  1 00:26:15.999: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x15B9 opt 0x52 flag 0x7 len 32  mtu 1500 state EXSTART
  *Mar  1 00:26:16.003: OSPF: NBR Negotiation Done. We are the SLAVE
  *Mar  1 00:26:16.007: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x15B9 opt 0x52 flag 0x2 len 52
  *Mar  1 00:26:16.299: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x15BA opt 0x52 flag 0x3 len 52  mtu 1500 state EXCHANGE
  *Mar  1 00:26:16.303: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x15BA opt 0x52 flag 0x0 len 32
  *Mar  1 00:26:16.467: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x15BB opt 0x52 flag 0x1 len 32  mtu 1500 state EXCHANGE
  EXCHANGE 状态邻居开始交互LSR(连路状态请求)和LSU(连路状态跟新)信息,如下:
  *Mar  1 00:26:16.471: OSPF: Exchange Done with 22.22.22.22 on Serial1/2
  *Mar  1 00:26:16.475: OSPF: Send LS REQ to 22.22.22.22 length 12 LSA count 1
  *Mar  1 00:26:16.479: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x15BB opt 0x52 flag 0x0 len 32
  *Mar  1 00:26:16.491: OSPF: Rcv LS REQ from 22.22.22.22 on Serial1/2 length 36 LSA count 1
  *Mar  1 00:26:16.495: OSPF: Send UPD to 123.1.1.2 on Serial1/2 length 40 LSA count 1
  *Mar  1 00:26:16.563: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 64 LSA count 1
  EXCHANGE状态完后后,邻居进入LOADING 状态,然后迅速进入FULL状态。
  我们来看看OSPF中点到点网络类型的接口信息,命令是 show ip ospf interface s1/2,输出如下:
  R1#show ip ospf interface s1/2
  Serial1/2 is up, line protocol is up
  Internet Address 123.1.1.1/24, Area 0

  Process>  Transmit Delay is 1 sec, State POINT_TO_POINT,
  Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
  oob-resync timeout 40
  Hello due in 00:00:00
  Supports Link-local Signaling (LLS)
  Index 1/1, flood queue length 0
  Next 0x0(0)/0x0(0)
  Last flood scan length is 1, maximum is 1
  Last flood scan time is 0 msec, maximum is 0 msec
  Neighbor Count is 1, Adjacent neighbor count is 1
  Adjacent with neighbor 22.22.22.22
  Suppress hello for 0 neighbor(s)
  从输出我们可以看到接口的IP地址、掩码、OSPF域、网络类型、接口开销、Hello、Dead和Wait时间以及邻居的RouterID。
  ·二、点到多点网络类型(P2MP)
  我们重新配置接口,配置如下:
  R1:
  interface Serial1/2
  ip address 123.1.1.1 255.255.255.0
  encapsulation frame-relay
  ip ospf network point-to-multipoint
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.2 102 broadcast
  no frame-relay inverse-arp
  router ospf 1
  router-id 11.11.11.11
  R2:
  interface Serial1/2
  ip address 123.1.1.2 255.255.255.0
  encapsulation frame-relay
  ip ospf network point-to-multipoint
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.1 201 broadcast
  no frame-relay inverse-arp
  router ospf 1
  router-id 22.22.22.22
  和上面的点到点类型一样,点到多点网络类型也是要在MAP后面加 broadcast 的,原因和上面的一样。我们来看看整个OSPF邻居建立过程,如下:
  *Mar  1 00:10:56.639: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:10:56.735: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:10:56.739: OSPF: 2 Way Communication to 22.22.22.22 on Serial1/2, state 2WAY
  *Mar  1 00:10:56.743: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x1FBA opt 0x52 flag 0x7 len 32
  *Mar  1 00:10:56.747: OSPF: Send immediate hello to nbr 22.22.22.22, src address 123.1.1.2, on Serial1/2
  *Mar  1 00:10:56.751: OSPF: Send hello to 123.1.1.2 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:10:56.755: OSPF: End of hello processing
  *Mar  1 00:10:56.843: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x16 opt 0x52 flag 0x7 len 32  mtu 1500 state EXSTART
  *Mar  1 00:10:56.843: OSPF: NBR Negotiation Done. We are the SLAVE
  *Mar  1 00:10:56.847: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x16 opt 0x52 flag 0x2 len 52
  *Mar  1 00:10:57.035: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x17 opt 0x52 flag 0x3 len 52  mtu 1500 state EXCHANGE
  *Mar  1 00:10:57.035: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x17 opt 0x52 flag 0x0 len 32
  *Mar  1 00:10:57.163: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x18 opt 0x52 flag 0x1 len 32  mtu 1500 state EXCHANGE
  *Mar  1 00:10:57.163: OSPF: Exchange Done with 22.22.22.22 on Serial1/2
  *Mar  1 00:10:57.167: OSPF: Send LS REQ to 22.22.22.22 length 12 LSA count 1
  *Mar  1 00:10:57.171: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x18 opt 0x52 flag 0x0 len 32
  *Mar  1 00:10:57.215: OSPF: Rcv LS REQ from 22.22.22.22 on Serial1/2 length 36 LSA count 1
  *Mar  1 00:10:57.219: OSPF: Send UPD to 123.1.1.2 on Serial1/2 length 40 LSA count 1
  *Mar  1 00:10:57.267: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 64 LSA count 1
  *Mar  1 00:10:57.271: OSPF: Synchronized with 22.22.22.22 on Serial1/2, state FULL
  *Mar  1 00:10:57.271: %OSPF-5-ADJCHG: Process 1, Nbr 22.22.22.22 on Serial1/2 from LOADING to FULL, Loading Done
  *Mar  1 00:10:57.875: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 76 LSA count 1
  这个个邻居建立过程和点到点(P2P)类型基本一样。上面我们用到了一个新命令  ip ospf 1 area 0 ,该命令用来在接口下宣告OSPF网段,而且这个命令只在12.4以上的IOS才被支持。我们再来看看点到多点网络类型的进口信息:
  R1#show ip ospf interface s1/2
  Serial1/2 is up, line protocol is up
  Internet Address 123.1.1.1/24, Area 0

  Process>  Enabled by interface config, including secondary ip addresses
  Transmit Delay is 1 sec, State POINT_TO_MULTIPOINT,
  Timer intervals configured, Hello 30, Dead 120, Wait 120, Retransmit 5
  oob-resync timeout 120
  Hello due in 00:00:12
  Supports Link-local Signaling (LLS)
  Index 1/1, flood queue length 0
  Next 0x0(0)/0x0(0)
  Last flood scan length is 1, maximum is 1
  Last flood scan time is 0 msec, maximum is 0 msec
  Neighbor Count is 1, Adjacent neighbor count is 1
  Adjacent with neighbor 22.22.22.22
  Suppress hello for 0 neighbor(s)
  唯一和点到点不同的是,点到多点类型的Hello时间是30秒,Dead时间是120秒,Wait时间也是120秒。
  · 三、点到多点非广播(P2MP-Nonbroadcost)
  基本配置如下:

  R1 :
  interface Serial1/2
  ip address 123.1.1.1 255.255.255.0
  encapsulation frame-relay
  ip ospf network point-to-multipoint non-broadcast
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.2 102
  no frame-relay inverse-arp
  router ospf 1
  router-id 11.11.11.11
  neighbor 123.1.1.2
  R2:
  interface Serial1/2
  ip address 123.1.1.2 255.255.255.0
  encapsulation frame-relay
  ip ospf network point-to-multipoint non-broadcast
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.1 201
  no frame-relay inverse-arp
  router ospf 1
  router-id 22.22.22.22
  log-adjacency-changes
  我们在配置该类型网络的时候会发现,及时MAP加Broadcast邻居也无法建立,因为该类型需要手动是邻居的, neighbor 123.1.1.2 但是邻居只需要单边指就可以了。邻居建立过程如下:
  *Mar  1 00:37:48.619: OSPF: Send hello to 123.1.1.2 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:37:48.719: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:37:48.723: OSPF: 2 Way Communication to 22.22.22.22 on Serial1/2, state 2WAY
  *Mar  1 00:37:48.727: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0xA4F opt 0x52 flag 0x7 len 32
  *Mar  1 00:37:48.731: OSPF: End of hello processing
  *Mar  1 00:37:48.863: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x1C63 opt 0x52 flag 0x7 len 32  mtu 1500 state EXSTART
  *Mar  1 00:37:48.867: OSPF: NBR Negotiation Done. We are the SLAVE
  *Mar  1 00:37:48.871: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x1C63 opt 0x52 flag 0x0 len 32
  *Mar  1 00:37:49.031: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x1C64 opt 0x52 flag 0x3 len 52  mtu 1500 state EXCHANGE
  *Mar  1 00:37:49.035: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x1C64 opt 0x52 flag 0x0 len 32
  *Mar  1 00:37:49.147: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x1C65 opt 0x52 flag 0x1 len 32  mtu 1500 state EXCHANGE
  *Mar  1 00:37:49.151: OSPF: Exchange Done with 22.22.22.22 on Serial1/2
  *Mar  1 00:37:49.155: OSPF: Send LS REQ to 22.22.22.22 length 12 LSA count 1
  *Mar  1 00:37:49.159: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x1C65 opt 0x52 flag 0x0 len 32
  *Mar  1 00:37:49.299: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 64 LSA count 1
  *Mar  1 00:37:49.299: OSPF: Synchronized with 22.22.22.22 on Serial1/2, state FULL
  *Mar  1 00:37:49.299: %OSPF-5-ADJCHG: Process 1, Nbr 22.22.22.22 on Serial1/2 from LOADING to FULL, Loading Done
  *Mar  1 00:37:49.307: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 64 LSA count 1
  *Mar  1 00:37:53.679: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 76 LSA count 1
  *Mar  1 00:37:53.851: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 76 LSA count 1
  *Mar  1 00:37:54.191: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 76 LSA count 1
  从上面我们可以看到,Hello 是以单播形式放送的,因为该类型的OSPF网络不支持广播或者组播数据包,这也是为什么要指邻居的原因了。我们来看看接口信息:
  R1#show ip ospf interface s1/2
  Serial1/2 is up, line protocol is up
  Internet Address 123.1.1.1/24, Area 0

  Process>  Enabled by interface config, including secondary ip addresses
  Transmit Delay is 1 sec, State POINT_TO_MULTIPOINT,
  Timer intervals configured, Hello 30, Dead 120, Wait 120, Retransmit 5
  oob-resync timeout 120
  Hello due in 00:00:09
  Supports Link-local Signaling (LLS)
  Index 1/1, flood queue length 0
  Next 0x0(0)/0x0(0)
  Last flood scan length is 1, maximum is 1
  Last flood scan time is 4 msec, maximum is 4 msec
  Neighbor Count is 1, Adjacent neighbor count is 1
  Adjacent with neighbor 22.22.22.22
  Suppress hello for 0 neighbor(s)
  注意此类型和点多多点类型的接口信息是一样的,网络类型也一样,但是要注意次类型和点到多点是一不一样的。
  · 四、广播类型(Boardcast)以及 DR和BDR的选举规则
  基本配置如下:
  R1 :
  interface Serial1/2
  ip address 123.1.1.1 255.255.255.0
  encapsulation frame-relay
  ip ospf network broadcast
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.2 102 broadcast
  no frame-relay inverse-arp
  router ospf 1
  router-id 11.11.11.11
  log-adjacency-changes
  R2:
  interface Serial1/2
  ip address 123.1.1.2 255.255.255.0
  encapsulation frame-relay
  ip ospf network broadcast
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.1 201 broadcast
  no frame-relay inverse-arp
  router ospf 1
  router-id 22.22.22.22
  log-adjacency-changes
  上面的配置我们就不多说了,主要是要MAP要加Broadcast。我们来直接看邻居状态吧,如下:
  *Mar  1 00:56:14.175: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:56:14.179: OSPF: End of hello processing
  *Mar  1 00:56:21.443: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 64 LSA count 1
  *Mar  1 00:56:21.447: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 60 LSA count 1
  *Mar  1 00:56:21.599: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:56:21.603: OSPF: Cannot see ourself in hello from 22.22.22.22 on Serial1/2, state INIT
  *Mar  1 00:56:21.607: OSPF: Neighbor change Event on interface Serial1/2
  *Mar  1 00:56:21.607: OSPF: DR/BDR election on Serial1/2
  *Mar  1 00:56:21.611: OSPF: Elect BDR 11.11.11.11
  *Mar  1 00:56:21.611: OSPF: Elect DR 11.11.11.11
  *Mar  1 00:56:21.615: OSPF: Elect BDR 0.0.0.0
  *Mar  1 00:56:21.615: OSPF: Elect DR 11.11.11.11
  *Mar  1 00:56:21.619:        DR: 11.11.11.11 (Id)   BDR: none
  *Mar  1 00:56:21.619: OSPF: Reset Serial1/2 flush timer
  *Mar  1 00:56:21.623: OSPF: Remember old DR 22.22.22.22 (id)
  *Mar  1 00:56:21.623: OSPF: Send immediate hello to nbr 22.22.22.22, src address 123.1.1.2, on Serial1/2
  *Mar  1 00:56:21.627: OSPF: Send hello to 123.1.1.2 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:56:21.631: OSPF: End of hello processing
  *Mar  1 00:56:21.811: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:56:21.815: OSPF: 2 Way Communication to 22.22.22.22 on Serial1/2, state 2WAY
  *Mar  1 00:56:21.815: OSPF: Neighbor change Event on interface Serial1/2
  *Mar  1 00:56:21.819: OSPF: DR/BDR election on Serial1/2
  *Mar  1 00:56:21.819: OSPF: Elect BDR 22.22.22.22
  *Mar  1 00:56:21.823: OSPF: Elect DR 11.11.11.11
  *Mar  1 00:56:21.823:       DR: 11.11.11.11 (Id)   BDR: 22.22.22.22 (Id)
  *Mar  1 00:56:21.827: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x23C opt 0x52 flag 0x7 len 32
  *Mar  1 00:56:21.831: OSPF: Neighbor change Event on interface Serial1/2
  *Mar  1 00:56:21.831: OSPF: DR/BDR election on Serial1/2
  *Mar  1 00:56:21.835: OSPF: Elect BDR 22.22.22.22
  *Mar  1 00:56:21.835: OSPF: Elect DR 11.11.11.11
  *Mar  1 00:56:21.839:        DR: 11.11.11.11 (Id)   BDR: 22.22.22.22 (Id)
  *Mar  1 00:56:21.843: OSPF: Neighbor change Event on interface Serial1/2
  *Mar  1 00:56:21.843: OSPF: DR/BDR election on Serial1/2
  *Mar  1 00:56:21.847: OSPF: Elect BDR 22.22.22.22
  *Mar  1 00:56:21.847: OSPF: Elect DR 11.11.11.11
  *Mar  1 00:56:21.851:        DR: 11.11.11.11 (Id)   BDR: 22.22.22.22 (Id)
  *Mar  1 00:56:21.851: OSPF: End of hello processing
  *Mar  1 00:56:21.855: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x7EE opt 0x52 flag 0x7 len 32  mtu 1500 state EXSTART
  *Mar  1 00:56:21.859: OSPF: NBR Negotiation Done. We are the SLAVE
  *Mar  1 00:56:21.863: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x7EE opt 0x52 flag 0x2 len 52
  *Mar  1 00:56:21.975: OSPF: Rcv DBD from 22.22.22.22 on Serial1/2 seq 0x7EF opt 0x52 flag 0x1 len 32  mtu 1500 state EXCHANGE
  *Mar  1 00:56:21.979: OSPF: Exchange Done with 22.22.22.22 on Serial1/2
  *Mar  1 00:56:21.983: OSPF: Synchronized with 22.22.22.22 on Serial1/2, state FULL
  *Mar  1 00:56:21.987: %OSPF-5-ADJCHG: Process 1, Nbr 22.22.22.22 on Serial1/2 from LOADING to FULL, Loading Done
  *Mar  1 00:56:21.987: OSPF: Send DBD to 22.22.22.22 on Serial1/2 seq 0x7EF opt 0x52 flag 0x0 len 32
  *Mar  1 00:56:22.095: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 64 LSA count 1
  *Mar  1 00:56:22.111: OSPF: Rcv LS REQ from 22.22.22.22 on Serial1/2 length 36 LSA count 1
  *Mar  1 00:56:22.115: OSPF: Send UPD to 123.1.1.2 on Serial1/2 length 40 LSA count 1
  *Mar  1 00:56:22.519: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:56:26.719: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 64 LSA count 1
  *Mar  1 00:56:26.727: OSPF: Send UPD to 123.1.1.2 on Serial1/2 length 40 LSA count 1
  *Mar  1 00:56:27.807: OSPF: Rcv LS UPD from 22.22.22.22 on Serial1/2 length 64 LSA count 1
  *Mar  1 00:56:31.447: OSPF: service_maxage: Trying to delete MAXAGE LSA
  *Mar  1 00:56:31.595: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:56:31.599: OSPF: End of hello processing
  *Mar  1 00:56:32.523: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:56:41.627: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:56:41.631: OSPF: End of hello processing
  *Mar  1 00:56:42.527: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1
  *Mar  1 00:56:51.595: OSPF: Rcv hello from 22.22.22.22 area 0 from Serial1/2 123.1.1.2
  *Mar  1 00:56:51.599: OSPF: End of hello processing
  *Mar  1 00:56:52.531: OSPF: Send hello to 224.0.0.5 area 0 on Serial1/2 from 123.1.1.1

  从上面我们会发现,广播类型的网络中会有一个DR和BDR的选举过程,路由首先把自己的Router>  R1#sho ip ospf neighbor

  Neighbor>  22.22.22.22       1   FULL/BDR        00:00:32    123.1.1.2       Serial1/2
  R2#sho ip ospf neighbor

  Neighbor>  11.11.11.11       1   FULL/DR         00:00:31    123.1.1.1       Serial1/2

  真的是Router>  R1 :
  interface Serial1/2
  ip address 123.1.1.1 255.255.255.0
  encapsulation frame-relay
  ip ospf network broadcast
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.2 102 broadcast
  frame-relay map ip 123.1.1.3 103 broadcast
  no frame-relay inverse-arp
  router ospf 1
  router-id 11.11.11.11
  log-adjacency-changes
  R2:
  interface Serial1/2
  ip address 123.1.1.2 255.255.255.0
  encapsulation frame-relay
  ip ospf network broadcast
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.1 201 broadcast
  frame-relay map ip 123.1.1.3 203 broadcast
  no frame-relay inverse-arp
  router ospf 1
  router-id 22.22.22.22
  log-adjacency-changes
  R3:
  interface Serial1/2
  ip address 123.1.1.3 255.255.255.0
  encapsulation frame-relay
  ip ospf network broadcast
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.1 301 broadcast
  frame-relay map ip 123.1.1.2 302 broadcast
  no frame-relay inverse-arp
  router ospf 1
  router-id 33.33.33.33
  log-adjacency-changes
  我们再来看看此时的邻居状态表:
  R1#sho ip ospf neighbor

  Neighbor>  22.22.22.22       1   FULL/BDR        00:00:37    123.1.1.2       Serial1/2
  33.33.33.33       1   FULL/DR         00:00:39    123.1.1.3       Serial1/2

  R3成了DR,R2成了BDR,R1成了DRother,很明显上面我们所说的:Router>  R2#sho ip ospf neighbor

  Neighbor>  11.11.11.11       1   FULL/BDR        00:00:37    123.1.1.1       Serial1/2
  我们发现R1成为BDR了,也就是说,先加组的路由具有较高的优先级,但是此优先级比 priority 低。我们再来想想,要是两个路由器的接口是同时加组的,又会是什么情况呢?我们首先要模拟一种情况,就是让两个路由同时加组,同时选举,这个貌似苛刻的环境其实是很简单的。在OSPF邻居建立的时候,有很多必须相同的参数,其中有一个Hello时间,我们可以利用这个条件来实现。首先我们修改某一个接口的Hello时间,让邻居DOWN掉,此时的情况就是两个接口都处于加组宣告状态,只要我们改回原来的Hello时间,马上就会同时进行邻居建立的过程,这也就达到了目的。
  接下来我们就来看看同时情况下邻居关系的建立。首先我们来看看broadcast类型的HELLO时间:
  R1
  R1#sho ip ospf interface s1/2
  Serial1/2 is up, line protocol is up
  Internet Address 123.1.1.1/24, Area 0

  Process>  Enabled by interface config, including secondary ip addresses
  Transmit Delay is 1 sec, State BDR, Priority 1
  Designated Router (ID) 22.22.22.22, Interface address 123.1.1.2
  Backup Designated router (ID) 11.11.11.11, Interface address 123.1.1.1
  Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
  oob-resync timeout 40
  Hello due in 00:00:04
  Supports Link-local Signaling (LLS)
  Index 1/1, flood queue length 0
  Next 0x0(0)/0x0(0)
  Last flood scan length is 1, maximum is 2
  Last flood scan time is 0 msec, maximum is 4 msec
  Neighbor Count is 1, Adjacent neighbor count is 1
  Adjacent with neighbor 22.22.22.22  (Designated Router)
  Suppress hello for 0 neighbor(s)
  hello时间是10秒,我们把他改成11秒,配置如下:
  R1:
  interface Serial1/2
  ip address 123.1.1.1 255.255.255.0
  encapsulation frame-relay
  ip ospf network broadcast
  ip ospf hello-interval 11
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.3 103 broadcast
  frame-relay map ip 123.1.1.2 102 broadcast
  no frame-relay inverse-arp
  和我们想象的一样,邻居关系马上就Down掉了。我们重新配置会原来的Hello时间,再来看看此时的邻居关系。
  R1#sho ip ospf neighbor

  Neighbor>  22.22.22.22       1   FULL/DR         00:00:33    123.1.1.2       Serial1/2

  果是Router>
  我们来总结一下OSPF,DR和BDR的选举过程,首先路由器会查看priority 值,如果为0,则不参与DR和BDR的选举,如果priority 不为0,则把自己的priority值和对方进行比较,priority 值较大的一方将成为DR较小的一方将成为BDR。如果priority值一样,且不为0,那么此时又有两种情况,如果两个路由器不是同时加组宣告的,那么首先加组的一方将成为DR;如果两个路由器是同时加组宣告的,那么则会选择Router>  ·五、点到多点非广播(NBMA)
  配置如下:
  R1:
  ip address 123.1.1.1 255.255.255.0
  encapsulation frame-relay
  ip ospf network non-broadcast
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.3 103 broadcast
  frame-relay map ip 123.1.1.2 102 broadcast
  no frame-relay inverse-arp
  router ospf 1
  router-id 11.11.11.11
  log-adjacency-changes
  R2:
  interface Serial1/2
  ip address 123.1.1.2 255.255.255.0
  encapsulation frame-relay
  ip ospf network non-broadcast
  ip ospf 1 area 0
  serial restart-delay 0
  no arp frame-relay
  frame-relay map ip 123.1.1.3 203 broadcast
  frame-relay map ip 123.1.1.1 201 broadcast
  no frame-relay inverse-arp
  router ospf 1
  router-id 22.22.22.22
  log-adjacency-changes
  上面的配置后我们发现邻居是起不来的,我们还要指邻居:
  router ospf 1
  router-id 11.11.11.11
  log-adjacency-changes
  neighbor 123.1.1.2
  配置完后邻居起来了,我们会发现在NBMA网络类型中,也是会进行DR和BDR选举的,规则和广播类型一样。
  R1#sho ip ospf neighbor

  Neighbor>  22.22.22.22       1   FULL/DR         00:01:55    123.1.1.2       Serial1/2
  细心的朋友可能会发现,NBMA网络建立邻居的时候会多出一个邻居状态机,如下:
  R1#sho ip ospf neighbor

  Neighbor>  N/A               0   ATTEMPT/DROTHER 00:00:59    123.1.1.2       Serial1/2
  ATTEMPT状态,此状态仅仅适用于NBMA网络上的邻居,在NBMA网络上邻居路由器是手工配置的.当NBMA网络上具有DR选举资格的路由器和其他邻居路由器相连的接口开始变为有效时,或者当这台路由器成为DR或BDR时,这台具有DR选举资格的路由器将会把邻居路由器的状态转到ATTEMPT状态。
  NBMA网络类型的接口参数如下:
  R1#sho ip ospf interface s1/2
  Serial1/2 is up, line protocol is up
  Internet Address 123.1.1.1/24, Area 0

  Process>  Enabled by interface config, including secondary ip addresses
  Transmit Delay is 1 sec, State BDR, Priority 1
  Designated Router (ID) 22.22.22.22, Interface address 123.1.1.2
  Backup Designated router (ID) 11.11.11.11, Interface address 123.1.1.1
  Timer intervals configured, Hello 30, Dead 120, Wait 120, Retransmit 5
  oob-resync timeout 120
  Hello due in 00:00:23
  Supports Link-local Signaling (LLS)
  Index 1/1, flood queue length 0
  Next 0x0(0)/0x0(0)
  Last flood scan length is 1, maximum is 2
  Last flood scan time is 4 msec, maximum is 4 msec
  Neighbor Count is 1, Adjacent neighbor count is 1
  Adjacent with neighbor 22.22.22.22  (Designated Router)
  Suppress hello for 0 neighbor(s)
  ·六、环回口类型
  此类型出现在环回口,如下:
  R1#sho ip ospf interface lo0
  Loopback0 is up, line protocol is up
  Internet Address 1.1.1.1/24, Area 0

  Process>  Enabled by interface config, including secondary ip addresses
  Loopback interface is treated as a stub Host
  该网络类型没有HELLO、DEAD、WAIT等时间。因为此网络类型只有宣告网段的能力,没有加组的能力,因此该种网络类型的接口不会接收和放送OSPF报文。而且我们会发现此种类型宣告出去的路由是32的如下:
  R1:
  interface Loopback0
  ip address 1.1.1.1 255.255.255.0
  ip ospf 1 area 0
  R2:
  R2#sho ip route
  Codes:
  Design By  Volcano CCIE Lab Of Times Education
  Mac.sun
  i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
  ia - IS-IS inter area, * - candidate default, U - per-user static route
  o - ODR, P - periodic downloaded static route
  Gateway of last resort is not set
  1.0.0.0/32 is subnetted, 1 subnets
  O       1.1.1.1 [110/65] via 123.1.1.1, 01:16:40, Serial1/2
  123.0.0.0/24 is subnetted, 1 subnets
  C       123.1.1.0 is directly connected, Serial1/2
  ·七、虚链路类型
  此类型将在虚链路配置中介绍
OSPF常见的六种LSA


  · 一、1类LSA——路由器LSA  (Router Link States)
  每一台路由器都会产生路由器LSA通告。这个最基本的LSA通告列出了路由器所有的连接或接口,并指明了他们的状态和和沿每条链路方向出战的代价,以及该链路上所有一直的OSPF邻居。这些LSA通告指挥在始发它们的区域内部进行洪泛。
  我们来看看上面实验中R1上的OSPF数据库:
  R1#sho ip ospf database

  OSPF Router with>  Router Link States (Area 0)

  Link>  11.11.11.11     11.11.11.11     1366        0x80000010 0x007603 2
  22.22.22.22     22.22.22.22     1995        0x8000000F 0x00BC79 1
  从上面可以看到路由器LSA中包含了两个两个路由器,也就是我们的R1和R2
  · 一、2类LSA——网络LSA  (Net Link States)
  网络LSA会列出DR,此类LSA也只仅仅在产生这条网络LSA的区域内部进行洪泛。
  R1#sho ip ospf database network

  OSPF Router with>  Net Link States (Area 0)
  Routing Bit Set on this LSA
  LS age: 1934
  Options: (No TOS-capability, DC)
  LS Type: Network Links

  Link State>  Advertising Router: 22.22.22.22
  LS Seq Number: 8000000F
  Checksum: 0x933C
  Length: 32
  Network Mask: /24
  Attached Router: 22.22.22.22
  Attached Router: 11.11.11.11
  · 一、3类LSA——网络汇总LSA  (Net Link States) 和区域内汇总
  是由ABR路由器始发的。ABR路由器将发送网络汇总LSA到一个区域,用来宣告区域外部的目的地址。一台ABR路由器可以通过网络汇总LSA向骨干区域通告与它相连的区域内部的目标地址。在一个区域外部,仍然在一个OSPF自主系统内部的缺省路由也可以通过这种LSA类型来通告。
  我们来看看如何产生一条三类LSA,首先拓扑如下,R1和R2之间是Area 0域,R2和R3之间是Area 1 域。
  蒽
DSC0001.jpg

  配置如下:

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-536050-1-1.html 上篇帖子: cisco2960之我见 下篇帖子: Cisco 2811 PPPOE+NAT 配置实例
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表