VLAN acl ,端口隔離 ,private vlan


VLAN acl ,端口隔離 ,private vlan

 

VLAN acl

針對於VLANACL,訪問控制列表,

Access-map

 

技術背景

VLAN有着分割廣播域的作用,通常情況下一個VLAN 內部的主機可以無條件的進行互訪,(因為在一個廣播域里)

但是會有這個的需求,如何能夠使一個VLAN 下的主機不可以通信呢?

 

技術實現

1ip access-list負責抓取數據

2vlan access-map負責執行動作(這一點是不是和route-map很像?別急,后面會更新關於route-map的內容)

//那么既然是ACL負責抓取,肯定就是以permit為動作嘍

 

 

 

 

需求如下,

使PC2PC3之間不能通信,但是都可以和VPCserver)通信

三台設備同屬於一個VLAN

 

Switch(config)#access-list 100 permit ip host 192.168.1.1 host 192.168.1.2   //擴展ACL抓取

Switch(config)#vlan access-map wfy 10            //定義VLAN ACL

Switch(config-access-map)#ma ip add 100        //匹配ip access 100

Switch(config-access-map)#action drop        //執行動作為丟棄

Switch(config-access-map)#exit

Switch(config)#vlan access-map wfy 20    //為了放行其它還需要再建立一個

Switch(config-access-map)#action forward   //不匹配任何(也就是所有的意思),動作為轉發

 

Switch(config)#vlan filter aa vlan-list 10    //使用vlan filter 命令來掛接,針對於vlan 10

                                      此處可以針對於所有VLAN,即vlan all

 

最終效果如下,PC2192.168.1.1)可以和vpc通信,但是無法和pc3通信

 

 

 

 當然這是純二層的環境,那如果是加上三層會是什么樣的效果呢?

 

 

 

 

單臂路由的環境中,連接着下面的三個VLAN ,正常情況下,三個VLAN 是可以正常通信的,

但是我現在要求 VLAN10不可以和VLAN20進行通信,但是VLAN10可以和VLAN30通信

如何來實現呢?

 

~也許你會想到,直接在路由器上配置ACL即可,這個方法當然是可以的,

但是我就不那樣做,

我偏偏非要將策略部署在二層設備上

請問:為什么要將這些策略部署在底層(接入層設備)?

答:如果是按照園區網的架構來看,接入----匯聚----核心,能夠部署在接入的,就不部署在匯聚,能部署在匯聚的就不部署在核心,

總之,就是一句話,當數據到達匯聚/核心層時,你只要負責給我高速轉發就行了,如果可以的話,我將不對你進行任何的策略部署,一個字,快!!!

 

如何實現呢?

其實原理已經搞明白了,就很簡單了,

Switch(config)#access-list 100 permit ip host 10.0.0.1 host 20.0.0.1   //擴展ACL

                                 當然也可以不抓HOST,直接抓取網段也OK~

Switch(config)#vlan access-map wfy 10

Switch(config-access-map)#ma ip add 100

Switch(config-access-map)#action drop

Switch(config-access-map)#exit

Switch(config)#vlan access-map wfy 20

Switch(config-access-map)#action forward

Switch(config-access-map)#exit

 

Switch(config)#vlan filter wfy vlan 10    //直接針對於VLAN10 進行調用。

 

 可以看到,10.0.0.1 ping 20.0.0.1 時是不通的

          10.0.0.1 ping 30.0.0.1 時是通的

 

 

整體來看,VLAN acl的部署,還算是簡單,(只要理解route-map)那這個真的是SO easy

 

 

但看到這里你有沒有發現一個問題,就是VLANACL原理簡單,但是配置起來相對麻煩

有沒有一種更簡單的方法,實現單台交換機上不同接口不通信嗎?

端口隔離(你值得擁有)

技術背景

在不划分VLAN的情況下,如何實現兩台相同網段的終端無法通信,相互隔離呢?

  

使用端口隔離技術

技術要點

1 被隔離端口之間無法通信

2 被隔離端口與非隔離端口之間可以通信

 

 

 

如圖所示,將E0/0,E0/1配置了端口隔離,那么這兩個口下聯的終端將無法通信,

但是他們都可以和SERVER通信,

從而保證了一部份人員無法互通,但可以和服務器互通的要求

 

配置如下,(其實很簡單,就一條命令)

Switch(config)#inter range e0/0 - 1

Switch(config-if-range)#switchport protected

結束了

 是不是挺簡單的

 

就端口隔離這個特性而言,問題又來了,假設如圖中所示

有這么幾個人成立了一個部門,他們之間肯定是要進行互通的,並且和外界(其它部門)不通,使用端口隔離能否實現呢?

貌似是不可以的,此時這個特性顯得蒼白無力,

 

那怎么辦呢?

 

Private vlan,簡稱PVLAN,你可以考慮上手試試

 

技術特性

Pvlan中包含兩種VLAN

 VLAN

 輔助VLAN ,而輔助VLAN中又包含了兩種VLAN ,

Community 團體VLAN

Isolated 隔離VLAN

 

其中,一個主VLAN下可以有多個community ,但只可以有一個isolated

 

所有的輔助VLAN都可以和主VLAN進行通信,

但是

 相同的community之間可以互通

 Isolated中所有的主機都想互獨立,僅可以和主VLAN互通

 

同時一個接口只能屬於一種VLAN

 

接口角色

混雜接口 --允許所有的VLAN通過,不管是主的,還是輔助的,主要用於連接三層設備/server

trunk接口 -- 用於交換機之間相連

 

配置思路

0 這一步至關重要,將vtp 改為transport模式(透明)

1 創建主VLAN 以及輔助VLAN

2 VLAN關聯輔助VLAN

3 定義輔助VLAN的類型

4 創建混雜接口

5 混雜接口的主輔VLAN關聯

6 划分接口到輔助VLAN

 

如圖所示

 

 

 

Pc5,6,8同屬於community vlan 20

Pc7,9,10同屬於isolated vlan30

R1做為GWR2做為server,同屬於主vlan

 

如何操作呢?

本實例主要講解pvlan的配置,其它部分不再贅述

 

R1 192.168.1.1

R2 192.168.1.2

下面的PC按照自己的編號設置IP地址,並指向GW 192.168.1.1

 

SW1配置

Switch(config)#vtp mode transparent      //vtp模式為透明

Switch(config)#vlan 10  

Switch(config-vlan)#private-vlan primary     //vlan10為主vlanprimary

Switch(config-vlan)#private-vlan association 20,30   //VLAN下的輔助VLAN都是誰?寫一下

Switch(config)#vlan 20

Switch(config-vlan)#private-vlan community     //定義VLAN20的輔助VLAN類型

Switch(config-vlan)#vlan 30

Switch(config-vlan)#private-vlan isolated      //定義VLAN30的輔助VLAN類型

 

Switch(config)#inter range e0/0 - 1

Switch(config-if-range)#switchport mode private-vlan promiscuous    //定義混雜接口

Switch(config-if-range)#switchport private-vlan  mapping 10 20,30   //定義主和輔助的關系,通過主去找到輔助VLAN

 

Switch(config-if-range)#inter range e0/3 , e1/0

Switch(config-if-range)#switchport mode private-vlan host   //設置接口為主機接口

Switch(config-if-range)#switchport private-vlan host-association 10 20    //VLAN10,把這個接口划分到主機接口的VLAN20

 

Switch(config-if-range)#inter e1/1

Switch(config-if)#sw m pri hos

Switch(config-if)#sw pri hos 10 30

 

 

 第一台交換機就算是配置完成了

我們先來驗證一下

 

1) pc5-pc6屬於同一個community ,肯定是可以互通的

 

 

 Pc5-pc6不管你是屬於哪種VLAN ,肯定是能和混雜接口下的主機進行互通的

 

 

 那么他和isolated中的PC7可以互通嗎?

 

 

 根本就無法聯系到

 

左側交換機完成,

下面來進行右側交換機配置,

需要注意有兩點

1 兩台交換機相連接口要使用trunk

2 只需要配置一個混雜接口即可,也就意味着第二台交換機不需要再配置混雜接口了

 

Switch(config-if)#inter e0/2

Switch(config-if)#sw tr en dot

Switch(config-if)#sw m t

 

SW2(config)#inter e0/0

SW2(config-if)#sw tr en dot

SW2(config-if)#sw m t

 

SW2(config)#vtp mode transparent

SW2(config)#vlan 10

SW2(config-vlan)#private-vlan primary  

SW2(config-vlan)#private-vlan association 20,30

 

SW2(config-vlan)#vlan 20

SW2(config-vlan)#private-vlan  community

SW2(config-vlan)#vlan 30

SW2(config-vlan)#private-vlan isolated

SW2(config-vlan)#inter e0/1

SW2(config-if)#switchport mode pri hos

SW2(config-if)#sw pri hos 10 20

SW2(config-if)#inter range e0/2 - 3

SW2(config-if-range)#sw mode pri host

SW2(config-if-range)#sw pri hos 10 30

 

這就是pvlan,也不難,就是相對而言明詞較多而已

 

總結一下,怎么說呢,這三種辦法在使用過程中要靈活,不能認死理兒,

遇到一個問題,至少你有三種辦法可以解決。這才是學技術,別死背,要理解,

要融會貫通.....

 

 

------------------------------------

CCIE成長之路 --- 梅利

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM