雲計算網絡基礎第五天
即在不同的 VLAN 之間,配置好網關設備,確保不同網段互通
實現方案:
路由器
- 每個VLAN均使用一個獨立的路由器接口,配置好網關IP
優點:簡單易懂
缺點:浪費端口
多層交換機
- 為每個 VLAN 配置一個網關IP ,但使用的是邏輯接口;
每一個 VLAN 都對應一個邏輯接口 - interface vlan X
將多層交換機作為網關:
1、開啟路由功能;
SW(config)#ip routing
2、創建/確保 設備有對應的VLAN;
SW(config)#vlan 12
SW(config-vlan)#name CCIE
SW(config)#vlan 34
SW(config-vlan)#name CCNP
3、為每個VLAN配置網關IP地址
SW(config)#interface vlan 12
SW(config-if)#no shutdown
SW(config-if)# ip address x.x.x.x /24
SW(config)#interface vlan 34
SW(config-if)# ip address x.x.x.x /24
4、配置多層交換與級聯交換機的互聯鏈路 - trunk
SW(config)#interface fas0/13
SW(config-if)#no shutdown
SW(config-if)#switchport trunk encapsulation dot1q
SW(config-if)#switchport mode trunk
SW2(config)#interface fas0/13
SW2(config-if)#no shutdown
SW2(config-if)#switchport mode trunk
------------------------------------------------------
註意:
當交換機收到一個帶有標簽(vlan-id)的數據時,
如果本地交換機上沒有該 vlan , 則直接將其丟棄;
交換網絡中的數據流所經過的每一個交換機,必須擁有
相同的 VLAN 數據庫。(即確保全網交換機的VLAN數據庫相同)
交換機的工作原理:
成表:
當交換機在端口上收到一個數據包時,
首先判定入端口屬於的 vlan 號 ,
其次查看數據包中的源MAC地址
然後形成 vlan-id --- MAC 和入端口的對應關系,即
Mac地址表條目: vlan-id - MAC - Port
查表:
當交換機收到數據包之後,
首先,查找入端口所屬於的 vlan 號,
其次,在屬於該 vlan號的 mac-address-table 中查找
目標MAC地址;
如果能夠查到該MAC,則在對應端口轉發;
如果查不到,則向屬於該vlan的其他所有端口
以及 trunk 端口進行轉發;
(入端口除外)
總結:
交換機形成MAC地址表是 : 從左向右;
即,首先形成 vlan-id (數據的入端口屬於的VLAN號)
其次形成 mac-address (通過數據包中的源MAC)
最後查看 port (數據的入端口的號碼)
交換機查找MAC地址表是 : 從左向右;
即,首先查看 vlan-id (數據的入端口屬於的VLAN號)
其次查看 mac-address (通過數據中的目標MAC地址)
最後查看 port
------------------------------------------------------
Flash:
系統 -- IOS
vlan數據庫 -- vlan.dat
delete flash:/vlan.dat
NVRAM:(非易失性內存)
配置文件 -- startup-config
查看文件:
#dir
#dir /all-file-system
--------------------------------------------------------
VLAN 標記協議:
ISL - 思科私有協議;
為數據增加的標簽,長度為30個字節;
802.1q - 公有標準, 主流協議;
為數據增加的標簽,長度為4個字節;
其中12個bit用來表示 vlan,
所有 vlan 的空間大小為 :0--4095,共4096個;
系統保留vlan ; 1 , 1002-1005 ;
重要命令:
show interface fas0/1 switchport
查看的是該端口上所有與 vlan 相關的參數信息;
Trunk 的 vlan 控制:
默認情況下, trunk 上允許所有 vlan 通過;
如果想控制 trunk 上的 vlan 通信,可以使用如下命令:
SW1(config)#interface fas0/23 //進入 trunk 鏈路;
SW1(config-if)#switchport trunk allowed vlan ?
word // 表示的是 vlan 號;
add // 添加特定vlan 都現有的允許列表中;
remove // 將特定的 vlan 在現有允許列表中移除掉;
all // 表示的是該 trunk 鏈路允許所有的 vlan ;
這是默認行為;
例如:
SW1(config)#interface fas0/23 // 此時默認允許所有的 vlan
SW1(config-if)# switchport trunk allowed vlan 120
//輸入該命令後,該trunk僅允許一個vlan 120
SW1(config-if)#switchport trunk allowed vlan add 1
//將vlan 1 添加到現有的允許的vlan列表中,即此時
該trunk鏈路同時允許 1 和 120 兩個 vlan ;
SW1(config-if)#switchport trunk allowed vlan add 12
//將vlan 12 添加到現有的允許的vlan列表中,即此時
該trunk鏈路同時允許 vlan 1\12\120
SW1(config-if)#switchport trunk allowed vlan remove 12
//將 vlan 12 在以上的允許列表中刪除掉,此時的trunk
鏈路僅僅允許 vlan 1 和 120 ;
Trunk - native vlan 修改;
默認情況下,trunk 的native vlan 為 1 ;
該 vlan 中的數據包,經過 trunk 時,不需要標簽;
在該 vlan 中傳輸的數據包一般是交換機之間的管理協議;
所以這種類型的數據極為重要。
出於安全方面考慮,我們更改 trunk 上的native vlan :
SW1(config)#interface fas0/23
SW1(config-if)#switchport trunk native vlan 144
show interface trunk
同時,必須保證該 native vlan 中不能有任何的成員端口
1、必須使用一個不常用的 vlan 作為 native ;
2、兩邊的 native vlan 必須相同;
3、每個交換機上的native vlan 中不能有成員端口;
4、trunk鏈路建議均為手動配置,不能自動配置;
5、同時一定要關閉trunk鏈路上的自動協商功能 ,即關閉DTP
雲計算網絡基礎第五天