このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

ネットワーク構成

ネットワークの構成は、下図のとおりです。

演習ファイルのダウンロード

 ネットワークの構成を Packet Tracer で一から設定していくのは大変かと思います。「ダウンロード」から演習で使用するファイルのダウンロードができます。ファイルは、McAfeeインターネットセキュリティでウイルスチェックをしておりますが、ダウンロードは自己責任でお願いいたします。

DTPの検証

 ここでは、スイッチ間におけるDTP(ダイナミックトランキングプロトコル)のネゴシエーションを検証していきます。また、スイッチス プーフィング攻撃を防ぐにために、トランクを設定するポートで、DTP を無効にして、手動でトランクを有効にしていきます。

DTPによるネゴシエーションの組み合わせは、以下の通りです。

DTPネゴシエーションの結果

 Dynamic AutoDynamic DesirableTrunkAccess
Dynamic Autoアクセストランクトランクアクセス
Dynamic Desirableトランクトランクトランクアクセス
Trunkトランクトランクトランク限定された接続
Accessアクセスアクセス限定された接続アクセス

基本設定

まず、基本設定を行います。使用するスイッチは、2台共に Catalyst2960スイッチを使用します。

●S1の設定

S1(config)#vlan 10
S1(config-vlan)#name vlan10
S1(config-vlan)#vlan 20
S1(config-vlan)#name vlan20
S1(config-vlan)#vlan 30
S1(config-vlan)#name vlan30
S1(config-vlan)#exit
S1(config)#int f0/1
S1(config-if)#switchport mode access
S1(config-if)#switchport access vlan 10
S1(config-if)#int f0/2
S1(config-if)#switchport mode access
S1(config-if)#switchport access vlan 20
S1(config-if)#int f0/3
S1(config-if)#switchport mode access
S1(config-if)#switchport access vlan 30

●S2の設定

S2(config)#vlan 10
S2(config-vlan)#name vlan10
S2(config-vlan)#vlan 20
S2(config-vlan)#name vlan20
S2(config-vlan)#vlan 30
S2(config-vlan)#name vlan30
S2(config-vlan)#exit
S2#(config)#int f0/1
S2#(config-if)#switchport mode access
S2(config-if)#switchport access vlan 10
S2(config-if)#int f0/2
S2(config-if)#switchport mode access
S2(config-if)#switchport access vlan 20
S2(config-if)#int f0/3
S2(config-if)#switchport mode access
S2(config-if)#switchport access vlan 30

ペースト用のコンフィグ

●S1

hostname S1
vlan 10
name vlan10
vlan 20
name vlan20
vlan 30
name vlan30
exit
int f0/1
switchport mode access
switchport access vlan 10
int f0/2
switchport mode access
switchport access vlan 20
int f0/3
switchport mode access
switchport access vlan 30

●S2

hostname S2
vlan 10
name vlan10
vlan 20
name vlan20
vlan 30
name vlan30
exit
int f0/1
switchport mode access
switchport access vlan 10
int f0/2
switchport mode access
switchport access vlan 20
int f0/3
switchport mode access
switchport access vlan 30

S1:Dynamic Auto S2:Dynamic Auto の検証

デフォルトのスイッチポートのモードは、Dynamic Auto モードになっています。

特にスイッチの追加の設定の必要はありません。

各スイッチで、「show interfaces f0/8 switchport」コマンドを実行します。

●S1の「show interfaces f0/8 switchport」の出力

S1#show interfaces f0/8 switchport 
Name: Fa0/8
Switchport: Enabled
Administrative Mode: dynamic auto
Operational Mode: static access
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: native
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
(略)

●S2の「show interfaces f0/8 switchport」の出力

S2#show interfaces f0/8 switchport
Name: Fa0/8
Switchport: Enabled
Administrative Mode: dynamic auto
Operational Mode: static access
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: native
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
(略)

f0/8 がアクセスモードになっていることが確認できます。

S1:Dynamic Auto S2:Dynamic Desirable の検証

S2で以下の設定を行います。

S2(config)#int f0/8
S2(config-if)#switchport mode dynamic desirable

各スイッチで、「show interfaces f0/8 switchport」コマンドを実行します。

●S1の「show interfaces f0/8 switchport」の出力

S1#show interfaces f0/8 switchport
Name: Fa0/8
Switchport: Enabled
Administrative Mode: dynamic auto
Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1q
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
(略)

●S2の「show interfaces f0/8 switchport」の出力

S2#show interfaces f0/8 switchport
Name: Fa0/8
Switchport: Enabled
Administrative Mode: dynamic desirable
Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1q
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
(略)

f0/8 がトランクモードになっていることが確認できます。

S1:Dynamic Desirable S2:Dynamic Desirable の検証

S1で以下の設定を行います。

S1(config)#int f0/8
S1(config-if)#switchport mode dynamic desirabale

各スイッチで、「show interfaces f0/8 switchport」コマンドを実行します。

●S1の「show interfaces f0/0 switchport」の出力

S1#show interfaces f0/8 switchport
Name: Fa0/8
Switchport: Enabled
Administrative Mode: dynamic desirable
Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1q
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
(略)

●S2の「show interfaces f0/0 switchport」の出力

S2#show interfaces f0/8 switchport
Name: Fa0/8
Switchport: Enabled
Administrative Mode: dynamic desirable
Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1q
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
(略)

f0/8 がアクセスモードになっていることが確認できます。

S1:trunk S2:trunk の検証

S1スイッチ、S2スイッチで以下の設定を行います。

S1(config)#int f0/8
S1(config-if)#switchport mode trunk

S1(config)#int f0/8
S1(config-if)#switchport mode trunk

各スイッチで、「show interfaces f0/8 switchport」コマンドを実行します。

●S1の「show interfaces f0/0 switchport」の出力

S1#show interfaces f0/8 switchport
Name: Fa0/8
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1q
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
(略)

●S2の「show interfaces f0/0 switchport」の出力

S2#show interfaces f0/8 switchport
Name: Fa0/8
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1q
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
(略)

f0/8 がアクセスモードになっていることが確認できます。

スイッチ スプーフィング攻撃への対策

 スイッチのポートは、デフォルトの設定で、Dynamic Autoモード、あるいは、Dynamic Desirableになっています。DTPが有効になっている場合、スイッチ スプーフィング攻撃を受けるリスクがあります。

 ネットワーク攻撃者は、スイッチポートのデフォルト設定では、DTPでリンクをトランクにするかどうかをネゴシエーションするということを利用して攻撃の糸口にします。

 trunk モードとなっているポートではすべての VLAN にアクセスできます。攻撃者は 802.1Q および DTP メッセージをエミュレートして、リンクをトランクにすることで、すべての VLAN へのアクセスを取得できます。

 トランクリンクが必要な場合の一般的なベストプラクティスは、インターフェイスを手動で、trunkモードにして、DTPを nonegotiate と指定して無効に設定することです。

以下のコマンドを追加します。

S1(config)#int f0/8
S1(config)#switchport nonegotiate

S2(config)#int f0/8
S2(config)#switchport nonegotiate

演習ファイル(完了)のダウンロード

 ネットワークの構成を Packet Tracer で一から設定していくのは大変かと思います。「ダウンロード」から演習を完了させたファイルのダウンロードができます。ファイルは、McAfee インターネットセキュリティでウイルスチェックをしておりますが、ダウンロードは自己責任でお願いいたします。