華為OSPF詳解


OSPFv3                                                                                                

縮略語

英文全名

中文解釋

OSPF

Open Shortest Path First

開放最短路徑優先

OSPFv3

Open Shortest Path First version 3

開放最短路徑優先版本3

IGP

Interior Gateway Protocol

內部網關協議

AS

Autonomous System

自治系統

ABR

Area Border Router

區域邊界路由器

ASBR

Autonomous System Border Router

自治系統邊界路由器

LSA

Link Statement Advertisement

鏈路狀態通告

LSDB

Link State Data Base

鏈路狀態數據庫

DR

Designated Router

指定路由器

BDR

Backup Designated Router

備份指定路由器

DD

Database Description

數據庫描述

LSR

Link State Request

鏈路狀態請求

LSU

Link State Update

鏈路狀態更新

LSAck

Link State Acknowledgment

鏈路狀態確認

NBMA

Non-Broadcast Multi-Access

非廣播多點可達網絡

P2MP

Point-to-MultiPoint

點到多點

P2P

Point-to-Point

點到點

 該表格來自新華三OSPFv3技術白皮書http://www.h3c.com/cn/d_200804/603579_30003_0.htm

 本文所有試驗圍繞一下拓撲進行,實驗設備為華為AR2200-S,版本為V200R009C00SPC500

以下是基本配置(全局使能IPv6,接口使能IPv6,配置IPv6地址):

RT1:

[RT1]ipv6  

[RT1]interface g0/0/1

[RT1-GigabitEthernet0/0/1]ipv6 enable

[RT1-GigabitEthernet0/0/1]ipv6 address 2001::1/64

[RT1]interface LoopBack 1 

[RT1-LoopBack1]ipv6 enable

[RT1-LoopBack1]ipv6 address 2010::1/64

[RT1]interface LoopBack 2

[RT1-LoopBack1]ipv6 enable

[RT1-LoopBack1]ipv6 address 2011::1/64

RT2:


[RT2]ipv6 

RT2]interface g0/0/1

[RT2-GigabitEthernet0/0/1]ipv6 enable

[RT2-GigabitEthernet0/0/1]ipv6 address 2001::2/64

[RT2]interface g0/0/2

[RT2-GigabitEthernet0/0/2]ipv6 enable

[RT2-GigabitEthernet0/0/2]ipv6 address 2002::2/64 
 

RT3:


[RT3]ipv6  

[RT3]interface g0/0/2 

[RT3-GigabitEthernet0/0/2]ipv6 enable

[RT3-GigabitEthernet0/0/2]ipv6 address 2002::3/64

[RT3]interface LoopBack 1 

[RT3-LoopBack1]ipv6 enable

[RT3-LoopBack1]ipv6 address 2012::1/64

[RT3]interface LoopBack 2

[RT3-LoopBack1]ipv6 enable

[RT3-LoopBack1]ipv6 address 2013::1/64

以下是基本OSPFv3配置:

RT1:

[RT1]ospfv3 1

[RT1-ospfv3-1]router-id 1.1.1.1

[RT1]interface LoopBack 1 

[RT1-LoopBack1]ospfv3 1 area 0 

[RT1]interface LoopBack 2

[RT1-LoopBack2]ospfv3 1 area 0 

[RT1-LoopBack2]in g0/0/1. 

[RT1-GigabitEthernet0/0/1]ospfv3 1 area 0 

RT2: 

[RT2]ospfv3 1

[RT2-ospfv3-1]router-id 2.2.2.2

[RT2]interface g0/0/1

[RT2-GigabitEthernet0/0/1]ospfv3 1 area 0 

[RT2]interface g0/0/2

[RT2-GigabitEthernet0/0/2]ospfv3 1 area 1 

[RT2-GigabitEthernet0/0/2]quit

 RT3:

[RT3]ospfv3 1

[RT3-ospfv3-1]router-id 3.3.3.3

[RT3]interface g0/0/2

[RT3-GigabitEthernet0/0/2]ospfv3 1 area 1

[RT3]interface LoopBack 1

[RT3-LoopBack1]ospfv3 1 area 1

[RT3-LoopBack1]interface LoopBack 2

[RT3-LoopBack2]ospfv3 1 area 1

                                                                                                                                                             以上就是OSPFv3的基本配置

 

 接下來看一下OSPFv3的狀態,先來說幾道命令:

 

------------------------------------------------------------------------------------------------------------------------------------------ 

  • 接着是OSPFv3接口時間周期功能配置
  1. 配置接口Hello interval
  2. 配置接口Hello包發送間隔(Hello interval)
  3. 配置相鄰路由器失效時間(Dead interval)
  4. 配置鄰接路由器重傳LSA間隔
  5. 配置接口LSA傳送延遲
  6. 配置接口輪詢Hello包

 1.配置接口Hello interval

[RT2]in g0/0/1

[RT2-GigabitEthernet0/0/1]ospfv3 timer hello <1-65535>s

##在默認情況下P2P,廣播網,這種接口類型下,發送Hello包的間隔為10s,而P2MP,NMBA發送間隔為30s 

2.配置相鄰路由器失效時間(Dead interval)

[RT2]interface g0/0/1

[RT2-GigabitEthernet0/0/1]ospfv3 timer dead <1-65535>s

 ##需要注意的是,當你修改Hello包時間時,Dead周期會相應的變為4倍,但當你修改Dead周期時,Hello時間不會改變

3.配置鄰接路由器重傳LSA間隔

[RT2]interface g0/0/1

[RT2-GigabitEthernet0/0/1]ospfv3 timer retransmit  <1-3600>s  

##建議這個值不要設置的太小,以免造成不必要的重傳,例如你的網絡非常復雜,數據包需要2秒才能完成往返(LSU到對方,對方再發回LSAck),那么如果你設置成了一秒,這樣就會讓路由器誤以為對方為接收到數據包,造成重傳

 4.配置接口LSA傳送延遲

[RT2]interface g0/0/1

 

[RT2-GigabitEthernet0/0/1]ospfv3 trans-delay <1-800>s

#設置該值之后,當有LSA需要從這個接口發出時,將等待x秒再發送,x=你的設定

 5.配置接口輪詢Hello包

[RT2]interface g0/0/1

[RT2-GigabitEthernet0/0/1]ospfv3 timer poll <1-65535>s

##這類Hello包只有在NBMA網絡中才會用到,當鄰居失效時,會按照該周期發送輪詢Hello包,建議輪詢時間間隔至少為Hello周期的4倍 

                                                                                                                                  以上就是OSPFv3接口中各種時間周期的配置 

------------------------------------------------------------------------------------------------------------------------------------------ 

配置OSPFv3的區域:

  • Stub區域
  • NSSA區域
  • 虛鏈路

1.Stub區域:

[RT2]ospfv3 1

[RT2-ospfv3-1]area 1  

[RT2-ospfv3-1-area-0.0.0.1]stub [ no-summary ]

[RT3]ospfv3 1  

[RT3-ospfv3-1]area 1

[RT3-ospfv3-1-area-0.0.0.1]stub

##那么此時R2<--->R3的Area1,就配置成為了Stub區域,5類LSA不會被泛洪進來,但是三類依然會泛洪,那么如果你希望將Stub區域配置為一個Totally Stub區域(沒有3類與5類LSA),那么就可以在stub后面加上no-summary,這樣的話R3上只會有一條默認路由,如果你加上了這個參數,那么只需要在ABR上做就可以了,Stub區域中的成員路由器不需要打這條命令

以下是沒有加no-summary,R3的路由表:

##可以從圖中看到,R3上有3條IA的域間路由

以下是加了no-summary,R3的路由表:

 ##可以看到,R3上只有一條默認路由

                                                                                                                                                                   以上就是Stub區域的配置

------------------------------------------------------------------------------------------------------------------------------------------ 

2. NSSA區域

##先不進行配置,先來看一下關於NSSA的各個命令(以下命令均在Area視圖下執行):

nssa 將當前區域配置為NSSA區域

nssa default-route-advertise

向NSSA區域泛洪一條默認路由

nssa default-route-advertise cost <1-16777214>

向NSSA區域泛洪默認路由時,將其cost修改為<cost>
nssa default-route-advertise tag <0-4294967295> 向NSSA區域泛洪默認路由時,將其tag值改為<tag>
nssa default-route-advertise type <1-2> 向NSSA區域泛洪默認路由時,將其類型修改為<type>,缺省為2類
nssa no-import-route 當ABR同時也是ASBR時,這條命令可以使外部路由不向NSSA區域泛洪
nssa no-summary 不會再向NSSA區域中,泛洪3類LSA
nssa set-n-bit 在DD報文中設置N-bit標志位
nssa suppress-forwarding-address 將7類轉成5類之后,設置FA地址為0.0.0.0
nssa translator-always 設置轉換路由器(將7類轉換成5類)
nssa translator-interval <1-120> 設置轉發路由器失效時間

以下是實驗清單及拓撲:

  • R2與R3之間啟用NSSA區域
  • R2向NSSA區域下發默認路由並將Cost值調為10,Tag為20,類型為1
  • R2重分發直連Loopback,並將cost調整為20,tag調整為40,類型為1
  • 當R2同時為ABR與ASBR時,不將外部路由引入NSSA區域
  • R2不向NSSA區域引入3類LSA
  • 設置DD報文N-bit位
  • 指定轉換路由器
  • 設置指定路由器失效時間

------------------------------------------------------------------------------------------------------------------------------------------ 

1.R2與R3之間啟用NSSA區域

[RT2]osfpv3
[RT2]ospfv3 1 
[RT2-ospfv3-1]area 1 
[RT2-ospfv3-1-area-0.0.0.1]nssa 

[RT3]osfpv3
[RT3]ospfv3 1 
[RT3-ospfv3-1]area 1 
[RT3-ospfv3-1-area-0.0.0.1]nssa 

 ##啟NSSA區域,區域內所有路由器都要打,標志位不同,不起鄰居

2.R2向NSSA區域下發默認路由並將Cost值調為10,Tag為20,類型為1

[RT2]ospfv3 1  

[RT2-ospfv3-1]area 1 

[RT2-ospfv3-1-area-0.0.0.1]nssa default-route-advertise cost 10 tag 20 type 1

##你只需要記住一點,nssa的參數后面還可以跟很多參數

 3.R2重分發直連Loopback,並將cost調整為20,tag調整為40,類型為1

[RT2]ospfv3 1 

[RT2-ospfv3-1]import-route direct cost 20 tag 40 type 1

##重分發之后R2就同時成為ABR與ASBR,這樣就滿足了下一個實驗的條件

4. 當R2同時為ABR與ASBR時,不將外部路由引入NSSA區域

先來看一下R3的路由表,可以看到圖中兩條標記為N的路由條目:

那么如果你不希望R3收到這兩條明細路由(因為有一條默認路由就可以實現互聯),那么就可以進行如下配置:

[RT2]ospfv3 1 

[RT2-ospfv3-1-area-0.0.0.1]nssa no-import-route

##這條命令,只有在路由器同時成為ABR與ASBR時,才滿足條件,所以你在R3上重分發之后,在打上這條命令,是沒用的,因為R3不是ABR

再看一下R3的路由表,發現明細路由沒有下發:

5.R2不向NSSA區域引入3類LSA

上圖就是當前的路由表,可以看到有一條IA的域間路由,那么如果你不希望NSSA區域中存在3類LSA,配置如下:

[RT3]ospfv3 1  

[RT3-ospfv3-1-area-0.0.0.1]nssa no-summary

##這條命令只能在NSSA區域的ABR上面配置,在其他路由器上配置也沒用

 6.設置DD報文N-bit位

[RT3]ospfv3 1

[RT3-ospfv3-1-area-0.0.0.1]nssa set-n-bit

##在標准中,N-bit位必須志為0,但是有些廠商還是違背了,所以如果你的網絡環境中有不同廠商的設備,需要留意N-bit志位,這條命令的目的就是與這些廠商兼容

7.指定轉換路由器

完成這個實驗需要4台路由器,以下是拓撲,:

基礎配置(接口IP,進程,接口宣告)在這里就不說明了,直接進入OSPFv3的配置,現在R3重分發直連:

[R3]ospfv 1 

[R3-ospfv3-1]import-route direct           ##重分發在之后會詳細說明,這里記一下就可以了

##重分發直連完成后在R2上,執行nssa translator-always

[R2]ospfv3 1  

[R2-ospfv3-1]area 1        

[R2-ospfv3-1-area-0.0.0.1]nssa translator-always

##執行完之后去R1上查看LSDB數據庫

##可以看到最下面的兩行,R3的兩條直連Loopback口路由,只會從R2通告過來,正常情況是R4也會通告,隨后在R1產生兩條去往相同目的地的等價路由,但是這條命令就可以指定,由哪台路由器負責轉換LSA,當R2--->R1鏈路Down時,R4會自動向Area0通告一條去往R3Loopback口的5類路由,這樣可以形成彈性路由,但做不到等價路由

##這個實驗需要等的時間非常長,我將上面的配置配完之后,去吃了個飯,回來才看到這些狀態一開始還以為自己做錯了

 8.設置指定路由器失效時間

[R2]ospfv 1  

[R2-ospfv3-1]area 1  

[R2-ospfv3-1-area-0.0.0.1]nssa translator-interval <1-120>s

##這條命令一般和nssa translator-always一起打,單位為秒

                                                                                                                         以上就是NSSA的配置及講解,下面是虛鏈路的配置

------------------------------------------------------------------------------------------------------------------------------------------

3.虛鏈路

 以上是拓撲,R2與R3之間建立虛鏈路,使R4學到R1的Loopback路由,以下為配置步驟(接口IP,進程,端口宣告省略):

[R2]ospfv3 1  

[R2-ospfv3-1]area 1                  

[R2-ospfv3-1-area-0.0.0.1]vlink-peer 3.3.3.3

[R3]ospfv3 1

[R3-ospfv3-1]area 1

[R3-ospfv3-1-area-0.0.0.1]vlink-peer 2.2.2.2

##虛鏈路在配置上沒什么難度,你只需要知道在哪兒做就可以了

                                                                                                                                                 以上就是三種區域類型的配置及講解

------------------------------------------------------------------------------------------------------------------------------------------

講解完區域類型之后,現在再來看一下OSPFv3的路由屬性配置:

  • 配置OSPFv3的接口開銷值
  • 配置OSPFv3最大等價路由數量

 1.配置OSPFv3的接口開銷值

接着上一張虛鏈路的拓撲,在R3上查看路由表

##沒有IA是因為虛鏈路到了Area0,傳來的是域內路由,這里可以看到去往2010::/128,2011::/128的開銷是2(Loopback口在OSPFv3中表現為128位),我們將它修改為5

配置如下:

[R2]interface g0/0/1
[R2-GigabitEthernet0/0/1]ospfv3 cost 4

##關於接口cost值的調整,你需要知道的是,在哪調,調什么,cost值的計算是指去往目的網段路徑上所有出接口cost相加,也就是說R3要去往R1的Loopback口,路徑如下,R3_g0/0/1--->R2_g0/0/1--->R1_g0/0/1,所以說路徑上有2條鏈路,所以cost就是將這兩條鏈路的cost相加,就等於去往目的地的cost值,在帶寬足夠的情況下,cost都為1,所以R3去往2010::/128的cost是R2_g0/0/1的cost=1,R1_g0/0/1的cost=1,所以是1+1=2,那么現在將R2_g0/0/1調整為4,也就變成了4+1=5

2.配置OSPFv3最大等價路由數量

[R3]ospfv3 1

[R3-ospfv3-1]maximum load-balancing <1-8>

##最大為8條,按照需求來這個沒什么好講解的

                                                                                                                                                                   以上就是路由屬性的操作

------------------------------------------------------------------------------------------------------------------------------------------

控制OSPFv3的路由信息:

1.配置OSPFv3路由聚合

  • 配置OSPFv3ABR路由聚合
  • 配置OSPFv3ASBR路由聚合
  • 配置OSPFv3對接收的路由過濾
  • 配置OSPFv3對發送的路由過濾
  • 配置OSPFv3引入外部路由

##路由聚合分兩種,一種是ABR聚合,一種是ASBR聚合,這兩種場景我將逐一演示

 先來講ABR聚合,拓撲如下:

##R3宣告兩個Loopback,R2的兩個Loopback口重分發進OSPFv3,將R3兩個Loopback口匯總后發向Area 0

[R2-ospfv3-1]ospfv3 1  

[R2-ospfv3-1]area 1 

[R2-ospfv3-1-area-0.0.0.1]  abr-summary 2011:1:1:: 48 [not-advertise|cost<cost>]

##這是匯總完畢后,R1的路由表,可以發現最下的一行已經有一條匯總路由了:

##這是沒有經過匯總的路由表:

##先來對abr-summary 2011:1:1:: 48這條命令做講解,最匯總時,你需要知道你在哪里做,你希望匯總的路由發向哪里,那么我們現在做的是ABR匯總,所以一定是在ABR上做,那么R2就是ABR,那么我們希望將2011:1:1:1::/64與2011:1:1:2::/64匯總,那么可以將掩碼寫作48位,所以匯總后的路由條目是2001:1:1::/48,那么你希望將哪個區域的路由匯總就在哪個區域做,所以這里是在Area1做 

那么再說一下not-advertise參數的用法,如果你不希望R2將2011:1:1:1::/64,2011:1:1:2::/64網段通告Area 0,那么就可以通過匯總的方法,將兩個網段匯總成一個網段,然后被這個網段包含的所有條目,都不會被通告Area0,以下是實例:

[R2]ospfv 1

[R2-ospfv3-1]area 1

[R2-ospfv3-1-area-0.0.0.1]abr-summary 2011:1:1:: 48 not-advertise

##這是R1的路由表,這兩條明細路由已經被過濾:

最后是cost參數的用法,雖然在前文已經說過非常多次了,但這里還是說一下⑧,如果這條通告出去的匯總路由希望將他的Cost值修改為5,那么可以進行如下配置:

[R2]ospfv 1

[R2-ospfv3-1]area 1

[R2-ospfv3-1-area-0.0.0.1]abr-summary 2011:1:1:: 48 cost 4

##改為4是因為R1本身還有1點開銷,算上累加,所以是4,以下是R1的路由表:

2.ASBR聚合

[R2]ospfv3 1 

[R2-ospfv3-1]import-route direct                               ##在R2將兩個Loopback接口用重分發直連的方式引入OSPFv3 

##引入之后查看R1路由表:

[R2]ospfv3 1 

[R2-ospfv3-1]asbr-summary 2010:1:1:: 48

##以下是匯總完畢的R1路由表:

[R2-ospfv3-1]asbr-summary 2010:1:1:: 48 [cost | distribute-delay | not-advertise | tag]

接下來將逐一針對這些參數進行講解,Cost與Tag不說了:

[R2]ospfv3 1

[R2-ospfv3-1]asbr-summary 2010:1:1:: 48 distribute-delay <1-65535>s

##distribute-delay選項可以使你匯總的路由推遲通告

[R2]ospfv3 1

[R2-ospfv3-1]asbr-summary 2010:1:1:1:: 64 not-advertise

##你可以用這條命令來控制明細條目的引入,可以很靈活的運用,那么以下是R1的路由表:

 

 3.配置OSPFv3對接收的路由過濾

[R1]acl ipv6 2000  

[R1-acl6-basic-2000]rule 1 deny source 2010:1:1:2:: 64

[R1-acl6-basic-2000]rule 2 permit

[R1]ospfv3 1 

[R1-ospfv3-1]filter-policy 2000 import

##這里的ACLv6起到的是決策的作用,並不是匹配流量,如果你的rule允許,則允許該條目進入,如果你的rule拒絕,則拒絕該條目進入,隱形拒絕所有,所以你需要在手動以上一條permit any,以放行其他所有條目

##以下是R1的路由表,D表明拒絕引入,但這只會去標志存在的條目:

 4.配置OSPFv3對發送的路由過濾

##在R2上針對向Area0區域通告的R3的Loopback1做路由過濾
[R2]acl ipv6 2000  

[R2-acl6-basic-2000]rule 1 deny source 2010:1:1:1::/64  

[R2-acl6-basic-2000]rule 2 permit

[R2]ospfv3 1 

[R2-ospfv3-1]filter-policy 2000 export 

##以下是R1的路由表:

 ##路由過濾的要點在於,你要想清楚條目流動的方向,想好在哪過濾,那個方向過濾,采用什么工具過濾

5.配置OSPFv3引入外部路由

##這里要說的是一種路由過濾與重分發結合的一種用法,R2引入本地直連路由,但過濾Loopback1

[R2]acl ipv 2000

[R2-acl6-basic-2000]rule 1 deny source 2010:1:1:1::1/64

[R2-acl6-basic-2000]rule 2 permit

[R2]ospfv3 1

[R2-ospfv3-1]import-route direct

[R2-ospfv3-1]filter-policy 2000 export direct

##以下是過濾完成后R1的路由表

##以下是為做過濾前R1的路由表

                                                                                                                                                  以上就是OSPFv3路由控制相關操作

------------------------------------------------------------------------------------------------------------------------------------------

OSPFv3網絡調優:

  • 配置SPF定時器
  • 設置LSA頻繁震盪時路由計算的延遲時間
  • 配置接收LSA的時間間隔
  • 抑制接口接收或發送OSPFv3報文
  • 配置接口的DR優先級
  • 配置Stub路由器
  • 忽略DD報文中的MTU檢查

 1.配置SPF定時器

  • 配置常用定時器

[R1]ospfv3 1  

[R1-ospfv3-1]spf time <0-65535>s(Delay計時器)<0-65535>s(Hold計時器)
##當OSPFv3的鏈路發生變化時,LSDB就會相應的發生變化,這是就需要重新進行SPF計算,如果SPF計算間隔小,那么網絡收斂的時間就會相應的加快,但同時也會占用更多的資源,那么如果網絡頻繁的發生變化,如果SPF計算間隔時間較大,會占用較少的資源,避免因為網絡頻繁的變動而導致帶寬耗盡,但同時網絡收斂速度也會相應的變慢,請酌情配置

  • 配置SPF智能定時器

[R1]ospfv3 1

[R1-ospfv3-1]

spf-schedule-interval [intelligent-timer <Max interval> <Start-interval> <Hold-interval> | <delay time> <hold time>]

##智能定時器用法我也不知道=_=,在這里只能寫出他的配置方法,沒有應用場景

2.設置LSA頻繁震盪時路由計算的延遲時間

[R1]ospfv3 1 

[R1-ospfv3-1]maxage-lsa route-calculate-delay <0-65535>s

##當一個鏈路Down時,他會發出該條目的老化LSA,但是如果一段鏈路頻繁的Down/Up(震盪),那么路由器會頻繁的發出更新LSA與老化LSA,所以這同時浪費了帶寬和路由器算力,所以我們可以通過這條命令,來延遲計算老化LSA,也就是說當一台路由器收到一個最大時間的老化LSA時,會延遲X秒再計算(從LSDB中刪除),這就可以將震盪的損害降到最低,缺省情況下,老化LSA計算延遲為20s

3. 配置接收LSA的時間間隔

[R1]ospfv3 1  

[R1-ospfv3-1]lsa-arrival-interval <1-10000>millisecond

##這條命令可以有效的避免路由震盪帶來的麻煩,它規定了接收同一條LSA的時間間隔。缺省情況下,接收同一條LSA更新信息的時間間隔為1000毫秒(1秒)

4.抑制接口接收或發送OSPFv3報文

[R1]ospfv3 1

[R1-ospfv3-1]silent-interface g0/0/1

##配置之后,該接口不會發送OSPFv3報文,該接口不會建立OSPFv3鄰居關系,但這條直連路由還是可以被Intra-Area-Prefix-LSA發布出去

5.配置接口的DR優先級

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]ospfv3 dr-priority <0-255>

##接口優先級最好是在宣告接口前指定,因為如果你在宣告之后決定優先級,從接口發送出的Hello包中的優先級並不會改變,所以如果發生了這種情況,可以通過shutdown/undo shutdown命令重啟接口,這樣可以充值OSPFv3的接口狀態機

6.配置Stub路由器

[R1]ospfv3 1 

[R1-ospfv3-1]stub-router [ on-startup <interval>  | <cr>]

##這里的Stub路由器與Stub區域中的成員路由器並沒有關系,而是告知其他路由器不用改stub-router轉發數據,但會擁有一條到達Stub路由器的路由,on-startup參數表示,僅在重啟或故障時保持Stub路由器,保持時間由Interval決定,如果沒有指定Interval,則默認時間為500秒

7.忽略DD報文中的MTU檢查

[R1]ospfv 1

[R1-GigabitEthernet0/0/1]ospfv3 mtu-ignore

##如果MTU值不一樣,鄰居會停留在exstart階段,所以MTU值如果不一樣可以啟用這個

 

https://blog.csdn.net/qq_40478570/article/details/89053603


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM