NAT轉換、VLAN與Trunk(特典:ACL初步)
一、NAT(網路地址轉換)
即公有地址轉換為私有地址
私有地址段(非公網地址,即公網不識別)
A 10.0.0.0 10.255.255.255
B 172.16.0.0 172.31.255.255
C 192.168.0.0 192.168.255.255
NAT轉換的方式:
一對一轉換(靜態NAT):即IP對IP(用於伺服器掛載公網)
多對一轉換(動態NAT):即IP叢集對公網的藉口(用於使用者寬頻上網)
NAT基本語法:
ip nat inside(內網) source(源) 源的方式 指向外網的方式(介面或IP)
源的方式一般有兩個:ACL列表和static靜態IP地址
靜態NAT指向外網的方式一般是IP
動態NAT指向外網的方式一般是介面
做NAT轉換的一般步驟(思路):
針對靜態NAT: ip nat inside source static 內網地址 外網地址
進入處於外網的介面:ip nat outside
進入處於內網的藉口:ip nat inside
針對動態NAT: access-list 10 permit IP地址(建立一條允許訪問的ACL記錄)
ip nat inside source list 10 int f0/1(指向所處外網的介面)
進入處於外網的介面:ip nat outside
進入處於內網的介面:ip nat inside
情景例項:
要求:PC能夠訪問伺服器上的網頁(伺服器已開啟HTTP服務)
詳細配置:
1. 配置計算機和伺服器的IP地址
2. 路由器各個介面配上要求的IP地址(程式碼不做展示)
3. R2路由器做靜態NAT
ip nat inside source static 10.1.1.2 111.1.1.2
int f0/0(外網介面)
ip nat outside
int f0/1(內網介面)
ip nat inside
4. R1路由器做動態NAT
access-list 10 permit 10.1.1.1
access-list 10 permit 10.1.1.2
ip nat inside source list 10 int f0/1
int f0/0(內網介面)
ip nat inside
int f0/1(外網介面)
ip nat outside
驗證:PC訪問111.1.1.2即可(因為做靜態NAT時伺服器的內網IP轉換到了公網的指定IP)
二、VLAN與Trunk
VLAN(虛擬區域網):
即由交換機組成一個網路,預設情況下交換機的所有介面都在一個VLAN中(即VLAN1)
將交換機的介面從原來的VLAN1遷移到其他VLAN內,稱作VLAN的劃分
當終端裝置連線不同VLAN時,相當於網路被邏輯層面分割
檢視VLAN表:show vlan brief
建立VLAN:vlan XX(XX代表VLAN號)
將介面劃入相應的VLAN:
進入埠後:switchport mode access
Switchport access vlan xx
Trunk(中繼):
即允許多個VLAN經過交換機的介面,其直接目的是為了使交換機做級聯
情景例項:
下面我們就通過這個實驗拓撲來直觀的講下VLAN和trunk
(一張圖搞懂VLAN和Trunk)
如圖所示:
PC0一直到PC7共八臺主機,其中PC0到PC3四臺主機連到了交換機SW1中,其餘四臺連到了交換機SW2中,八臺主機都設定好了IP地址,且保證在一個網段裡。
由於我們對交換機未作任何設定,並且八臺主機都在一個網段,那麼我們可以保證八臺主機是可以相互通訊的(VLAN1)
實驗一:按照拓撲右上角的資訊將每臺主機劃分到相應的VLAN中
首先對SW1進行設定:
(首先建立VLAN)
vlan 10
vlan 20
進入主機聯入交換機的相應介面,做如下設定:
int f0/1;int f0/2;int f0/3;int f0/4 //(或者用簡便指令:int range f0/1-4)
switchport mode access
switchport access vlan 10;switchport access vlan 20
交換機SW2的指令和SW1幾乎一致!
完成實驗一後,我們發現:
SW1中連線的PC0和PC1;PC2和PC3能互相通訊(SW2也一樣)
但PC0,PC1卻不能與PC2,PC3互相通訊
虛擬區域網(VLAN)起到了作用,效果拔群!
同時我們發現SW1下的VLAN10,VLAN20還是不能與SW2下的VLAN10,VLAN20進行通訊
那麼我怎麼樣才能使之相互通訊呢?
這就要用到Trunk中繼技術了
實驗二:SW1與SW2設定級聯
SW1和SW2用交叉線連線(其實現在的技術不在乎用直通線或交叉線了,因為現在的網絡卡都自帶了自適應的功能),然後每臺交換機進入級聯介面輸入以下指令:
switchport mode trunk
完成實驗二後,我們發現:
SW1中的VLAN10能和SW2中的VLAN10進行通訊(VLAN20同理)
Trunk起到了作用,效果依舊拔群!(笑)
特典:ACL簡介
ACL訪問控制列表的主要功能是匹配感興趣的資料流(主要是針對IP地址)和匹配路由資訊(IP),其型別有兩種:標準和擴充套件(訪問列表所對應的序號分別為1~99及100~199),兩種ACL的訪問動作都為deny和permit(拒絕和允許)。
ACL在預設的情況下,其內容都屬於“白名單”模式,即預設所有的ACL表最後的語句都自帶了deny all語句。
標準語法:
1. access-list (標準ACL)
命令格式: access-list 訪問控制列表序號 訪問動作 {source [萬用字元掩碼] | any}
其中: 控制列表序號為1~99(標準ACL)
訪問動作:permit和deny
source指明瞭該條控制列表規則應用的源IP地址
萬用字元原始碼:即反掩碼(以後另開一篇文章好好講下)
如果在末尾加上引數any,說明此時所有的地址都是匹配這條ACL的
2. access-list (擴充套件ACL)
命令格式: access-list 訪問控制列表序號 訪問動作 所使用的協議 {source [萬用字元掩碼] destination [萬用字元掩碼] | any} eq 埠號(或服務名)
其中: 控制列表序號為100~199(擴充套件ACL)
訪問動作:permit和deny
source指明瞭該條控制列表規則應用的源IP地址
destination指明瞭該條控制列表規則應用的目標IP地址
3. ip access-group
命令格式:ip access-group 控制列表序號 針對流量點
其中: 控制列表序號是之前建立的,我們進入介面後要進行呼叫
針對流量點有兩個:in和on(即入口和出口)
下面,我們通過幾個例項來簡單介紹下ACL的應用:
例項:
1. 不允許1.1.1.1訪問伺服器(標準ACL):
acess-list 10 permit any
access-list 10 deny 1.1.1.1 //策略實施
int f0/0
ip access-group 9 in //對介面進行指令生效
2. 1.1.1.2訪問伺服器,只能http訪問,其他方式無效(擴充套件ACL):
access-list 100 permit tcp host 1.1.1.2 host 2.2.2.1 eq 80
//80埠是HTTP的服務埠,tcp是HTTP的應用服務
int f0/1
ip access-group 100 on