このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
ネットワーク構成
ネットワークの構成は、下図のとおりです。

演習ファイルのダウンロード
ネットワークの構成を Packet Tracer で一から設定していくのは大変かと思います。「ダウンロード」から演習で使用するファイルのダウンロードができます。ファイルは、McAfeeインターネットセキュリティでウイルスチェックをしておりますが、ダウンロードは自己責任でお願いいたします。
DTPの検証
ここでは、スイッチ間におけるDTP(ダイナミックトランキングプロトコル)のネゴシエーションを検証していきます。また、スイッチス プーフィング攻撃を防ぐにために、トランクを設定するポートで、DTP を無効にして、手動でトランクを有効にしていきます。
DTPによるネゴシエーションの組み合わせは、以下の通りです。
DTPネゴシエーションの結果
Dynamic Auto | Dynamic Desirable | Trunk | Access | |
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 インターネットセキュリティでウイルスチェックをしておりますが、ダウンロードは自己責任でお願いいたします。