プライベートVLAN
・プライベートVLANを使って,同一サブネット内のパソコンで通信できるグループと通信できないグループを作る
・ルーターにはすべてのパソコンがアクセスできるようにする
ネットワーク構成(画像を別ウインドウで表示)
SwitchAのコンフィグ
!
version 12.2
no service pad
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname SwitchA
!
vtp mode transparent ←プライベートVLANを使うときは,VTPトランスペアレント・モードにする
!
no file verify auto
spanning-tree mode pvst
spanning-tree extend system-id
!
!(↓VTPトランスペアレント・モードにするとVLAN情報がrunning-configに書き込まれる)
vlan 10
 private-vlan isolated ←VLAN10をセカンダリVLANの隔離モードにする
!
vlan 20
 private-vlan community ←VLAN20をセカンダリVLANのコミュニティ・モードにする
!
vlan 100
 private-vlan primary ←VLAN100をプライマリVLANにする
 private-vlan association 10,20 ←セカンダリVLAN(VLAN10と20)が所属する

!
!
interface FastEthernet1/0/1
switchport private-vlan host-association 100 10 ←このポートの所属VLANを指定
switchport mode private-vlan host ←このポートをプライベートVLANにする(隔離もしくはコミュニティ)
!
interface FastEthernet1/0/2
switchport private-vlan host-association 100 20 ←このポートの所属VLANを指定
switchport mode private-vlan host ←このポートをプライベートVLANにする(隔離もしくはコミュニティ)
!
interface FastEthernet1/0/3
switchport private-vlan host-association 100 20 ←このポートの所属VLANを指定
switchport mode private-vlan host ←このポートをプライベートVLANにする(隔離もしくはコミュニティ)
!
interface FastEthernet1/0/12
switchport private-vlan mapping 100 10,20 ←このポートの所属VLANを指定
switchport mode private-vlan promiscuous ←このポートをプライベートVLANにする(プロミスキャス)
!
interface Vlan1
no ip address
shutdown
!
line con 0
line vty 5 15
!
end
確認
プライベートVLANは,一つのVLANの中にさらにVLANを作る機能です。
すべての端末が一つのVLAN(サブネット)に所属していながら,通信できる端末と通信できない端末を作れます。
インターネット・マンションなどで実際に活用されている機能です。

●プライベートVLANを使って何をする?
最初に,このラボの目標を確認しておきましょう。
ネットワークの構成は,1台のスイッチに3台のパソコンと1台のルーターがつながっている構成です。
すべての機器は,192.168.0.0/24という1サブネット(VLAN)の中にあります。
そのため通常は,VLAN内のすべてのマシン同士が通信できます。
ここでは,プライベートVLANを使って,同じVLAN内にもかかわらず,通信できる端末とそうでない端末を作ります。
具体的には,
・192.168.0.1/24のパソコンは他のパソコンへは通信できない
・192.168.0.2/24と192.168.0.3/24のパソコン同士は通信できる
・すべてのパソコンはルーターへ通信できる
ようにするのが,今回の目標です。

●プライベートVLANの用語
プライベートVLANに関する用語を押さえておきましょう。

【プライベートVLANの構成要素】
・プライマリVLAN…通常のVLAN
・セカンダリVLAN…プライマリVLANの中に作るVLAN

【セカンダリVLANのタイプ】
・隔離(isolated)……………他のポートには通信できない
・コミュニティ(community)…同じコミュニティ(セカンダリVLAN)のパソコン同士は通信できる

【スイッチのポートのモード】
・ホスト(host)……………………隔離VLANまたはコミュニティVLANのポート(通常はこれ)
・プロミスキャス(promiscuous)…すべてのポートと通信可能(プライベートVLANのルールを無視する)

●プライマリVLANとセカンダリVLANを作成
設定の最初に,プライマリVLANとセカンダリVLANを定義します。
VLAN10を隔離VLANにしようとすると…

SwitchA(config)#vlan 10
SwitchA(config-vlan)#private-vlan isolated
%Private VLANs can only be configured when VTP is in transparent mode.

「プライベートVLANはVTPトランスペアレント・モードだけで設定できる」というメッセージが出てきました。
そこで,スイッチをVTPトランスペアレント・モードに変更します。
(ちなみに,VTPトランスペアレント・モードにするとVLAN情報がrunning-configに書き込まれます)

SwitchA(config)#vtp mode transparent
Setting device to VTP TRANSPARENT mode.


これで準備はOKです。
今度こそ,VLANを作っていきましょう。
セカンダリVLANのVLAN10を隔離VLANにします。

SwitchA(config)#vlan 10
SwitchA(config-vlan)#private-vlan isolated
SwitchA(config-vlan)#exit


次に,セカンダリVLANのVLAN20をコミュニティVLANにします。

SwitchA(config)#vlan 20
SwitchA(config-vlan)#private-vlan community
SwitchA(config-vlan)#exit


そして,VLAN100をプライマリVLANにします。
このプライマリVLANには,VLAN10とVLAN20という二つのセカンダリVLANが所属することも設定してやります。

SwitchA(config)#vlan 100
SwitchA(config-vlan)#private-vlan primary
SwitchA(config-vlan)#private-vlan association 10,20
SwitchA(config-vlan)#exit


プライベートVLANの設定を確認してみましょう。
show vlan private-vlanというコマンドを使います。

SwitchA#show vlan private-vlan

Primary  Secondary  Type         Ports
------- --------- ---------------- ---------------------
100     10      isolated
100     20      community


プライマリVLAN,セカンダリVLAN,セカンダリVLANのタイプ,という三つの設定が確認できます。
ただし,これらのVLANをまだスイッチのポートに設定していないので,「Ports」の部分はまだ空白です。

●プライベートVLANをインタフェースへの割り当てる
それでは,上で作ったVLANをスイッチのポートに割り当てていきましょう。
すべてのスイッチに,プライベートVLANであることを示すswitchport mode private-vlanコマンドを入力します。
加えて,どのプライマリVLANとセカンダリVLANに所属するのかをswitchport private-vlan host-associationコマンドで設定します。

Fa1/0/1を設定します。
先ほどVLAN10のタイプは「隔離」に設定したので,このポートは隔離されます。

SwitchA(config)#interface fastEthernet 1/0/1
SwitchA(config-if)#switchport mode private-vlan host
SwitchA(config-if)#switchport private-vlan host-association 100 10


Fa1/0/2とFa1/0/3は設定内容が同じなので,rangeキーワードを使ってまとめて設定します。
VLAN20のタイプは先ほど「コミュニティ」に設定したので,この二つのポートにつながるパソコン同士は通信できます。

SwitchA(config)#interface range fastEthernet 1/0/2 - 3
SwitchA(config-if-range)#switchport mode private-vlan host
SwitchA(config-if-range)#switchport private-vlan host-association 100 20


最後に,ルーターがつながるFa1/0/3を設定します。
ここはプロミスキャス・モードに指定します。

SwitchA(config)#interface fastEthernet 1/0/12
SwitchA(config-if)#switchport mode private-vlan promiscuous
SwitchA(config-if)#switchport private-vlan mapping 100 10,20


設定は以上です。
これで,
・192.168.0.1/24のパソコンは他のパソコンへは通信できない
・192.168.0.2/24と192.168.0.3/24のパソコン同士は通信できる
・すべてのパソコンはルーターへ通信できる
という動作になります。

最後に,プライベートVLANの設定を再確認しましょう。
今度は,「Ports」の項目に,割り当てられたVLANが表示されました。

SwitchA#show vlan private-vlan

Primary  Secondary  Type          Ports
------- --------- ----------------- ------------------------------
100     10      isolated        Fa1/0/1, Fa1/0/12
100     20      community       Fa1/0/2, Fa1/0/3, Fa1/0/12


プライベートVLANは,細かくサブネットを構成したりフィルタリングの設定をしなくてもいい点がメリットです。
あくまでも1サブネットで,通信できる・できないを設定できるわけです。

●Catalystスイッチでの隔離モードプライベートVLANの設定
http://www.cisco.com/japanese/warp/public/3/jp/service/tac/473/194-j.shtml

VLANラボ
ポートVLAN
トランク接続(タグVLAN)
VLAN間ルーティング(トランク非対応ルーター)
VLAN間ルーティング(トランク対応ルーター)
VLAN間ルーティング(レイヤー3スイッチ)
VTP
VTPプルーニング
プライベートVLAN
プライベートVLANエッジ(保護ポート)