はじめに
2022/7/13-15に函館で開催されたJANOG50併設イベントNETCONにご参加いただき、
ありがとうございました。
本記事ではJANOG50 NETCON にて出題した「Level2-3」について解説します。
Level2-3について
問題概要
問題文と構成図を以下に記載します。
問題文
Server1とServer2はとあるビルの中で、別の階層に設置されている。
その後Serverの増設に伴いServer3、Server4が新たに設置された。
ある日、Switch3、Switch4が故障し、それに伴って対象のスイッチを交換した。
故障したSwicthの交換後、それぞれアクセスしたいServerに対して、アクセスができなくなったようだ。
接続したいサーバ同士で接続できるように設定変更をしてほしい。
ゴール
1. Server1 <---> Server2でping疎通がある(Server1からping 172.16.0.254で応答がある)
2. Server3 <---> Server4でping疎通がある(Server3からping 172.16.254.254で応答がある)
構成図
問題説明
Level2-3はLayer 2(L2)関連の問題になっており、
L2のServer間で通信ができないという問題になっていました。
問題解説
この問題では下記について誤りがありました。
- Switch3, Switch4で定義すべきVLAN30, VLAN70が定義されていなかった
Level2-3では、合計150点の問題でした。
採点基準は以下となります。
75点条件: ゴールの 1 あるいは 2 を満たすこと。
150点条件: ゴールの 1 および 2 を満たすこと。
問題の解き方
- Show interface TrunkでTrunk Portに流れているVLAN IDの確認
- Switch3
Switch3#show interfaces trunk
Port Mode Encapsulation Status Native vlan
Gi0/0 on 802.1q trunking 1
Gi0/1 on 802.1q trunking 1
Port Vlans allowed on trunk
Gi0/0 30,70
Gi0/1 30,70
Port Vlans allowed and active in management domain
Gi0/0 none
Gi0/1 none
Port Vlans in spanning tree forwarding state and not pruned
Gi0/0 none
Gi0/1 none
Switch3#
- Switch4
Switch4#show interfaces trunk
Port Mode Encapsulation Status Native vlan
Gi0/0 on 802.1q trunking 1
Gi0/1 on 802.1q trunking 1
Port Vlans allowed on trunk
Gi0/0 30,70
Gi0/1 30,70
Port Vlans allowed and active in management domain
Gi0/0 none
Gi0/1 none
Port Vlans in spanning tree forwarding state and not pruned
Gi0/0 none
Gi0/1 none
Switch4#
この通りVLAN30, 70に関してallowedにはなっていますが、
activeにはなっていないことが確認できます。
Port Vlans allowed on trunk
Gi0/0 30,70
Gi0/1 30,70
Port Vlans allowed and active in management domain
Gi0/0 none
Gi0/1 none
2.VLAN IDの確認
- Switch3
Switch3#show vlan
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Gi0/2, Gi0/3, Gi1/0, Gi1/1
Gi1/2, Gi1/3
1002 fddi-default act/unsup
1003 token-ring-default act/unsup
1004 fddinet-default act/unsup
1005 trnet-default act/unsup
VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2
---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------
1 enet 100001 1500 - - - - - 0 0
1002 fddi 101002 1500 - - - - - 0 0
1003 tr 101003 1500 - - - - - 0 0
1004 fdnet 101004 1500 - - - ieee - 0 0
1005 trnet 101005 1500 - - - ibm - 0 0
Remote SPAN VLANs
------------------------------------------------------------------------------
Primary Secondary Type Ports
------- --------- ----------------- ------------------------------------------
Switch3#
- Switch4
Switch4#show vlan
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Gi0/2, Gi0/3, Gi1/0, Gi1/1
Gi1/2, Gi1/3
1002 fddi-default act/unsup
1003 token-ring-default act/unsup
1004 fddinet-default act/unsup
1005 trnet-default act/unsup
VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2
---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------
1 enet 100001 1500 - - - - - 0 0
1002 fddi 101002 1500 - - - - - 0 0
1003 tr 101003 1500 - - - - - 0 0
1004 fdnet 101004 1500 - - - ieee - 0 0
1005 trnet 101005 1500 - - - ibm - 0 0
Remote SPAN VLANs
------------------------------------------------------------------------------
Primary Secondary Type Ports
------- --------- ----------------- ------------------------------------------
Switch4#
この通りVLAN30, 70が未定義になっていることが確認できます。
つまり、VLAN30, 70が未定義のため、
Trunk Interfaceで流れなかったということになります。
- VLAN IDの定義
下記の設定をSwitch3/4に設定することで、
Trunk InterfaceでVLAN30, 70が流れるようになり問題が解決いたします。
ena
configure terminal
vlan 30,70
end
VLANが定義されているかは以下で確認できます.
Switch3#sh vlan brief
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Gi0/2, Gi0/3, Gi1/0, Gi1/1
Gi1/2, Gi1/3
30 VLAN0030 active
70 VLAN0070 active
1002 fddi-default act/unsup
1003 token-ring-default act/unsup
1004 fddinet-default act/unsup
1005 trnet-default act/unsup
Switch3#
Switch4#sh vlan brief
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Gi0/2, Gi0/3, Gi1/0, Gi1/1
Gi1/2, Gi1/3
30 VLAN0030 active
70 VLAN0070 active
1002 fddi-default act/unsup
1003 token-ring-default act/unsup
1004 fddinet-default act/unsup
1005 trnet-default act/unsup
Switch4#
VLANを定義したことでTrunk InterfaceにVLANが流れていることが確認できます。
Switch3#sh interfaces trunk
Port Mode Encapsulation Status Native vlan
Gi0/0 on 802.1q trunking 1
Gi0/1 on 802.1q trunking 1
Port Vlans allowed on trunk
Gi0/0 30,70
Gi0/1 30,70
Port Vlans allowed and active in management domain
Gi0/0 30,70
Gi0/1 30,70
Port Vlans in spanning tree forwarding state and not pruned
Gi0/0 30,70
Gi0/1 30,70
Switch3#
Switch4#sh interfaces trunk
Port Mode Encapsulation Status Native vlan
Gi0/0 on 802.1q trunking 1
Gi0/1 on 802.1q trunking 1
Port Vlans allowed on trunk
Gi0/0 30,70
Gi0/1 30,70
Port Vlans allowed and active in management domain
Gi0/0 30,70
Gi0/1 30,70
Port Vlans in spanning tree forwarding state and not pruned
Gi0/0 30,70
Gi0/1 30,70
Switch4#
4.解決の確認
ゴールを満たしているかを確認してみます。
janoger@Server1:~$ ping 172.16.0.254 -c 3
PING 172.16.0.254 (172.16.0.254) 56(84) bytes of data.
64 bytes from 172.16.0.254: icmp_seq=1 ttl=64 time=39.5 ms
64 bytes from 172.16.0.254: icmp_seq=2 ttl=64 time=37.2 ms
64 bytes from 172.16.0.254: icmp_seq=3 ttl=64 time=37.4 ms
--- 172.16.0.254 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2004ms
rtt min/avg/max/mdev = 37.170/38.014/39.490/1.046 ms
janoger@Server1:~$
[janoger@Server3 ~]$ ping 172.16.254.254 -c 3
PING 172.16.254.254 (172.16.254.254) 56(84) bytes of data.
64 bytes from 172.16.254.254: icmp_seq=1 ttl=64 time=55.1 ms
64 bytes from 172.16.254.254: icmp_seq=2 ttl=64 time=31.4 ms
64 bytes from 172.16.254.254: icmp_seq=3 ttl=64 time=19.10 ms
--- 172.16.254.254 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 19.972/35.486/55.104/14.633 ms
[janoger@Server3 ~]$
上記の通りゴール1, 2両方を満たした状態になっています。
おわりに
Level2-3は自動で設定が補完される場合とされない場合があること
show running-configだと確認できない設定の確認方法
を体験いただきたくて出題させていただきました。
Trunk Portの設定した際にVLANが定義されていない場合には、
Access Portの設定(switchport access vlan {VLAN_ID})と異なり、
自動でVLANが定義されない点に加えて、VLANの定義状態は(cisco IOSの場合)
show running-configで確認不可になっていますので、
running-configが同じでも通信ができない状態になってしまいます。
今回はJANOG50併設イベントのNETCONにご参加いただきありがとうございました。
少しでも楽しんでいただけたのならNETCONスタッフとして幸いです。
また、もしNETCONが開催される際には引き続きNETCONをよろしくお願いいたします。