某單位在構(gòu)建網(wǎng)絡時,最初使用了一臺3Com SuperStack Ⅱ Switch 1100作為主交換機和一臺Cisco 2509廣域網(wǎng)路由器。在第二次網(wǎng)絡建設(shè)時,根據(jù)有限的預算添置了2臺Cisco Catalyst 1924交換機和一臺Cisco 3640路由器用于與各地分支機構(gòu)的廣域網(wǎng)互連。該單位希望可以充分利用這些的網(wǎng)絡設(shè)備按部門劃分虛擬局域網(wǎng)(VLAN),以便更好地進行網(wǎng)絡安全管理。
一、專有協(xié)議的兼容
但是在準備實施VLAN的計劃時遇到了一些問題。我們知道,虛擬局域網(wǎng)VLAN是可以從邏輯上劃分的獨立物理網(wǎng)絡,一般可以認為等價于一個第二層廣播域。在交換機中數(shù)據(jù)幀不能在2個VLAN之間轉(zhuǎn)發(fā),要實現(xiàn)VLAN之間的通信,需要將交換機連接到第三層設(shè)備(如路由器或第三層交換機)進行路由。一般來說,一個物理端口只屬于一個VLAN,這樣VLAN的數(shù)量必須與路由器以太網(wǎng)物理端口數(shù)量以及交換機用于級聯(lián)的端口數(shù)量保持一致,這樣將導致大量的端口浪費,并且極大地限制了VLAN的擴展和劃分靈活性。為了解決這一問題,實現(xiàn)一個物理端口上傳輸多個VLAN數(shù)據(jù)流,可以使用“標簽”(Tagging)技術(shù),即在此端口上對每個數(shù)據(jù)幀貼上標簽(Tag)用于標記該幀所屬的VLAN,系統(tǒng)利用其VLAN標識號即VLAN ID來確定數(shù)據(jù)幀的轉(zhuǎn)發(fā),這就需要網(wǎng)絡設(shè)備支持Tagging封裝協(xié)議。
在本實例中所遇到的技術(shù)難題是,Catalyst 1924交換機與SuperStack 1100交換機分別支持不同的VLAN tagging封裝協(xié)議:Catalyst 1924可以封裝Cisco專有的ISL協(xié)議,而SuperStack 1100則只能封裝IEEE 802.1Q,這2種協(xié)議是互不兼容的。這樣2種交換機不能夠通過一個級聯(lián)端口同時傳輸多個VLAN數(shù)據(jù)流,勢必仍將造成端口浪費并限制VLAN劃分的靈活性。
所幸的是,該單位還有一臺Cisco 3640路由器,而且該路由器包含2個以太網(wǎng)端口,同時此Cisco 3640的IOS版本支持以上2種VLAN tagging封裝協(xié)議,這時候就可以利用路由器的透明橋接功能了。在介紹解決方案之前,先對Cisco路由器的透明橋接特性作簡要的說明。
二、Cisco路由器的透明橋接
在Cisco路由器中,其IOS軟件支持基于以太網(wǎng)、FDDI光纖網(wǎng)和串行鏈路的透明橋接。
Cisco路由器提供集成的路由與橋接(Integrated Routing and Bridging,IRB)功能。當配置了IRB后,不可路由的協(xié)議數(shù)據(jù)流可以在配置為相同網(wǎng)橋組的端口上實現(xiàn)橋接交換,同時可以路由的協(xié)議數(shù)據(jù)流則在其他的路由端口或不同的網(wǎng)橋組之間實現(xiàn)路由。
這里提到了一個概念,即網(wǎng)橋組(Bridge-Group)。要實現(xiàn)不同的端口之間的橋接交換,必須將這些端口歸到同一個網(wǎng)橋組當中。從概念上說,配置為同一個網(wǎng)橋組中的所有端口屬于同一個第二層的廣播域,不管這個端口類型是廣域網(wǎng)端口還是以太網(wǎng)端口,也不管這個端口是物理端口還是邏輯端口(如X.25的子口或以太網(wǎng)的VLAN子口)。Cisco路由器為每一個已配置的網(wǎng)橋組自動產(chǎn)生一個虛擬接口,稱之為Beidge-Group Virtual Interface(BVI),在不同的BVI之間或BVI與其它的端口之間可以實現(xiàn)路由的能力。下面說明BVI的主要概念和IRB的配置任務。
其中端口E0、E1、E2是橋接端口,歸到了同一個網(wǎng)橋組Bridge-Group 1中,路由器為此自動產(chǎn)生一個邏輯虛擬接口BVI 1,端口E3則是路由端口。就工作原理來說,此圖配置的路由器等價于這樣的網(wǎng)絡連接,即一個由E0、E1、E2及一個上聯(lián)口組成的4口交換機和一個由BVI 1、E3組成的2口路由器通過BVI 1接口進行連接,顯然E0、E1和E2這3個口是在同一廣播域中。
三、解決方案
有了IRB的相關(guān)概念,就可以解決前面提到的問題了。在實際的解決方案中,首先,給Catalyst 1924和SuperStack 1100交換機劃分VLAN,并在它們的上聯(lián)端口上分別啟用ISL和IEEE 802.1Q標簽協(xié)議,然后將它們分別連接到Cisco 3640路由器的2個以太網(wǎng)端口上,這里使用Catalyst 1924的Bx口和SuperStack 1100的26號口作為上聯(lián)口。完成物理線纜的連接后,主要的工作就是配置Cisco 3640路由器。作為例子,這里考慮有2個VLAN的情況,分別是VLAN 1和VLAN 2,假設(shè)分別對應銷售部門和財務部門,網(wǎng)絡結(jié)構(gòu)如附圖所示。
在路由器中,要使以太網(wǎng)端口同時傳輸不同的VLAN數(shù)據(jù)流,應該將Tagging協(xié)議封裝到子口中。例如在Cisco 3640與Catalyst 1924相連的端口上,對應VLAN 1應使用如下的配置命令:
interface fastethernet 0/0.1
encapsulation isl 1
同樣地,與SuperStack 1100相連的端口上也要做子口配置,只是要將封裝協(xié)議改為IEEE 802.1Q,命令如下:
interface fastethernet 0/1.1
encapsulation dot1q 1
有了VLAN子口,只要將相同VLAN的子口歸到同一個網(wǎng)橋組里,就可以實現(xiàn)Catalyst 1924和SuperStack 1100的VLAN互通了。在這里,如果將fastethernet 0/0.1和fastethernet 0/1.1都歸到bridge-group 1中,那么Catalyst 1924的VLAN 1和SuperStack 1100的VLAN 1就從邏輯上合并為一個VLAN。
最后,為網(wǎng)橋組BVI接口配置上IP地址,并輔以一定的ACL列表設(shè)置,就可以實現(xiàn)VLAN 1和VLAN 2之間的安全路由了。
在配置網(wǎng)絡上的服務器和工作站時,VLAN 1財務部門的計算機默認網(wǎng)關(guān)應設(shè)為路由器配置中接口BVI 1的地址,即192.168.1.254。同樣,VLAN 2銷售部門的計算機默認網(wǎng)關(guān)應設(shè)為接口BVI 2的地址,即192.168.2.254。