Merakiスイッチの初期設定ベストプラクティス
Merakiといえば私はアクセスポイントのイメージがあって、クラウド管理ができる便利な製品群というイメージがあります。しかし、まだまだクラウドに抵抗のある会社もあったりして、思ったようにお客さんに提案していけない商材であるとも感じてます。
そんなMerakiですがL2スイッチを設定する機会があったので、その時の様子を記録したいと思います。少しだけハマりました。
王道の設定方法(DHCP)
初期設定方法を調べると、DHCPが有効になっているネットワークに接続し、Merakiスイッチに自動でIPアドレスが割り当てられ、自動的にMeraki Dashboardと通信するというものです。
もちろんFirewall等で通信が許可されている前提です。
ローカルで設定する(Static IP Address)
DHCPでなくても、ローカル接続して1.1.1.100のIPアドレスにHTTPアクセスすると設定変更ができます。すごく使い辛いですが、一応可能です。IDとパスワード求められますが、IDはシリアル番号、パスワードは空欄です。
後述していますが、DHCP設定にしてないとMerakiスイッチからパケットが出てこないのではないか?という疑惑もあるため、設計的に静的固定IPとする場合でも、最初はDHCPで設定したほうがハマらない気がします。
今回の構成
本当に図にして載せる必要のないくらいシンプルな構成です。
経験談(客先でつながらない!)
自社内のラボでキッティングを済ませたMerakiスイッチをお客さんのオフィスに持っていきました。ケーブルを繋いでNWは構築され問題なく動いています。問題ないというのは、MerakiスイッチがL2スイッチとして意図した動作をしているということです。
しかし、問題はこれです。Meraki Dashboard(クラウドの管理画面)から、このMerakiスイッチが見えません。原因はMerakiスイッチがMeraki Dashboardと通信できていないことなのですが、自社ラボでは動いてたのに、なぜ客宅でうまくいかないのかが問題でした。変わったのはWANインターフェースのグローバルIPアドレスだけです。
トラブルシューティング(Merakiスイッチの挙動)
Merakiスイッチを再起動したり、ケーブルの抜き差しをしたりしても挙動は変わりませんでした。直接つながるFirewallでパケットキャプチャをしても、L2NWでつながっているPCでWiresharkを使ってパケットキャプチャをしても、Merakiを送信元とするパケットが見つかりません。
パケットキャプチャをしている状態でPingを打つと、ちゃんとReplyは返ってきますし、往復のトラフィックのキャプチャが可能です。つまり、明らかにMerakiスイッチが発生させてMerakiスイッチを送信元とするパケットがないのです。
仕方がなく(そもそも8ポートのスイッチで4ポートだけ設定する程度の)簡単な設定だったので初期化(Factory Reset)をしたところ、パケットキャプチャに変化が現れました。
なんと、GoogleのDNSの8.8.8.8にPingを打ちまくっているではありませんか。
※なお、初期化するとDHCPによるIP取得の設定に戻るので注意です。
解決(FirewallでACLのチューニング)
Merakiスイッチが8.8.8.8にPingを打ちまくっており、FirewallではPingの許可をしていないため、Merakiスイッチから送信されるが返答がない状態となっていました。
そのため、いったんFirewallのポリシー(ACL)でICMPを許可したところ、つながりました。
教訓
Meraki DashboardからMerakiスイッチとMeraki Dashboardの通信に必要なIPアドレスやプロトコル(HTTPSなど)が確認できますが、それに加えて8.8.8.8へのPingを許可することです。