BGP 筆記

高級路由和FW(firewall)
1、BGP
2、BGP
3、防火牆
4、防火牆
5、防火牆

-----------------------------------------------------------------
***

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

cloud
  linux  

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

三層通信
不同網段之間通訊 - 路由
                     -路由設備
                        #路由器 | 多層交換機
                     -終端設備
                         #配置網關IP
    路由表  vs.  目標IP
      |
      |
      |
      直連路由
      非直連路由
          靜態路由
          動態路由
            IGP(internal): 在一個公司內部使用的一類協議
               距離矢量
                    RIP(v1/2) - 如果使用,僅用 v2
                    IGRP  - 過渡協議,無需理會
                    EIGRP - 僅僅思科設備支持
               鏈路狀態
                    ISIS - 一般應用與運營商內部 或者 數據中心
                    OSPF - 應用於企業內部,最流行的協議;
            EGP(external):在不同的公司之間,使用的一類協議
                    BGP - border gateway protocol
                           邊界    網關     協議

BGP的應用場景:

    公司與運營商之間有多個線路,並且要求對路由進行靈活的
    選路控制;
    可以實現在不同的“運營商”之間長時間的穩定的傳輸大量路由;
        -穩定
           BGP使用的是 TCP 協議;
 -路由問題:
      1、傳輸的路由數量大
      2、需要靈活控制


BGP的特點:
   1、傳輸路由穩定  - 因爲底層使用的是 TCP 協議;
   2、控制路由靈活  - 因爲BGP爲路由賦予了 13 個路由屬性;

舉例:爲了對比說明 BGP 可以爲路由提供更加豐富的路由屬性,從而可以
      實現路由的靈活控制。
                    優先級/度量值
    192.168.1.0/24  [60/100]  via   192.168.100.1    
    192.168.1.0/24  [60/100]  via   192.168.200.1


----------------------------------------------------------------
BGP的工作過程:
   1、建立鄰居表
   2、同步數據庫
   3、計算路由表

AS:autonomous system  - 自治系統
  -定義
     被統一機構或者組織管理的一個區域
  -表示
     通過“數字”進行表示,叫做 “AS號”
     取值:0-65535
  -類型
     私有AS:64512 -- 65535
         任何一個企業,都可以免費使用
         私有 AS 不能在 因特網 上進行傳輸
     公有AS:0 -- 64511
         需要向運營商花錢購買使用
         公有 AS 可以在 因特網 上進行傳輸      




        
------------------------------------------------------
   
BGP鄰居(neighbor):
    -叫法
       對等體(peer)
       
BGP鄰居的類型:
    -內部鄰居,IBGP peer/neighbor
         如果兩個鄰居路由器,位於同一個 AS ;
    -外部鄰居,EBGP peer/neighbor
         如果兩個鄰居路由器,位於不同的 AS ;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BGP鄰居的配置:
1.確保設備之間的連通性(內網路由 - 直連/靜態/動態IGP)
R1:
  interface gi0/0/0
    ip address  192.168.12.1  255.255.255.0
R2:
  interface gi0/0/1
    ip address  192.168.12.2  255.255.255.0

2.配置BGP,指定鄰居
   R1:
      bgp 64512  <--啓用BGP,並指定 AS 爲 64512 ;
        
        peer 192.168.12.2   as-number  64512
               # 指定鄰居的IP地址以及鄰居所在的 AS 號;

   R2:
      bgp 64512  <--啓用BGP,並指定 AS 爲 64512 ;
        
        peer 192.168.12.1   as-number  64512
               # 指定鄰居的IP地址以及鄰居所在的 AS 號;

3.驗證
    display  bgp   peer # 查看 BGP 的鄰居表

 BGP local router ID : 192.168.12.2  # 自己的router-id;
 Local AS number : 64512   # 自己本地的 AS 號;
 Total number of peers : 1          Peers in established state : 1

  Peer         V    AS  MsgRcvd  MsgSent  OutQ  Up/Down State    PrefRcv

192.168.12.1  4  64512  4        4     0 00:02:21    Established    0


總結:
   1.BGP屬於 OSI 第 7 層,使用的是 TCP 179 端口;
   2.BGP連接可以跨越中間設備,直接進行 BGP 鄰居關係的建立;
     bgp 64512
       router-id  x.x.x.x
       peer  192.168.X.X  as-number 64512
    display bgp peer  --> 查看 BGP 鄰居表;

   3.此時建立的鄰居,屬於“直連端口建鄰居”
        弊端:
            端口容易因爲鏈路或者端口的物理故障,導致IP地址失效;
            從而導致 BGP 連接不穩定;
            
        改進:
            通過網絡設備上的穩定的“虛擬端口”,建立 BGP 鄰居關係。
            比如:loopback 。
                     #永遠是 up 的,除非整個設備掛掉;

非直連BGP鄰居關係  --- 即通過 loopback 建立的鄰居關係;
    1.確保IP地址的連通性;
    2.考慮“更新源檢測機制”
        -自己接收的 BGP 報文的源IP地址,必須與自己向對方建
         鄰居時指定的目標IP地址相同。【爲了安全】        
    
R1:
1.確保 IGP 互通;【R1: ping -a  10.10.1.1  10.10.3.3 】
2.配置BGP,滿足更新檢測機制
R1:    bgp 64512
         router-id 1.1.1.1
         peer 10.10.3.3 as-number 64512
         peer 10.10.3.3 connect-interface loopback 13
                # 更改 R1 向 R3 發送 BGP 報文時所使用的源IP;        
    
    
R3:   bgp 64512
          router-id 3.3.3.3
          peer 10.10.1.1 as-number 64512
          peer 10.10.1.1 connect-interface loopback 13    
    
=================================================================

BGP 路由宣告:
    # network
    # import-route
================================================================    
BGP 路由傳遞
    爲了避免路由環路的發生,在內部 BGP 鄰居關係之間,引入了一個
    防環機制:
          IBGP 水平分割
            -從一個內部BGP鄰居收到的路由,不能再發給另外一個內部鄰居
              解決方案:
                 1.所有路由器之間進行“全互聯”,形成BGP鄰居關係;
                       缺點:
                            鄰居數據量太多
                            管理難度大
                            佔用的設備資源非常(都需要TCP鏈接)
                  2.路由反射器
                        -當我們將一個路由器配置爲路由反射器以後,
                         該路由器臨時的“關閉IBGP水平分割機制”。
                        -設備角色
                            #路由反射器       - route reflector 【RR】
                            #路由發射器客戶端 - route reflector client 【RR-C】
                        -轉發路由的原則
                            非C 與 非 C 之間不能傳輸(反射)
            
                        -配置命令:
                            R2:
                               bgp  64512
                                  peer 10.10.1.1 reflect-client
                                     #將10.10.1.1這個鄰居配置成了
                                      路由反射器客戶端,
                                      同時,
                                      自己成爲了“路由反射器”;
                              
=================================================================

實驗目標: PC-1 ----> PC-2

1.配置 PC-1/2 的IP地址和網關IP地址:
    192.168.1.1 255.255.255.0
    192.168.1.254
    
    192.168.2.1  255.255.255.0
    192.168.2.254
2.配置網絡中的 IGP : OSPF
     R1:
        interface loopback 13
          ip address 10.10.1.1 255.255.255.0
        interface gi0/0/0
           ip address 192.168.12.1 255.255.255.0
        interface gi0/0/1
           ip address 192.168.1.254 255.255.255.0
        
        ospf 1 router-id 1.1.1.1
           area 0
             network 192.168.12.0 0.0.0.255
             network 10.10.1.1 0.0.0.0
            
     R2:
        interface loopback 0
          ip address 10.10.2.2 255.255.255.0
        interface gi0/0/0
          ip address 192.168.23.2 255.255.255.0
        interface gi0/0/1
          ip address 192.168.12.2 255.255.255.0
          
        ospf 1 router-id 2.2.2.2
          area 0
            network 10.10.2.2 0.0.0.0
            network 192.168.12.2 0.0.0.0
            network 192.168.23.2 0.0.0.0
     R3 :
        interface loopback 13
          ip address 10.10.3.3 255.255.255.0
        interface gi0/0/1
          ip address 192.168.23.3 255.255.255.0
        interface gi0/0/2
          ip address 192.168.2.254 255.255.255.0
 
        ospf 1 router-id 3.3.3.3
          area 0
            network 10.10.3.3 0.0.0.0
            network 192.168.23.3 0.0.0.0
3.配置網絡中的 BGP
      R1:
        bgp 64512
           router-id 1.1.1.1
           peer 10.10.2.2 as-number 64512
           peer 10.10.2.2 connect-interface loopback 13
           peer 10.10.3.3 as-number 64512
           peer 10.10.3.3 connect-interface loopback 13           
           import-route direct
           
      R2:
        bgp 64512
           router-id 2.2.2.2
           peer 10.10.1.1 as-number 64512
           peer 10.10.1.1 connect-interface loopback 0
           peer 10.10.3.3 as-number 64512
           peer 10.10.3.3 connect-interface loopback 0           
    
      R3:
        bgp 64512
           router-id 3.3.3.3
           peer 10.10.2.2 as-number 64512
           peer 10.10.2.2 connect-interface loopback 13
           peer 10.10.1.1 as-number 64512
           peer 10.10.1.1 connect-interface loopback 13           
           network 192.168.2.0 255.255.255.0    
        
==============================================================
    
IBGP水平分割解決方案:
   1、BGP全互聯
   2、路由反射器  
   3、BGP聯盟


R3:
bgp 64512
 router-id 3.3.3.3
 confederation id 100 <---指定聯盟的大 AS 號;
 confederation peer-as 64513 <---指定聯盟中的鄰居小 AS ;
 peer 10.10.2.2 as-number 64512
 peer 10.10.2.2 connect-interface LoopBack0
 peer 192.168.34.4 as-number 64513
 
R4:
bgp 64513
 router-id 4.4.4.4
 confederation id 100 <---指定聯盟的大 AS 號;
 confederation peer-as 64512 <---指定聯盟中的鄰居小 AS ;
 peer 10.10.5.5 as-number 64513
 peer 10.10.5.5 connect-interface LoopBack0
 peer 192.168.34.3 as-number 64512
    
命令解析:
    當 R4 與 R3 建立鄰居時
      -首先判斷鄰居的類型
           # IBGP鄰居
           # EBGP鄰居           
              比較的是:bgp 64513  和 peer 中的 “as-number 64512”
              兩者不同,所以屬於:
                  EBGP鄰居。
      -判斷該外部鄰居所在的/使用的 AS 號是否與自己在同一個聯盟下
           判斷依據是:
              confederation peer-as 1 2 3 4 64512  
           即,我們需要查看 peer 中的 "as-number 64512" 的 64512
           有沒有出現在 “confederation peer-as” 中 。
               #如果有,R4 向 R3 發送 BGP 報文時,使用的 “小AS” ;
               #如果沒有,R4向 R3 發送 BGP 報文時,使用的是“大AS”;
       - 在對方設備  R3  查看:
            如果 R4 發送的 AS 號 與  R3 的 peer 中使用的 "as-mumner"
            相同,則鄰居建立成功;
            反之,鄰居建立失敗;

故障排查場景恢復:

            
<R3/R4> terminal monitor
<R3/R4> terminal debugging
<R3/R4> debug  bgp  x.x.x.x  all -->查看某一個 BGP 鄰居的 debug 信息
<R3/R4> undo debug all --> 關閉所有的 debug  命令;

    
    (open message error / bad as number )
    
    
    
=================================================================    
    
不同大AS之間傳遞路由時候,我們所學習到的相關知識點:
    
BGP路由傳遞的特點:
   -IBGP鄰居之間傳遞路由,下一跳不變的;
   -EBGP鄰居之間傳遞路由,下一跳是變的;(指的是 大 AS 之間的 EBGP)
    
如果下一跳不變化,有可能導致的問題是:
    BGP路由的下一跳不可達,導致該路由不是最優的,
    所以該路由是不可以使用的(1.不允許放入路由表 ; 2.不允許傳出去)    
    
針對下一跳不變而導致的路由下一跳不可達的問題的解決方案:
    在 AS 的邊界路由器上,對自己的內部鄰居使用以下命令
        
      R6:        
        bgp 200
          peer 10.10.8.8 next-hop-local
                -->將去往 10.10.8.8 鄰居             
                   的路由的下一跳變爲自己(10.10.6.6)
    
---------------------------------------------------------------

1.一個16進制,等價於 4個 2進制;


    16*8 = 128
    
-------------------------------------------------------------
IPv6地址:
   -特點  
       地址空間大 ,通過 128bit 表示;
       安全性高
      
   -表示
       冒號分16進制
       例如:
          2001 : 0410: 0000 :0001: 0000: 0000 :0000  45ff
   -簡寫原則:    
       #針對每一個段,如果最左邊是0,可以省略不寫;
         例如:       
          2001 : 410: 0000 :1: 0000: 0000 :0000  45ff    
       #針對每一個段,如果全是0,則直接用一個0表示;
         例如:       
          2001 : 410: 0 :1: 0000: 0000 :0000  45ff    
       #如果,連續的多個段,全都是0,則直接通過“雙冒號”表示;
        在每一個 IPv6 地址中,雙冒號最多只能有一個;
         例如:       
          2001 : 410: 0 :1   ::  45ff    
   -分類
      單播
        AGUA - 相當於IPv4 中的公網IP地址;
        link-local  , 當我們在鏈路上啓用IPv6以後,地址會自動生成
                       並且是以 FE80:
        site-local ,本地站點地址,相當於我們IPv4 中的 A類中的
                     私有地址;
        special-address , 特殊地址,主要指的是
                             全 0 的 IPv6 地址 -- ::,相當於IPv4的 0.0.0.0 ;
                             本地迴環口地址 -- ::1 ,相當於IPv4 的 127.0.0.1 ;
        與IPv4兼容的IPv6地址:
               即將IPv4變換爲 IPv6的格式,並且放在最後面,
               前面的96bit全部用0表示。
               例如:
                  IPv4 - 10.10.1.1
   
                  IPv6 -  :: 0a0a : 0101    
      
      組播 : IPv6 中的組播,與IPv4 中的組播,意義完全相同。
             IPv6 地址 - 凡是以 FF 開頭的地址,我們稱之爲IPv6的組播地址
                         相當於IPv4中的 組播地址 - 224.X.X.X
             FF01:
             FF02:
             FF05:
      任意播
   
   
   =======================================================
   
   1.爲網絡設備配置IPv6地址;
         #配置接口時,首先得開啓IPv6協議;
         #輸入IPv6 地址 (也可以自動獲取)
   2.爲網絡設備啓用IPv6路由協議;
         #全局啓用IPv6 功能
         #啓用IPv6路由協議(RIPng / OSPFv3 / BGP / ISIS)
         #IPv6的協議,是需要在每個端口上單獨啓用的;
            
   3.測試網絡設備之間的IPv6連通性;
        display ipv6 interface brief
        display ipv6 routing-table
        ping ipv6 -a x.x.x.x y.y.y.y
   
   
   基於上課的拓撲的配置如下:
---------------------------------- R1 ------------------------------

#
ipv6  ----> 全局開啓IPv6功能;

interface GigabitEthernet0/0/0  ----> 爲接口配置IPv6地址;
 ipv6 enable                      # 在接口下開啓IPv6功能;
 ipv6 address 2001:12::1/64
 ripng 1 enable                   # 在接口開啓IPv6路由協議;

#
interface LoopBack0
 ipv6 enable
 ipv6 address 2001::1/128
 ripng 1 enable
#
ripng 1                   ------> 創建並啓用了ripng 功能;


-------------------------------- R2 ---------------------------



ipv6

interface GigabitEthernet0/0/0
 ipv6 enable
 ipv6 address 2001:23::2/64
 ripng 2 enable
#
interface GigabitEthernet0/0/1
 ipv6 enable
 ipv6 address 2001:12::2/64
 ripng 2 enable

#
interface LoopBack0
 ipv6 enable
 ipv6 address 2001::2/100
#
ripng 2
#

-------------------------------- R3 ----------------------------
ipv6

interface GigabitEthernet0/0/1
 ipv6 enable
 ipv6 address 2001:23::3/64
 ripng 3 enable

interface LoopBack0
 ipv6 enable
 ipv6 address 2001::3/128
 ripng 3 enable

ripng 3


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章