第1章 交換基礎
1.1 園區網分層結構
層次 |
作用 |
出口層 |
廣域網接入 出口策略 帶寬控制 |
核心層 |
高速轉發 服務器接入 路由選擇 |
匯聚層 |
流量匯聚 鏈路冗余 設備冗余 路由選擇 |
接入層 |
用戶接入 接入安全 訪問控制 |
1.2 交換機的主要功能
MAC地址表 address learning
轉發和過濾的決策forward/filter decision
環路的避免 loop avoidance
1.3 MAC地址
MAC地址有48位,通常被表示為點分十六進制
MAC地址全球唯一,由IEEE對這些地址進行管理和分配。
每個地址由兩部分組成,分別是供應商和序列號。其中前24位二進制代表該供應商代碼,剩下的24位由廠商自己分配
1.4 交換尋址
初始狀態mac地址表為空
第一次會泛洪數據幀
第2章 VLAN 虛擬局域網
2.1 vlan概述
分段性、靈活性、安全性
將交換機的端口進行vlan划分(划分不同的廣播域)
通過十進制數進行標識
2.2 vlan的成員模式
分類 |
方式 |
靜態vlan(Static Vlan) |
交換機上的端口以手動方式分配給Vlan |
動態Vlan(Dynamic VLAN) |
使用VMPS可以根據連接到交換機端口的設備源MAC地址,動態地將端口分配給VLAN |
語音Vlan(Voice VLAN) |
將端口配置到語音模式可以使端口支持連接到該端口的IP電話 |
2.3 trunk干道
當一條鏈路需要承載多vlan信息的時候,需要使用trunk來實現
一般見於交換機之間或交換機與路由器之間
2.3.1 ISL封裝協議(使用較少)
Ø 通過硬件(ASLC)實現
Ø ISL標識不會出現在工作站,客戶端並不知道ISL的封裝新信息
Ø 在交換機或路由器 與交換機之間,在交換機與具有ISL網卡的服務器之間可以實現
ISL頭部26bytes
2.3.2 dot1q協議(801.1q)
數據包格式
802.1q 並非實際封入原始幀中。相反,在以太網幀格式里,在MAC地址源與以太網類型/長度的原始幀里添加一個32位的域(field)。VLAN標簽領域必須遵守下列格式:
16 bits |
3 bits |
1 bit |
12 bits |
TPID 標簽協議識別符 |
PCP 優先權代碼點 |
CFI 標准格式指示 |
VID 虛擬局域網識別符 |
2.4 VLAN的特點
1) 一個vlan中所有的設備都在同一廣播域內,廣播不能跨越VLAN傳播
2) 一個Vlan為一個邏輯子網,由被配置為此VLAN成員的設備組成,不同vlan間需要通過路由器實現互相通訊
3) vlan中成員多基於switch端口號碼,划分vlan就是對switch接口划分
4) vlan工作與OSI參考模型的第二層
2.5 cisco上vlan范圍
VLAN號 |
用途 |
0、4095 |
保留 |
1 |
cisco交換機端口默認屬於VLAN1 不能刪除 |
2-1001 |
用於以太網VLAN |
1002-1005 |
思科缺省用於FDDI、Token Ring網 |
1006-4094 |
擴展VLAN,用於以太網VLAN,在一些很老的平台上不支持 |
2.6 VTP (VLAN Trunking Protocol)
一個能夠宣告VLAN配置信息的信息系統
通過一個共有的管理域,維持vlan配置信息的一致性
VTP只能在主干端口(Trunk)發送要宣告的信息
支持混合的介質主干連接(快速以太網,fddi,atm)
2.6.1 vlan使用過程
創建vlan
確立vlan之間的關系
2.6.2 vtp三種模式
模式 |
功能 |
sever |
創建VLAN、修改vlan、刪除vlan 發送/轉發信息宣告、同步 存儲在NVRAM中、Catalyst交換機默認使sever模式 |
client |
同步 發送/轉發信息宣告 不會存儲與NVRAM |
Transparent |
創建VLAN、修改vlan、刪除vlan 轉發、信息宣告、不同步 存儲於NVRAM |
2.6.3 VTP的運作
l VTP協議通過組播地址01-00-0C-CC-CC-CC在Trunk鏈路上發送VTP通告
l VTP Sever和Clients 通過最高的修改定號來同步數據庫
l VTP協議沒隔5分鍾發送一次VTP通告或者有變化時發送
2.6.4 VTP的修剪 Pruning
2.6.4.1 允許所有vlan通過會有什么缺點呢?
你的接入層交換機上明明是沒有這個vlan的業務,但是由於trunk鏈路允許的所有vlan通過,一些其他vlan的廣播流量,組播流量,未知單播泛洪流量也莫名的轉發到這台交換機上,造成沒有必要的帶寬資源浪費,增加了廣播域的影響范圍。
2.7 VLAN基本配置
2.7.1 創建VLAN信息
S-vlan-1(config)# vlan 2
S-vlan-1(config)# name vlan2
2.7.2 將端口划入特定的vlan
S-vlan-1(config)# interface fa 0/1
S-vlan-1(config-if)#switchport mode access
S-vlan-1(config-if)#switchport access vlan [vlan vlan# | dynamic]
2.7.3 配置Trunk封裝方式
S-vlan-1(config)# interface fa 0/15
S-vlan-1(config)# switchport trunk encapsulation {ISL|dot1q|negotiate}
2.7.4 開啟端口
S-vlan-1(config)# switchport mode{dynamic {auto|desirable}|trunk}
2.8 VTP的基本配置
S-vlan-1#configure terminal
S-vlan-1(config)#vtp mode ?
client Set the device to client mode.
server Set the device to server mode.
transparent Set the device to transparent mode.
S-vlan-1(config)#vtp domain ?
WORD The ascii name for the VTP administrative domain.
S-vlan-1(config)#vtp password ?
WORD The ascii password for the VTP administrative domain.
2.8.1 注意:
ü 默認情況:VTP模式為sever
ü VTP域名有大小寫敏感
ü VTP密碼大小寫敏感
ü VTP修剪默認關閉
ü 查看vtp 狀態 :show vtp status
2.9 【實驗】vlan
2.9.1 拓撲圖
2.9.2 交換機配置
S-vlan-1上vlan配置
S-vlan-1(config)#vlan 10
S-vlan-1(config-vlan)#name VLAN10
S-vlan-1(config)#interface f 0/1
S-vlan-1(config-if)#switchport mode access
S-vlan-1(config-if)#switchport access vlan 10
S-vlan-1(config)#vlan 20
S-vlan-1(config-vlan)#name VLAN20
S-vlan-1(config)#interface fastEthernet 0/2
S-vlan-1(config-if)#switchport mode access
S-vlan-1(config-if)#switchport access vlan 20
S-vlan-2上VLAN配置
S-vlan-2(config)#vlan 10
S-vlan-2(config-vlan)#name VLAN10
S-vlan-2(config)#interface fastEthernet 0/1
S-vlan-2(config-if)#switchport mode access
S-vlan-2(config-if)#switchport access vlan 10
S-vlan-2(config)#vlan 20
S-vlan-2(config-vlan)#name VLAN20
S-vlan-2(config)#interface fastEthernet 0/2
S-vlan-2(config-if)#switchport mode access
S-vlan-2(config-if)#switchport access vlan 20
trunk鏈路配置
S-vlan-1:
S-vlan-1(config)#interface gigabitEthernet 0/1
S-vlan-1(config-if)#switchport mode trunk
S-vlan-1(config-if)#switchport trunk allowed vlan all
S-vlan-1:
S-vlan-2(config)#interface gigabitEthernet 0/1
S-vlan-2(config-if)#switchport mode trunk
S-vlan-2(config-if)#switchport trunk allowed vlan all
2.9.3 查看vlan信息
2.9.3.1 S-vlan-1信息
S-vlan-1#show vlan brief
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Fa0/3, Fa0/4, Fa0/5, Fa0/6
Fa0/7, Fa0/8, Fa0/9, Fa0/10
Fa0/11, Fa0/12, Fa0/13, Fa0/14
Fa0/15, Fa0/16, Fa0/17, Fa0/18
Fa0/19, Fa0/20, Fa0/21, Fa0/22
Fa0/23, Fa0/24, Gig0/2
10 VLAN10 active Fa0/1
20 VLAN20 active Fa0/2
1002 fddi-default active
1003 token-ring-default active
1004 fddinet-default active
1005 trnet-default active
2.9.3.2 S-vlan-2信息
S-vlan-2#show vlan brief
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Fa0/3, Fa0/4, Fa0/5, Fa0/6
Fa0/7, Fa0/8, Fa0/9, Fa0/10
Fa0/11, Fa0/12, Fa0/13, Fa0/14
Fa0/15, Fa0/16, Fa0/17, Fa0/18
Fa0/19, Fa0/20, Fa0/21, Fa0/22
Fa0/23, Fa0/24, Gig0/2
10 VLAN10 active Fa0/1
20 VLAN20 active Fa0/2
1002 fddi-default active
1003 token-ring-default active
1004 fddinet-default active
1005 trnet-default active
2.9.3.3 查看trunk信息
S-vlan-1#show interfaces trunk
Port Mode Encapsulation Status Native vlan
Gig0/1 on 802.1q trunking 1
Port Vlans allowed on trunk
Gig0/1 1-1005
Port Vlans allowed and active in management domain
Gig0/1 1,10,20
Port Vlans in spanning tree forwarding state and not pruned
Gig0/1 1,10,20
2.10 單臂路由
單臂路由(路由器上一棒)指的英文在路由器的一個接口上通過配置子接口(或“邏輯接口”,並不存在真正物理接口)的方式,實現原來相互隔離的不同VLAN(虛擬局域網)之間的互聯互通。
在路由器中創建子接口
2.10.1 【實驗】單臂路由配置
2.10.1.1 拓撲圖
2.10.1.2 交換機trunk鏈路配置
S-vlan-2(config)#interface gigabitEthernet 0/2
S-vlan-2(config-if)#switchport mode trunk
S-vlan-2(config-if)#switchport trunk allowed vlan all
2.10.1.3 路由器子接口配置
fastEthernet 0/1.10子接口配置
Router0(config)#interface fastEthernet 0/1.10
Router0(config-subif)#encapsulation dot1Q 10
Router0(config-subif)#ip address 192.168.10.254 255.255.255.0
Router0(config-subif)#no shutdown
Router0(config-subif)#exit
fastEthernet 0/1.20子接口配置
Router0(config)#interface fastEthernet 0/1.20
Router0(config-subif)#encapsulation dot1Q 20
Router0(config-subif)#ip address 192.168.20.1 255.255.255.0
Router0(config-subif)#no shutdown
2.10.1.4 檢查配置結果
C:\>ping 192.168.20.1
Pinging 192.168.20.1 with 32 bytes of data:
Reply from 192.168.20.1: bytes=32 time<1ms TTL=127
Reply from 192.168.20.1: bytes=32 time=1ms TTL=127
Reply from 192.168.20.1: bytes=32 time<1ms TTL=127
Reply from 192.168.20.1: bytes=32 time<1ms TTL=127
Ping statistics for 192.168.20.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 1ms, Average = 0ms
查看路由表
Router0#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is not set
C 192.168.10.0/24 is directly connected, FastEthernet0/1.10
C 192.168.20.0/24 is directly connected, FastEthernet0/1.20
Router0#
第3章 STP生成樹
生成樹協議(英語:Spanning Tree Protocol,STP),又稱擴展樹協議,是一基於OSI網絡模型的數據鏈路層(第二層)通信協議,用作確保一個無環路的局域網環境。
3.1 生成樹的概念
3.1.1 冗余拓撲
l 冗余拓撲能夠解決單點故障問題
l 冗余拓撲造成廣播風暴,多幀復用,Mac地址不穩定的問題
3.1.2 廣播風暴
l HOST x發送廣播幀
l 交換機繼續沒完沒了的更新廣播流量
3.1.3 多幀復制
l Host X 發送一個單播數據幀給 ROUTE Y
l ROUTE Y 的MAC地址還沒有被每個交換機學習到
l ROUTE Y 接收2份相同的數據幀拷貝
3.1.4 MAC表紊亂
l Host X 發送一個單播數據幀給 ROUTE Y
l ROUTE Y 的MAC地址還沒有被每個交換機學習到
l switch A 和 B 在port1上學習到Host X 的MAC地址
l 到達Route Y 的數據幀被泛洪
l Switch A和B 不正確的在Port2上學習到Host X的MAC 地址。
3.1.5 復雜的多環路網絡
……
3.2 使用STP,可以達到四個效果
1、防止環路;
2、防止MAC地址震盪;
3、防止重復幀的出現;
4、防止廣播風暴的出現。
3.2.1 采用生成樹STP解決環路
l 通過將特定的端口選為Blocking state,實現無環路拓撲
l IEEE 802.1D 規定了這一行為
l Cisco 采用 IEEE 802.1D 的增強的私有協議生成樹PVST+
3.3 STP的操作
1. 每個廣播域選擇一個根橋root
2. 每個非根橋上選擇一個根端口RP
3. 每個段選擇一個指定端口
4. 選擇一個非指定端口
3.3.1 每個廣播域選擇一個根橋 (Bridge ID)
BPDU數據包--泛洪--選舉
產生一個或多個非指定端口進行阻塞
Bridge ID (兩部分組成): 其依據是網橋優先級(bridge priority)和MAC地址組合生成的橋ID
3.3.2 每個非根橋上選擇一個根端口
根端口:具有最低的根路徑的接口
要考慮的因素:
1. 最低的根橋ID
2. 最低的根路徑代價
3. 最低的發送者根橋ID
4. 最低端口ID
3.3.3 stp路徑開銷cost
Link Speed |
Cost (New IEEE Specification) |
10Gb/s |
2 |
1Gb/s |
4 |
100Mb/s |
19 |
10Mb/s |
100 |
最短路徑時cost累加,而cost時基於鏈路的速率的
3.3.4 每個段選擇一個指定端口
指定端口:具有最低根路徑的接口
要考慮的因素:
1. 最低的根橋ID
2. 最低的根路徑代價
3. 最低的發送者根橋ID
4. 最低端口ID
3.4 【案例】root 、rp 、dp
比較過程:
1. 最低的根橋ID
2. 最低的根路徑代價
3. 最低的發送者根橋ID
4. 最低端口ID
3.5 STP端口狀態
狀態 |
功能 |
阻塞(Blocking) |
這種二層LAN端口不能參與幀轉發,偵聽BPDU包 |
偵聽(Listening) |
這是端口自阻塞狀態后的第一個過渡狀態。STP認為這種狀態的二層LAN端口應當參與幀轉發(不轉發,不學習) 15s |
學習(Learning) |
這種狀態的二層LAN端口處於准備參與幀轉發狀態,學習MAC地址 |
轉發(Forwarding) |
這種狀態的二層LAN端口就可以正式轉發幀了 |
禁止(Disabled) |
這種狀態的二層LAN端口不參與STP,不轉發幀 |
3.6 【實驗】stp
3.6.1 拓撲圖
3.6.2 配置命令
修改優先級
S-STP-1 (config-if)spanning-tree vlan vlan-id port-priority
3.6.3 檢查STP情況的命令
S-STP-1#show spanning-tree
S-STP-1#show spanning-tree active
S-STP-1#show spanning-tree detail
S-STP-1#show spanning-tree interface interface-id
S-STP-1#show spanning-tree vlan vlanid
S-STP-1(config)#do sh spann
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 32769
Address 0001.C944.E360
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)
Address 0001.C944.E360
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 20
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1 Desg FWD 19 128.1 P2p
Gi0/1 Desg FWD 4 128.25 P2p
Gi0/2 Desg FWD 4 128.26 P2p