作者:lyshark
ACL 訪問控制列表(Access Control Lists),是應(yīng)用在路由器(或三層交換機(jī))接口上的指令列表,用來告訴路由器哪些數(shù)據(jù)可以接收,哪些數(shù)據(jù)是需要被拒絕的,ACL的定義是基于協(xié)議的,它適用于所有的路由協(xié)議,并根據(jù)預(yù)先定義好的規(guī)則對數(shù)據(jù)包進(jìn)行過濾,從而更好的控制數(shù)據(jù)的流入與流出.
NAT 網(wǎng)絡(luò)地址轉(zhuǎn)換(Network Address Translation),是一個互聯(lián)網(wǎng)工程任務(wù)組的標(biāo)準(zhǔn),它可以實現(xiàn)內(nèi)部私有IP地址和公網(wǎng)IP地址的轉(zhuǎn)換,能夠起到節(jié)約公網(wǎng)IP地址的作用,以下將介紹NAT的三種方式,靜態(tài)轉(zhuǎn)換、動態(tài)轉(zhuǎn)換和端口復(fù)用技術(shù).
思科ACL訪問控制
路由器接口的訪問控制取決于應(yīng)用在其上的ACL,數(shù)據(jù)在進(jìn)出網(wǎng)絡(luò)前,路由器會根據(jù)ACL對其進(jìn)行匹配,匹配成功將對數(shù)據(jù)進(jìn)行過濾或者是轉(zhuǎn)發(fā),匹配失敗則丟棄數(shù)據(jù)包,目前主要有三種ACL控制,標(biāo)準(zhǔn)ACL,擴(kuò)展ACL,命名ACL,我們只介紹前兩種.
在路由器上應(yīng)用ACL時,可以為每種協(xié)議,每個端口,每個方向,和每個接口,配置一個ACL,一般稱為3p原則.
標(biāo)準(zhǔn)ACL配置
標(biāo)準(zhǔn)ALCL只能通過源地址進(jìn)行訪問過濾與控制,因此只能阻止/允許來自指定IP地址的訪問請求.
配置交換機(jī): 首先配置交換機(jī),這里開啟3個端口Fa0/1-3,并配置端口速率100.
Switch0> enable Switch0># configure terminal Switch0(config)# interface range fa0/1-3 Switch0(config-if-range)# speed 100 Switch0(config-if-range)# no shutdown Switch0(config-if-range)# exit
配置路由器: 接著配置路由器,開啟路由器的Fa0/0和Fa0/1端口,并配置上網(wǎng)關(guān)地址.
Router0> enable Router0# configure terminal Router0(config)# interface GigabitEthernet 0/0 Router0(config-if)# ip address 192.168.1.254 255.255.255.0 Router0(config-if)# no shutdown Router0(config-if)# exit Router0(config)# interface GigabitEthernet 0/1 Router0(config-if)# ip address 192.168.2.254 255.255.255.0 Router0(config-if)# no shutdown Router0(config-if)# exit
配置標(biāo)準(zhǔn)ACL: 在路由器上配置一條標(biāo)準(zhǔn)的ACL規(guī)則,禁止PC0訪問Server0服務(wù)器.
Router0> enable Router0# configure terminal Router0(config)# access-list 1 deny 192.168.1.1 0.0.0.0 // 拒絕192.168.1.1訪問Server0 Router0(config)# access-list 1 permit any // 設(shè)置默認(rèn)允許所有,兜底操作 Router0(config)# Router0(config)# interface GigabitEthernet 0/0 // 選擇接口Gig0/0 Router0(config-if)# ip access-group 1 in // 將以上配置條目應(yīng)用到當(dāng)前接口上 #Router0(config-if)# ip access-group 1 out // 控制出口流量(可省略)
測試過濾效果: 配置完規(guī)則以后,我們測試一下效果,使用PC0無法訪問server服務(wù)器而是用PC1則可以訪問.
PC0> ping 192.168.2.1 Pinging 192.168.2.1 with 32 bytes of data: Reply from 192.168.1.254: Destination host unreachable. PC1> ping 192.168.2.1 Pinging 192.168.2.1 with 32 bytes of data: Reply from 192.168.2.1: bytes=32 time=0ms TTL=127
這里需要注意一點,如果你有兩個路由器相連,那么ACL規(guī)則應(yīng)該設(shè)置在距離限制的目標(biāo)較近的路由器上,否則可能會出現(xiàn)有效數(shù)據(jù)在到達(dá)目標(biāo)之前就被過濾掉了.
拓展ACL配置
標(biāo)準(zhǔn)ACL只能使用源地址作為匹配條件,無法對訪問進(jìn)行精確的控制,為了解決這一問題,可以采用擴(kuò)展ACL來對數(shù)據(jù)加以限制.
配置交換機(jī): 首先配置交換機(jī),這里開啟4個端口Fa0/1-4,并配置端口速率為100.
Switch0> enable Switch0># configure terminal Switch0(config)# interface range fa0/1-4 Switch0(config-if-range)# speed 100 Switch0(config-if-range)# no shutdown Switch0(config-if-range)# exit
配置路由器: 接著配置路由器,開啟路由器的Fa0/0和Fa0/1端口,并配置上網(wǎng)關(guān)地址.
Router0> enable Router0# configure terminal Router0(config)# interface GigabitEthernet 0/0 Router0(config-if)# ip address 192.168.1.254 255.255.255.0 Router0(config-if)# no shutdown Router0(config-if)# exit Router0(config)# interface GigabitEthernet 0/0 Router0(config-if)# ip address 192.168.2.254 255.255.255.0 Router0(config-if)# no shutdown Router0(config-if)# exit
配置拓展ACL: 配置拓展ACL規(guī)則,禁止PC0訪問192.168.2.1,禁止PC1訪問192.168.2.1主機(jī)的80端口,允許其他所有.
Router0> enable Router0# configure terminal Router0(config)# access-list 100 deny ip host 192.168.1.1 host 192.168.2.1 // 拒絕IP地址 Router0(config)# access-list 100 deny TCP host 192.168.1.2 eq 80 host 192.168.2.1 eq 80 // 拒絕TCP=80 Router0(config)# access-list 100 permit ip any any // 默認(rèn)允許 Router0(config)# interface GigabitEthernet 0/0 // 選擇接口GigabitEthernet 0/0 Router0(config-if)# ip access-group 100 in // 將以上配置條目應(yīng)用到當(dāng)前接口上 Router0(config-if)# ip access-group 100 out // 將以上配置條目應(yīng)用到當(dāng)前接口上 Router0# show access-list // 查詢配置結(jié)果
測試過濾效果: 配置完規(guī)則后測試下,經(jīng)測試PC0無法訪問Server0,而PC1無法訪問目標(biāo)主機(jī)的80端口其他主機(jī)放行.
PC0> ping 192.168.2.1 Pinging 192.168.2.1 with 32 bytes of data: Reply from 192.168.1.254: Destination host unreachable. PC1> ping 192.168.2.1 Pinging 192.168.2.1 with 32 bytes of data: Reply from 192.168.2.1: bytes=32 time=0ms TTL=127
與標(biāo)準(zhǔn)ACL相比,擴(kuò)展ACL能夠更加精確的匹配和過濾數(shù)據(jù)包,因此擴(kuò)展ACL的放置位置應(yīng)該離源地址越近越好,這樣才能夠有效的提高鏈路的使用效率.
思科NAT地址轉(zhuǎn)換
NAT 網(wǎng)絡(luò)地址轉(zhuǎn)換(Network Address Translation),是一個互聯(lián)網(wǎng)工程任務(wù)組的標(biāo)準(zhǔn),它可以實現(xiàn)內(nèi)部私有IP地址和公網(wǎng)IP地址的轉(zhuǎn)換,能夠起到節(jié)約公網(wǎng)IP地址的作用,以下將介紹NAT的三種方式,靜態(tài)轉(zhuǎn)換、動態(tài)轉(zhuǎn)換和端口復(fù)用技術(shù).
NAT技術(shù)中有四種地址即,內(nèi)部本地地址,內(nèi)部全局地址,外部本地地址,外部全局地址.
配置靜態(tài)NAT
靜態(tài)NAT是指將內(nèi)部本地地址與內(nèi)部全局地址進(jìn)行對應(yīng)轉(zhuǎn)換,某個本地地址只能轉(zhuǎn)換為某個全局地址,通過配置靜態(tài)NAT可以實現(xiàn)內(nèi)部網(wǎng)絡(luò)對外部網(wǎng)絡(luò)的訪問,也可以實現(xiàn)外部網(wǎng)絡(luò)對內(nèi)部網(wǎng)絡(luò)中某個設(shè)備的訪問.
配置交換機(jī): 首先配置交換機(jī),這里開啟4個端口Fa0/1-4,并配置端口速率為100.
Switch0> enable Switch0># configure terminal Switch0(config)# interface range fa0/1-4 Switch0(config-if-range)# speed 100 Switch0(config-if-range)# no shutdown Switch0(config-if-range)# exit
配置路由器: 接著配置路由器,開啟路由器的Fa0/0和Se0/0/0端口,并配置上網(wǎng)關(guān)地址.
Router> enable Router# configure terminal #----在Router10上操作------------------------- Router0(config)# interface fa0/0 Router0(config-if)# ip address 192.168.1.1 255.255.255.0 Router0(config-if)# no shutdown Router0(config-if)# exit Router0(config)# interface se0/0/0 Router0(config-if)# ip address 10.10.10.1 255.0.0.0 Router0(config-if)# no shutdown Router0(config-if)# exit #----在Router1上操作------------------------- Router1(config)# interface se0/0/0 Router1(config-if)# ip address 10.10.10.2 255.0.0.0 Router1(config-if)# no shutdown Router1(config-if)# exit
配置靜態(tài)NAT: 在路由器Router0上配置靜態(tài)NAT,將私有地址轉(zhuǎn)為全局地址(內(nèi)網(wǎng)地址-->外網(wǎng)地址).
Router> enable Router# configure terminal Router0(config)# ip nat inside source static 192.168.1.2 10.10.10.20 // 配置NAT條目1 Router0(config)# ip nat inside source static 192.168.1.3 10.10.10.30 // 配置NAT條目2 Router0(config)# ip nat inside source static 192.168.1.4 10.10.10.40 // 配置NAT條目3 Router0(config)# interface fa0/0 // 選擇內(nèi)部端口 Router0(config-if)# ip nat inside // 應(yīng)用到定義的內(nèi)部接口 Router0(config-if)# Router0(config-if)# interface serial0/0/0 // 選擇外部接口 Router0(config-if)# ip nat outside // 應(yīng)用到定義的外部接口 Router0(config-if)# exit
查詢NAT配置: 配置完成后,我們可以使用show ip nat translation命令,來查詢端口情況.
Router0# show ip nat translation Pro Inside global Inside local Outside local Outside global --- 10.10.10.20 192.168.1.2 --- --- --- 10.10.10.30 192.168.1.3 --- --- --- 10.10.10.40 192.168.1.4 --- ---
測試通信情況: 此時測試下通信情況,在PC0-PC2主機(jī)可Ping通Router1,同樣Router1可Ping通PC0-PC2.
PC0> ping 10.10.10.2 Pinging 10.10.10.2 with 32 bytes of data: Reply from 10.10.10.2: bytes=32 time=1ms TTL=254 Router1# ping 10.10.10.20 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.10.10.20, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/5/9 ms
回到頂部
配置動態(tài)NAT
動態(tài)NAT是指內(nèi)部本地地址與內(nèi)部全局地址進(jìn)行轉(zhuǎn)換時,內(nèi)部地址可以隨機(jī)轉(zhuǎn)換為指定的外部全局地址,此過程是動態(tài)分配的不需要認(rèn)為干預(yù),從而減少了配置的工作量.
但需要注意的是,配置動態(tài)NAT只能實現(xiàn)內(nèi)部網(wǎng)絡(luò)對互聯(lián)網(wǎng)的訪問,無法實現(xiàn)互聯(lián)網(wǎng)中的主機(jī)對內(nèi)部網(wǎng)絡(luò)中的主機(jī)的訪問,也就是說,它是一種單向的NAT技術(shù).
清除NAT列表: 動態(tài)NAT的配置我們同樣適用上面的拓?fù)鋱D,只是在NAT的配置上有些小改動.
Router0# clear ip nat translation * // 清除動態(tài)NAT轉(zhuǎn)換列表 Router0# show ip access-list // 顯示ACL配置信息 Router0# show ip nat statistics // 查看NAT轉(zhuǎn)換統(tǒng)計信息 Router0# clear ip nat statistics // 清除NAT轉(zhuǎn)換統(tǒng)計信息
配置交換機(jī): 首先配置交換機(jī),這里開啟4個端口Fa0/1-4,并配置端口速率為100.
Switch0> enable Switch0># configure terminal Switch0(config)# interface range fa0/1-4 Switch0(config-if-range)# speed 100 Switch0(config-if-range)# no shutdown Switch0(config-if-range)# exit
配置路由器: 接著配置路由器,開啟路由器的Fa0/0和Se0/0/0端口,并配置上網(wǎng)關(guān)地址.
Router> enable Router# configure terminal #----在Router0上操作------------------------- Router0(config)# interface fa0/0 Router0(config-if)# ip address 192.168.1.1 255.255.255.0 Router0(config-if)# no shutdown Router0(config-if)# exit Router0(config)# interface se0/0/0 Router0(config-if)# ip address 10.10.10.1 255.0.0.0 Router0(config-if)# no shutdown Router0(config-if)# exit #----在Router1上操作------------------------- Router1(config)# interface se0/0/0 Router1(config-if)# ip address 10.10.10.2 255.0.0.0 Router1(config-if)# no shutdown Router1(config-if)# exit
配置動態(tài)NAT: 這里分配外網(wǎng)IP范圍是10.10.10.20-40,內(nèi)部地址范圍是192.168.1.0/24,并綁定好接口.
Router0> enable Router0# configure terminal Router0(config)# ip nat pool NAT 10.10.10.20 10.10.10.40 netmask 255.0.0.0 //定義內(nèi)部全局IP地址池 Router0(config)# access-list 1 permit 192.168.1.0 0.0.0.255 // 定義可轉(zhuǎn)換的內(nèi)部本地IP地址 Router0(config)# ip nat inside source list 1 pool NAT //配置動態(tài)NAT映射,將NAT地址池與ACL關(guān)聯(lián) Router0(config)# interface fa0/0 // 配置內(nèi)部端口 Router0(config-if)# ip nat inside Router0(config-if)# interface serial0/0/0 // 配置外部端口 Router0(config-if)# ip nat outside Router0(config-if)# no shutdown
查詢NAT配置: 配置完成后,我們可以使用show ip nat translation命令,來查詢端口情況.
Router0# show ip nat translation Pro Inside global Inside local Outside local Outside global icmp 10.10.10.21:5 192.168.1.3:5 10.10.10.2:5 10.10.10.2:5 icmp 10.10.10.21:6 192.168.1.3:6 10.10.10.2:6 10.10.10.2:6 icmp 10.10.10.22:9 192.168.1.3:9 10.10.10.2:9 10.10.10.2:9 icmp 10.10.10.23:10 192.168.1.2:10 10.10.10.2:10 10.10.10.2:10
多路復(fù)用PAT
端口多路復(fù)用即端口地址轉(zhuǎn)換(PAT,Port Address Translation),是指將內(nèi)部本地IP地址動態(tài)的轉(zhuǎn)換為單一的內(nèi)部全局IP地址和端口號,內(nèi)部全局IP地址只是用一個,而不是一組地址池,也就是一個IP地址綁定多個端口,從而更大的節(jié)約了IP地址的資源短缺.
配置交換機(jī): 首先配置交換機(jī),這里開啟4個端口Fa0/1-4,并配置端口速率為100.
Switch0> enable Switch0># configure terminal Switch0(config)# interface range fa0/1-4 Switch0(config-if-range)# speed 100 Switch0(config-if-range)# no shutdown Switch0(config-if-range)# exit
配置路由器: 接著配置路由器,開啟路由器的Fa0/0和Se0/0/0端口,并配置上網(wǎng)關(guān)地址.
Router> enable Router# configure terminal #----在Router0上操作------------------------- Router0(config)# interface fa0/0 Router0(config-if)# ip address 192.168.1.1 255.255.255.0 Router0(config-if)# no shutdown Router0(config-if)# exit Router0(config)# interface se0/0/0 Router0(config-if)# ip address 10.10.10.1 255.0.0.0 Router0(config-if)# no shutdown Router0(config-if)# exit #----在Router1上操作------------------------- Router1(config)# interface se0/0/0 Router1(config-if)# ip address 10.10.10.2 255.0.0.0 Router1(config-if)# no shutdown Router1(config-if)# exit
配置多路復(fù)用PAT: 在路由器Router0上配置PAT,多路復(fù)用.
Router> enable Router# configure terminal Router0(config)# ip nat pool PAT 10.10.10.10 10.10.10.10 netmask 255.0.0.0 // 定義外網(wǎng)IP地址 Router0(config)# access-list 1 permit 192.168.1.0 0.0.0.255 // 定義ACL Router0(config)# ip nat inside source list 1 pool PAT overload // 將地址池與ACL綁定 Router0(config)# interface fa0/0 // 定義連接內(nèi)部網(wǎng)絡(luò)的接口 Router0(config-if)# ip nat inside Router0(config-if)# interface serial0/0/0 // 定義鏈接外部網(wǎng)絡(luò)的接口 Router0(config-if)# ip nat outside
查詢配置地址表: 最后可以檢測一下是否能夠連接到內(nèi)部與外部的主機(jī).
Router#show ip nat translations Pro Inside global Inside local Outside local Outside global icmp 10.10.10.10:1024 192.168.1.4:1 10.10.10.2:1 10.10.10.2:1024 icmp 10.10.10.10:1025 192.168.1.2:8 10.10.10.2:8 10.10.10.2:1025 icmp 10.10.10.10:1027 192.168.1.3:1 10.10.10.2:1 10.10.10.2:1027
-
交換機(jī)
+關(guān)注
關(guān)注
21文章
2640瀏覽量
99646 -
路由器
+關(guān)注
關(guān)注
22文章
3732瀏覽量
113788 -
NAT
+關(guān)注
關(guān)注
0文章
145瀏覽量
16244 -
思科
+關(guān)注
關(guān)注
0文章
299瀏覽量
32209 -
ACL
+關(guān)注
關(guān)注
0文章
61瀏覽量
11979
原文標(biāo)題:思科設(shè)備ACL與NAT技術(shù),理論結(jié)合實驗!
文章出處:【微信號:網(wǎng)絡(luò)技術(shù)干貨圈,微信公眾號:網(wǎng)絡(luò)技術(shù)干貨圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論