單位一個辦公區所在的兩(電腦沒聲音)個部門VLAN出現了一個很奇怪的問題,因特網上部分網站可以正常訪問,而部分網站又無法訪問;通過Outlook或者Foxmail接收郵件正常,發送不帶附件的小郵件也正常,但是發送大郵件或者含有附件的郵件時就不能正常發送了。單位其他辦公區上網正常。
故障分析
用戶PC所在的辦公區距離核心交換機大約有2~3公裡(電腦自動關機),該辦公區有兩(電腦沒聲音)個部門,分屬不同的VLAN,因此我們在該辦公區放置了安奈特網管交換機AT-8024,中間通過光纖和一對光收發器連接在我們的核心交換機Cisco 6509上面(Cisco 6509配置為:超級引擎SUP720,一個16口的千兆位光模塊WS-X6816-GBIC,一個48口的快速交換電模塊WS-X6548-RJ-45)。在連接光收發器的6509和安奈特交換機的相應端口上起了Trunk,安奈特交換機上面劃分了兩(電腦沒聲音)個VLAN,分別是172.25.6.0/24(以下簡稱VLAN6)和172.25.7.0/24(以下簡稱VLAN7),兩(電腦沒聲音)個部門的機器分別接在各自的VLAN裡(電腦自動關機)面。而其他辦公區的匯聚層交換機(Cisco 3550)直接通過光模塊連接在6509的WS-X6816-GBIC光模塊上。
整個網絡用了一台IBM X235服務器作為NAT和DHCP服務器,所有VLAN的數據先到NAT做地址轉換以後再通過邊緣路由器訪問因特網。
遇到上述奇怪問題,我們一開始懷疑是NAT和6509的設置出了問題,但是經檢查,VLAN6和VLAN7的配置和其他辦公區的路由配置是完全一樣的。因為除這兩(電腦沒聲音)個VLAN外的其他VLAN上網完全正常,於是我們采用了以下解決步驟。
(1)將VLAN6和VLAN7的VLAN信息在安奈特網管交換機上全部刪除,將所有端口都劃在上網正常的VLAN1裡(電腦自動關機)面,這下它們完全和VLAN1一樣了。但是問題依然如故,而其他辦公區域VLAN1裡(電腦自動關機)面的用戶上網仍然正常。
(2)從步驟(1)推斷問題不在VLAN的劃分上,我們開始懷疑是光收發器或者安奈特交換機有問題,於是將其他辦公區使用正常的光收發器或者安奈特交換機換上去,問題依舊。
(3)難道是鏈路質量的問題趕緊找來兩(電腦沒聲音)台PC,一台接在安奈特交換機上,將光收發器接6509的網線拔下來,直接接在另外一台機器上,配置同一網段的IP,發最大的數據包65500b互ping,但是結果讓我們失望,延時只有幾個毫秒,這說明鏈路沒有問題。
(4)就在我們“黔驢技窮”的時候,我們再次把光收發器和6509連接好,仍然用接在安奈特上的PC機ping設在6509上的該VLAN的網關172.25.6.210,問題出現了,用小包ping時,基本上沒有延時,但是用大包(接近18024b,Cisco所支持的最大數據包)ping時出現了丟包,問題肯定出在這裡(電腦自動關機)了。
(5)重新檢查安奈特和6509及NAT服務器的配置,我們發現這樣一個問題:在安奈特上配置VLAN6和VLAN7,並將相應端口添加到VLAN的命令為:add vlan 6 ports=23 frame=untagged(將23號端口添加到VLAN6裡(電腦自動關機)面,注意這裡(電腦自動關機)的frame=untagged表示此時不對數據包封幀),而我們在安奈特交換機與6509的級聯口(第一號端口)上起了Trunk,同時對數據進行了強http://.制封幀,命令如下:add vlan 1 ports=1-24 frame=tagged(即我們將所有經過級聯口轉發出去的數據包進行了強http://.制封幀,我們知道安奈特交換機封幀類型為IEEE 802.1Q VLAN標記)。然後我們繼續檢查6509的配置,進入連接VLAN6和VLAN7的接口,進行該端口的Trunk配置,如下:
6509#conf t
Enter configuration commands, one per line. End with CNTL/Z.
6509(config)#interface gigabitEthernet 3/48 —進入級聯接口
6509(config-if)#switchport trunk ? —查看起Trunk後的情況
allowed Set allowed VLAN characteristicswhen interface is in trunking modenative Set trunking
native characteristics when interface is in trunking modepruning Set
pruning VLAN characteristics when interface is in trunking mode
故障排除
從上面可以看出:該端口不能強http://.制進行IEEE 802.1Q的Trunk設置,其他接口情況都一樣。此時想到超級引擎SUP720模塊上還有一個接口沒有用,看它能不能進行強http://.制封幀。進入該端口的Trunk配置,看到如下信息。
6509#conf t
Enter configuration commands, one per line. End with CNTL/Z.
6509(config)#interface gigabitEthernet 5/2
6509(config-if)#switchport trunk ?
allowed Set allowed VLAN characteristics when interface is in trunking mode
encapsulation Set trunking encapsulation when interface is in trunking mode
native Set trunking native characteristics when interface is in t runking mode
pruning Set pruning VLAN characteristics when interface is in trunking mode
下畫線標示出的比在gigabitEthernet 3/48接口上看到的多了一個encapsulation選項,由此可見,在超級引擎模塊的接口上可以強http://.制進行IEEE 802.1Q的Trunk設置。
輸入如下命令:
6509(config-if)#switchport trunk encapsulation 得到:
dot1q Interface uses only 802.1q trunking encapsulation when trunking
isl Interface uses only ISL trunking encapsulation when trunking
negotiate Device will negotiate trunking encapsulation with peer on interface
繼續:
6509(config-if)#switchport trunk encapsulation dot1q 回車;
6509(config-if)#end
6509#write
Building configuration...
[OK]
*注:該6509所用的IOS版本是Version 12.2(17a)SX。
我們將跳線接到該接口上,再來測試網絡,原來的問題已不復存在。這兩(電腦沒聲音)個VLAN內的用戶訪問網頁恢復正常,帶有附件的郵件又可以輕松發送了。
經驗總結
由於Cisco的6509 核心交換機上48口的快速交換電模塊是默認對干線進行IEEE 802.1Q封幀的,而我們的安奈特網管交換機強http://.制對干線進行IEEE 802.1Q封幀,這是兩(電腦沒聲音)個廠家的產品,因此可能會導致數據包傳輸進行協議的協商時不能很好匹配的情況。
此時我們又想到,在出現這個問題之前很長一段時間,我們的網絡都是正常的,而當時我們的做法是:一開始只有收發器接在6509 超級引擎SUP720模塊gigabitEthernet 5/2口上,我們在此接口上進行了強http://.制IEEE 802.1Q封幀,後來由於48口的快速交換電模塊有空余接口,我們就將其改在了gigabitEthernet 3/48口上,使用了默認IEEE 802.1Q封幀,但網絡使用一直正常。這次我們對網絡進行了一些調整,重新啟動了一次我們的核心交換機,結果就出現了這個問題。這說明如果先將超級引擎強http://.制進行IEEE 802.1Q的Trunk設置,待網絡穩定後,再將跳線接回gigabitEthernet 3/48接口,此時Cisco 6509 將使用默認的IEEE 802.1Q封幀,同安奈特進行干線協議的協商,這樣數據包在傳輸時進行協議的協商就不會出現問題,VLAN6和VLAN7就可以正常上網。我們後來又這樣試驗了一下,事實證明確實如此。