華為設備ACL與NAT技術


ACL 訪問控制列表(Access Control Lists),是應用在路由器(或三層交換機)接口上的指令列表,用來告訴路由器哪些數據可以接收,哪些數據是需要被拒絕的,ACL的定義是基於協議的,它適用於所有的路由協議,並根據預先定義好的規則對數據包進行過濾,從而更好的控制數據的流入與流出.

文字描述,摘抄自《網絡設備配置與管理》精簡內容,部分內容來自華為(HCIP認證》課程筆記,適合學習面試,其中的架構圖,與搭建流程為自己規划並實驗的。

NAT 網絡地址轉換(Network Address Translation),是一個互聯網工程任務組的標准,它可以實現內部私有IP地址和公網IP地址的轉換,能夠起到節約公網IP地址的作用,以下將介紹NAT的三種方式,靜態轉換、動態轉換和端口復用技術.

華為ACL訪問控制

路由器接口的訪問控制取決於應用在其上的ACL,數據在進出網絡前,路由器會根據ACL對其進行匹配,匹配成功將對數據進行過濾或者是轉發,匹配失敗則丟棄數據包,目前主要有三種ACL控制,標准ACL,擴展ACL,命名ACL,我們只介紹前兩種.

在路由器上應用ACL時,可以為每種協議,每個端口,每個方向,和每個接口,配置一個ACL,一般稱為3p原則.

◆標准ACL配置◆

標准ALCL只能通過源地址進行訪問過濾與控制,因此只能阻止/允許來自指定IP地址的訪問請求.

配置路由器: 接着配置路由器,開啟路由器的Eth0/0/0和Eth0/0/1端口,並配置上網關地址.

<Huawei> system-view
[Huawei]interface GigabitEthernet 0/0/0
[Huawei-GigabitEthernet0/0/0] ip address 192.168.1.254 255.255.255.0
[Huawei-GigabitEthernet0/0/0] quit

[Huawei]interface GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1] ip address 192.168.2.254 255.255.255.0
[Huawei-GigabitEthernet0/0/1] quit

配置拒絕ACL規則: 這里我們在路由器上配置一條標准的ACL規則,禁止PC1訪問Server1服務器.

<Huawei>system-view
[Huawei] acl 2000                                                 // 指定一個序號 2000-2999
[Huawei-acl-basic-2000] rule deny source 192.168.1.1 0.0.0.0      // 拒絕源地址訪問
[Huawei-acl-basic-2000] rule deny source 192.168.1.1 0.0.0.255    // 拒絕整個網段
[Huawei-acl-basic-2000] rule permit source 192.168.1.1 0.0.0.0    // 允許源地址訪問
[Huawei-acl-basic-2000] quit

[Huawei] interface GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1] traffic-filter outbound acl 2000   // 在出口方向應用規則
[Huawei-GigabitEthernet0/0/1] traffic-filter inbound acl 2000    // 在入口方向應用規則

測試過濾效果: 配置完規則以后,我們測試一下效果,使用PC1無法訪問Server1服務器而是用PC2則可以訪問.

PC1> ping 192.168.2.1
Request timeout!
Request timeout!

PC2> ping 192.168.2.1
From 192.168.2.1: bytes=32 seq=1 ttl=254 time=47 ms
From 192.168.2.1: bytes=32 seq=1 ttl=254 time=47 ms

這里需要注意一點,如果你有兩個路由器相連,那么ACL規則應該設置在距離限制的目標較近的路由器上,否則可能會出現有效數據在到達目標之前就被過濾掉了.

◆拓展ACL配置◆

標准ACL只能使用源地址作為匹配條件,無法對訪問進行精確的控制,為了解決這一問題,可以采用擴展ACL來對數據加以限制,接下來我們將配置擴展ACL,其拓撲結構圖還是使用上圖.

配置路由器: 接着配置路由器,開啟路由器的Eth0/0/0和Eth0/0/1端口,並配置上網關地址.

<Huawei> system-view
[Huawei]interface GigabitEthernet 0/0/0
[Huawei-GigabitEthernet0/0/0] ip address 192.168.1.254 255.255.255.0
[Huawei-GigabitEthernet0/0/0] quit

[Huawei]interface GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1] ip address 192.168.2.254 255.255.255.0
[Huawei-GigabitEthernet0/0/1] quit

配置禁止ICMP: 禁止192.168.1.1訪問192.168.2.1icmp協議.

<Huawei> system-view
[Huawei] acl 3000
[Huawei-acl-adv-3000] rule deny icmp source 192.168.1.1 0 destination 192.168.2.1 0

[Huawei] interface GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1]
[Huawei-GigabitEthernet0/0/1] traffic-filter outbound acl 3000
[Huawei-GigabitEthernet0/0/1] quit

[Huawei] display acl all
 Total quantity of nonempty ACL number is 1 
 rule 5 deny icmp source 192.168.1.1 0 destination 192.168.2.1 0 (27 matches)

禁止指定端口: 禁止TCP協議,的源地址192.168.1.1目標地址192.168.2.1,端口號80的協議.

<Huawei> system-view
[Huawei] acl 3000
[Huawei-acl-3000] rule deny tcp source 192.168.1.1 0 destination 192.168.2.1 0 destination-port eq 80

[Huawei] interface GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1]
[Huawei-GigabitEthernet0/0/1] traffic-filter outbound acl 3000

[Huawei]display acl all
 Total quantity of nonempty ACL number is 1 
 rule 5 deny icmp source 192.168.1.1 0 destination 192.168.2.1 0 (27 matches)

測試過濾效果: 配置完規則以后,我們測試一下效果,使用PC1無法訪問Server1服務器而是用PC2則可以訪問.

PC1> ping 192.168.2.1
Request timeout!
Request timeout!

PC2> ping 192.168.2.1
From 192.168.2.1: bytes=32 seq=1 ttl=254 time=47 ms
From 192.168.2.1: bytes=32 seq=1 ttl=254 time=47 ms

與標准ACL相比,擴展ACL能夠更加精確的匹配和過濾數據包,因此擴展ACL的放置位置應該離源地址越近越好,這樣才能夠有效的提高鏈路的使用效率.

華為NAT地址轉換

NAT 網絡地址轉換(Network Address Translation),是一個互聯網工程任務組的標准,它可以實現內部私有IP地址和公網IP地址的轉換,能夠起到節約公網IP地址的作用,以下將介紹NAT的三種方式,靜態轉換、動態轉換和端口復用技術.

NAT技術中有四種地址即,內部本地地址,內部全局地址,外部本地地址,外部全局地址.

◆配置靜態NAT◆

靜態NAT是指將內部本地地址與內部全局地址進行對應轉換,某個本地地址只能轉換為某個全局地址,通過配置靜態NAT可以實現內部網絡對外部網絡的訪問,也可以實現外部網絡對內部網絡中某個設備的訪問.

配置路由器: 配置路由器,開啟R1路由器的Eth0/0/0Ser0/0/0端口,並配置上網關地址.

# ----配置R1路由器-----------------------------
<R1> system-view
[R1] interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0] ip address 192.168.1.1 255.255.255.0
[R1-Ethernet0/0/0] quit
[R1] interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1] ip address 10.10.10.1 255.0.0.0
[R1-Ethernet0/0/0] quit

# ----配置R2路由器-----------------------------
<R2> system-view
[R2] interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0] ip address 10.10.10.2 255.0.0.0
[R2-Ethernet0/0/0] quit

配置靜態NAT: 在路由器R1上配置靜態NAT,將私有地址轉為全局地址(內網地址-->外網地址).

[R1] interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1] nat static enable   //啟用靜態nat
[R1-GigabitEthernet0/0/1] quit

[R1] interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1] nat static global 10.10.10.20 inside 192.168.1.2
[R1-GigabitEthernet0/0/1] nat static global 10.10.10.20 inside 192.168.1.2
[R1-GigabitEthernet0/0/1] nat static global 10.10.10.20 inside 192.168.1.2

查詢NAT配置: 配置完成后,使用display nat static 命令可以查詢端口情況.

[R1] display nat static

  Static Nat Information:
  Interface  : GigabitEthernet0/0/1
    Global IP/Port     : 10.10.10.20/---- 
    Inside IP/Port     : 192.168.1.2/----
    Protocol : ----     
    VPN instance-name  : ----                            
    Acl number         : ----
    Netmask  : 255.255.255.255 
    Description : ----

  Total :    1

測試通信情況: 此時在PC1主機可Ping通R2路由器.

PC1> ping 10.10.10.2

Ping 10.10.10.2: 32 data bytes, Press Ctrl_C to break
From 10.10.10.2: bytes=32 seq=1 ttl=254 time=47 ms

--- 10.10.10.2 ping statistics ---
  1 packet(s) transmitted
  1 packet(s) received
  0.00% packet loss
  round-trip min/avg/max = 47/47/47 ms

◆配置動態NAT◆

動態NAT是指內部本地地址與內部全局地址進行轉換時,內部地址可以隨機轉換為指定的外部全局地址,此過程是動態分配的不需要認為干預,從而減少了配置的工作量.

但需要注意的是,配置動態NAT只能實現內部網絡對互聯網的訪問,無法實現互聯網中的主機對內部網絡中的主機的訪問,它是一種單向的NAT技術.

動態NAT是在出口路由器上做了一個地址池,內網PC訪問外網時會從地址池內獲取一個公網IP,此種技術也無法節約公網IP地址資源,接下來還是使用上面的拓撲圖,但需要清空規則.

配置路由器: 配置路由器,開啟R1路由器的Eth0/0/0Ser0/0/0端口,並配置上網關地址.

# ----配置R1路由器-----------------------------
<R1> system-view
[R1] interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0] ip address 192.168.1.1 255.255.255.0
[R1-Ethernet0/0/0] quit
[R1] interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1] ip address 10.10.10.1 255.0.0.0
[R1-Ethernet0/0/0] quit

# ----配置R2路由器-----------------------------
<R2> system-view
[R2] interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0] ip address 10.10.10.2 255.0.0.0
[R2-Ethernet0/0/0] quit

配置動態NAT: 在路由器R1上配置動態NAT,將私有地址轉為全局地址(內網地址-->外網地址).

[R1] nat address-group 1 10.10.10.20 10.10.10.40                 // 創建公網地址池
[R1] acl 2000                                                    // 定義訪問控制列表
[R1-acl-basic-2000] rule permit source 192.168.1.0 0.0.0.255     // 定義ACL列表
[R1-acl-basic-2000] quit

[R1] interface GigabitEthernet 0/0/1

// 將ACL與地址池關聯,no-pat表示不可反復使用
[R1-GigabitEthernet0/0/1] nat outbound 2000 address-group 1 no-pat

// 將ACL與地址池關聯,可反復使用
[R1-GigabitEthernet0/0/1] nat outbound 2000 address-group 1

拓展(端口映射): 將內網的192.168.1.1:8080映射到外網的10.10.10.1:80,配置如下.

[R1] interface GigabitEthernet 0/0/1
[R1] nat server protocol tcp global 10.10.10.1 80 inside 192.168.1.1 8080

測試通信情況: 此時在PC1主機可Ping通R2路由器.

PC1> ping 10.10.10.2

Ping 10.10.10.2: 32 data bytes, Press Ctrl_C to break
From 10.10.10.2: bytes=32 seq=1 ttl=254 time=47 ms

--- 10.10.10.2 ping statistics ---
  1 packet(s) transmitted
  1 packet(s) received
  0.00% packet loss
  round-trip min/avg/max = 47/47/47 ms


免責聲明!

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



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