PCからルーターにはシリアル接続やTELNET、SSHでログインします。ルーターにはスイッチの設定や状態取得を行うためのコマンドが用意されており、これらのコマンドを実行することでスイッチを操作します。ルーターとスイッチはイーサネットケーブルで接続します。通信には独自のプロトコルを使用します。本機能は次のような特徴を持っています。
- 初期設定不要
- TELNETやSSHでは最初にIPアドレスを設定する必要がありますが、本機能では独自プロトコルを使用して通信を行うためスイッチへの初期設定は不要です。イーサネットケーブルを接続すると、ルーターは自動的に配下のスイッチを認識します。
- 複数スイッチの同時制御
- ルーターは、同時に複数のスイッチを認識し制御することができます。
ヤマハルーターでは以下の機種およびファームウェアで、スイッチ制御機能をサポートしています。ファームウェアリビジョンによって以下の通り、一部機能に差異があります。
- 最大制御台数 ... 1つのLANインタフェースにつき制御できるスイッチの台数。
- ポート分離機能との併用 ... ポート分離機能が設定されているLANインタフェースでスイッチ制御機能を使用できるか否か。
| 機種 |
ファームウェア |
最大制御台数 |
ポート分離機能との併用 |
| RTX810 |
Rev.11.01.04 |
8 |
× |
| Rev.11.01.06 〜 |
32 |
○ |
| NVR500 |
Rev.11.00.13 〜 |
8 |
× |
| RTX1200 |
Rev.10.01.29 〜 |
8 |
× |
ヤマハスイッチでは以下の機種およびファームウェアで、スイッチ制御機能をサポートしています。
| 機種 |
ファームウェア |
| SWX2200-24G |
Rev.1.00.04 |
| SWX2200-8G |
スイッチ制御機能の使用
スイッチ制御機能を使用するか否かをLANインタフェースごとに設定します。ルーターは、switch control useコマンドがonに設定されたLANインタフェース配下に接続されているスイッチを認識し制御します。
ルーターが認識しているスイッチはshow status switch controlコマンドで確認することができます。
スイッチの監視
ルーターは定期的に探索パケットを送信することで配下のスイッチを監視します。また、スイッチは探索パケットに対して応答パケットを送信することでルーターに自身の存在を通知します。
探索パケットの送信時間間隔は、switch control watch intervalコマンドのTIMEパラメータで設定します。設定値を大きくすると、送信頻度は減りますが、スイッチを接続してからルーターが認識するまでの時間は長くなります。設定値を小さくした場合はその逆となり、送信頻度は増えますが、スイッチを接続してからルーターが認識するまでの時間は短くなります。
ルーターが探索パケットを一定回数送信してもスイッチから応答パケットを受信しない場合、当該スイッチはダウンしたと判断します。回数はswitch control watch intervalコマンドのCOUNTパラメータで設定します。また、スイッチを接続しているイーサネットケーブルを抜いた場合は当コマンドの設定よりも早いタイミングでスイッチがダウンしたと判断することがあります。
使用するネットワーク環境に合わせてswitch control watch intervalコマンドの各パラメータに適切な値を設定してください。
スイッチの占有
1つのスイッチを複数のルーターが同時に制御することはできません。
スイッチが起動直後に探索パケットを受信すると、当該スイッチは探索パケットを送信したルーターに占有された状態となります。この状態は、以下のいずれかの条件により解除されます。
スイッチの操作
以下のコマンドを使用することで、ルーターからスイッチを操作する (設定を変更したり、動作状態を取得したりすること) ことができます。
詳細についてはこちらを参照してください。
ファームウェアの更新
switch control firmware upload goコマンドを実行することで、ルーターからスイッチのファームウェアを更新することができます。ファームウェアのファイルは事前にフラッシュROMのRTFS領域や外部メモリに保存しておきます。更新処理が正常に終了すると、スイッチは自動的に再起動します。
スイッチの指定方法
コマンドでスイッチを指定する場合、MACアドレスによる指定と経路による指定の2つの方法があります。
経路による指定方法では、ルーターを基点として途中にある各スイッチのポート番号を順に記述します。
上図のような構成でスイッチCを指定する場合の表記は "lan1:2-5-13" となります。
- 最初にルーターのLANインタフェースを指定します。
- LANインタフェースがスイッチングハブである場合、ポート番号を指定します。LANインタフェース名とポート番号の間はコロン ":" で区切ります。
- LANインタフェースがスイッチングハブでない場合、ポート番号の指定は不要です。
- ルーターとスイッチCの間にある各スイッチのポート番号をルーターに近い方から順に指定します。各ポート番号はハイフン "-" で区切ります。
他社スイッチが混在する構成での経路指定
ルーターの配下に他社スイッチが接続されていても、ルーターはそれを認識することができません。この場合、他社スイッチの配下にいるヤマハスイッチを経路で指定できる場合とできない場合があります。
指定できる場合
以下のように、他社スイッチの配下にヤマハスイッチが1つだけ接続されている場合は経路で指定することができます。ヤマハスイッチAの経路はlan1:2となります。
指定できない場合
以下のように、他社スイッチの配下にヤマハスイッチが複数接続されている場合は経路で指定することができません。ヤマハスイッチA、B両方とも経路はlan1:2になるため、コマンドを実行してもエラーになります。この場合はMACアドレスで指定してください。
- [書式]
-
switch control use INTERFACE USE
no switch control use INTERFACE
- [設定値]
-
- INTERFACE ... LANインタフェース名
-
USE
- on ... 使用する
- off ... 使用しない
- [説明]
- スイッチ制御機能を使用するか否かをLANインタフェースごとに設定する。本コマンドがonに設定されたインタフェースでは、スイッチ制御機能に対応したスイッチを制御するための通信が行われる。スイッチ制御機能に対応したスイッチを配下に接続しないインタフェースにおいては本コマンドをoffに設定することで、不要なパケットの送出を抑えることができる。
- [ノート]
- INTERFACEには物理的なLANインタフェース (lanN) のみを指定することができる。LAN分割機能またはポート分離機能が有効になっているインタフェースでは本コマンドを設定することができない。
- [初期値]
- USE ... off
- [書式]
-
switch control watch interval TIME [COUNT]
no switch control watch interval
- [設定値]
-
- TIME ... 秒数 (2 .. 10)
- COUNT ... 回数 (2 .. 10)
- [説明]
- スイッチを探索するパケットの送信時間間隔、およびスイッチからの応答パケットを受信せずダウンしたと判断するまでの探索パケット送信回数を設定する。
- TIMEを大きな値に設定した場合、探索パケットの送信頻度は減るが、スイッチを接続してからルーターが認識するまでの時間が長くなる。TIMEを小さな値に設定した場合はその逆となり、探索パケットの送信頻度は増えるが、スイッチを接続してからルーターが認識するまでの時間が短くなる。
- 探索パケットをCOUNTで設定した回数送信してもスイッチから応答パケットを受信しない場合、当該スイッチはダウンしたと判断する。
- [ノート]
- スイッチを接続しているイーサネットケーブルを抜いた場合は、当コマンドの設定よりも早いタイミングでスイッチがダウンしたと判断することがある。
- [初期値]
-
- [書式]
-
switch select SWITCH
no switch select
- [設定値]
-
- [説明]
- 対象とするスイッチを選択する。以降プロンプトにはconsole promptで設定した文字列と選択したスイッチが続けて表示される。
- switch select noneまたはno switch selectを実行すると、プロンプトにスイッチを表示しなくなる。
- [書式]
-
switch control function set FUNCTION [INDEX...] VALUE
no switch control function set FUNCTION [INDEX...]
- [設定値]
-
- FUNCTION ... 機能の名前
- INDEX ... インデックス
- VALUE ... 機能に設定する値
- [説明]
- スイッチが持つ機能について設定を行う。設定したい機能の名前とその機能に対する設定値をパラメータとして指定する。複数の設定対象が存在する機能ではインデックスを指定する。
- コマンド実行中にCtrl-C押下で中断することができる。ただし、実行後に同期処理が開始された場合は中断できない。
- [ノート]
- 本コマンドを実行する前にswitch selectでスイッチを指定しておく必要がある。
- スイッチの機能についてはコマンドリファレンスを参照のこと。
- [書式]
- switch control function get FUNCTION [INDEX...] [SWITCH]
- [設定値]
-
- FUNCTION ... 機能の名前
- INDEX ... インデックス
-
SWITCH ... スイッチ
- [説明]
- スイッチが持つ機能の設定内容や動作状態を取得する。取得したい機能の名前をパラメータとして指定する。複数の取得対象が存在する機能ではインデックスを指定する。
- コマンド実行中にCtrl-C押下で中断することができる。
- [ノート]
- SWITCHを指定しない場合は、本コマンドを実行する前にswitch selectでスイッチを指定しておく必要がある。
- スイッチの機能についてはコマンドリファレンスを参照のこと。
- [書式]
- switch control function execute FUNCTION [INDEX...] [SWITCH]
- [設定値]
-
- FUNCTION ... 機能の名前
- INDEX ... インデックス
-
SWITCH ... スイッチ
- [説明]
- スイッチに対して特定の動作を実行させる。実行したい動作に対応する機能の名前をパラメータとして指定する。複数の実行対象が存在する機能ではインデックスを指定する。
- コマンド実行中にCtrl-C押下で中断することができる。
- [ノート]
- SWITCHを指定しない場合は、本コマンドを実行する前にswitch selectでスイッチを指定しておく必要がある。
- スイッチの機能についてはコマンドリファレンスを参照のこと。
- [書式]
- switch control function default [both] [SWITCH]
- [設定値]
-
- both ... 対象のスイッチに対して適用可能な設定をすべて削除する
-
SWITCH ... スイッチ
- [説明]
- 選択したスイッチに対するルーター上の設定を削除する。同時に、ルーターがスイッチを制御している場合は同期処理を行う。
- bothオプションを指定しない場合、スイッチに対して適用可能な他の設定が存在すれば、その設定でスイッチを同期する。例えば、MACアドレス指定と経路指定の設定が存在する状態で、MACアドレス指定の設定を選択して本コマンドを実行した場合、MACアドレス指定の設定が削除された後、スイッチは経路指定の設定で同期される。
- bothオプションを指定する場合、スイッチに対して適用可能な他の設定が存在すれば、その設定も同時に削除する。上記の例では、MACアドレス指定と経路指定の両方の設定が削除される。
- すなわち、スイッチを確実に初期化したい場合はbothオプションを指定する。
- [ノート]
- SWITCHを指定しない場合は、本コマンドを実行する前にswitch selectでスイッチを指定しておく必要がある。
- [書式]
- switch control firmware upload go FILE [SWITCH]
- [設定値]
-
- FILE ... ファームウェアのファイルへの相対パスまたは絶対パス
-
SWITCH ... スイッチ
- [説明]
- スイッチのファームウェアを更新する。ファームウェアのファイルはフラッシュROMや外部メモリへ事前に保存しておき、FILEにパスを指定する。ファームウェアの書き換えに成功すると、スイッチは自動的に再起動する。
- コマンド実行中にCtrl-C押下で中断することができる。
- FILEに相対パスを指定した場合、環境変数PWDを基点としたパスと解釈される。PWDはsetコマンドで変更可能であり、初期値は "/" である。
- [ノート]
- SWITCHを指定しない場合は、本コマンドを実行する前にswitch selectでスイッチを指定しておく必要がある。
- [書式]
- show status switch control [INTERFACE]
- [設定値]
- INTERFACE ... LANインタフェース名
- [説明]
-
ルーターが制御しているスイッチの一覧を表示する。インタフェースを指定しない場合は、すべてのインタフェースについて情報を表示する。
- MACアドレス
- 機種名
- 機器名
- ルーターからの経路
- アップリンクポート
- 現在使用している設定内容
- [表示例]
-
> show status switch control
LAN1
[00:a0:de:01:02:03]
機種名 : SWX2200-24G
機器名 : SWX2200-24G_0123456
経路 : lan1:1
アップリンク: 1
設定 : switch select lan1:1
---
LAN2
スイッチ制御機能が有効になっていません
---
LAN3
スイッチ制御機能が有効になっていません
> show status switch control
LAN1
[00:a0:de:01:02:03]
Model name : SWX2200-24G
System name: SWX2200-24G_0123456
Route : lan1:1
Uplink : 1
Config : switch select lan1:1
---
LAN2
Switch control function is not available.
---
LAN3
Switch control function is not available.
本機能において出力されるSYSLOGメッセージを以下に示します。実際に出力されるメッセージには "[SWCTL] route(addr):" というプレフィックスが付加されます。routeはルーターからスイッチへの経路、addrはスイッチのMACアドレスです。
| レベル |
出力メッセージ |
意味 |
| INFO |
find switch |
スイッチを認識した。 |
| detect down |
スイッチがダウンした。 |
| sync start |
スイッチの同期処理を開始した。 |
| sync done |
スイッチの同期処理が完了した。 |
| sync failed |
スイッチの同期処理に失敗した。 |
| PORTn link up (speed) |
スイッチのポートnがリンクアップした。通信速度はspeed。 |
| PORTn link down |
スイッチのポートnがリンクダウンした。 |
| fan lock |
スイッチのファンが停止している。 |
| PORTn loop detect |
スイッチのポートnでループが発生していた。(注) |
| DEBUG |
can't get param of sync |
スイッチの同期処理を行うために必要な情報を取得できない。 |
- (注)
- このSYSLOGが出力されるのはループの発生をスイッチが検出し、ポートを自動的にリンクダウンした状態のときです。ループが発生している最中ではありません。したがって、loopdetect-linkdownがlinkdownもしくはlinkdown-recoveryに設定されている必要があります。なお、ループ検出機能の詳細についてはコマンドリファレンスを参照してください。