1 - 1.CISCO機器の基礎

CISCO機器のL2スイッチやルータを操作・扱うための備忘録を記載する。

1.1. CISCO機器への接続

CISCOのルータやスイッチにアクセスする方法は3つある。

方法説明
コンソール接続ConsoleポートとPCをコンソールケーブルで接続する
VTY(仮想端末)接続ネットワーク経由でリモートでTELNET/SSHで接続する
AUX接続AUXポートとモデムを接続し電話回線経由で接続する

基本的にはコンソール接続やVTY接続はTeraTerm等のターミナルエミュレータを使用して機器にアクセスして設定を行う。

1.1. コンソール接続

コンソールケーブル(ロールオーバケーブル)でPCとルータ等のConsoleポートを接続する方法。 最近はPC側にDB-9コネクタがない場合が多いので、USBへの変換ケーブルを挟んで使用する場合が多い。

1.2. VTY接続

遠隔操作用のプロトコルであるTelnet/SSHを使用して設定/状態確認を行う方法。

Telnetの場合

通信経路上で入力した情報が暗号化されずに平文で送信されるためパスワードなどが漏洩する可能性がある。

SSHの場合

通信経路上で暗号化して送信されるためパスワード等が漏洩する危険性が低い

1.2. CISCOルータ操作の基本知識

1.2.1. CISCOのIOS

CISCO製品のルータやスイッチはCISCO独自のCisco IOSがOSとして使用されている。 アクセスは基本的にはCLIで行う必要がある。

1.2.2. CISCO IOSの初期状態

CISCOルータ/スイッチの初期状態ではアクセスするとSetup モードとなっている。 Setupモードでは質問の1つずつ答えることで設定が可能となるが、一般的には使用されない。 初回時にyesと答えるとSetupモードで設定ができ、noと答えるとSetupモードではなく手動で設定が可能。

1.2.3. CISCO IOSのモード

Cisco IOSには操作モードがいくつかあり、それぞれの状態でできることが異なる。

モード名プロンプト説明
ユーザEXECモード>機器のステータスを確認できるモード
特権EXECモード#制限なく機器の動作/ステータスを確認できるモード
Global Configurationモード(config)#機器全体に関わる設定を行うモード
Interface Configurationモード(config-if)#インターフェイスに関する設定を行うモード
Routing Configurationモード(config-router)#ルーティングに関する設定を行うモード
Line Configurationモード(config-line)#(コンソール、AUX、VTY)に関する設定を行うモード

各モードへの移行は以下図のような関係となる。

IOSモード

ユーザEXECモード

機器のステータスのみを確認できるモード。

特権EXECモード

機器のステータスを制限無しで確認/設定ファイルの操作を行えるモード。

enable

Global Configurationモード

機器全体の設定を行うモード。 具体的にはルータ本体の設定などを行う。

configure terminal conf t

1.2.4. 設定ファイルとその保存場所

CISCO IOSの重要な設定ファイルにはstartup-configrunning-configという2つのファイルがある。

startup-config

起動時に読み込まれるファイルでNVRAMに保存されるルータが再起動しても内容が消えない設定ファイル。 再起動時にデータが消えないようにするにはこのファイルに書き込む必要がある。

runnning-config

ルータが再起動すると消えるファイル。現在動作している設定内容が保存されているファイル。

ルータのメモリ領域

CISCOルータには4つのメモリ領域がある。

種類保存内容説明
RAMrunning-configなど読み書き可能、電源を消しても内容は消える
NVRAMstartup-config, コンフィギュレーションレジスタ読み書き可能、電源を消しても内容は消えない
ROMMini IOS, POST, BootStrap, ROMモニタ読み書き専用、電源を消しても内容は消えない
フラッシュメモリIOS読み書き可能、電源を消しても内容は消えない

RAMは揮発性メモリであり、running-configやパケットなどを一時保持するバッファ、ルーティングテーブルなどがここに保持される。

NVRAMは不揮発性メモリであり、startup-configやコンフィギュレーションレジスタが保存される。 このコンフィギュレーションレジスタはルータのブート制御に使用される。 以下にコンフィギュアレーションのレジスタ値を示す。

レジスタ値説明
0x2100ROMモニタで起動、パスワード復旧時に使用する
0x2101Mini IOSでブート、IOSバージョンアップで使用する
0x2102通常通りIOSや設定を読み込んで起動
0x2142パスワードリカバリの際に使用される

コンフィギュレーションレジスタ値はshow versionで確認可能。 またコンフィギュレーションレジスタ値の変更はconfigure-registor <レジスタ値>で行う。

ROMはルータ起動/ハードウェアチェックを行うためのプログラムが格納される。 ROMに保存されるプログラムを以下表に示す。

プログラム説明
POSTハードウェアチェックを行う
BootStrapOSをロードする
ROMMONパスワードリカバリやIOSのリカバリの際に使用される
Mini OSIOSの最小限機能を持ち、ハードウェアエラーの際に読み込まれる

フラッシュメモリにはCisco IOSの情報が保持される。

1.2.5. ルータの初期化の方法

ルータの初期化手順は以下の通り。

  1. NVRAM上のstartup-configを消去する
  2. ルータの再起動を行う

コマンドは特権EXECモードで以下の通り行う。

# startup-configの消去 erase startup-config # 再起動 reload

1.2.6. CISCOルータの起動プロセス

CISCOルータの起動プロセスを以下に示す。

  1. POST(電源投入時自己診断)の実行
  2. BootStrapがCisco IOSをロードする
  3. Cisco IOSが有効なコンフィギュレーションファイルをロードする

1.2.7. コマンド入力補助機能

UNIXコマンドと同じようにCISCO IOSにも似た補完機能がある。

機能入力キー説明
ヘルプ機能?コマンドやオプションを忘れた際に入力中のコマンドに続く候補を教えてくれる
補完機能tabキーコマンドの後ろ部分を保管してくれる機能
直前コマンド入力機能↑キー もしくは Ctrl+P以前に入力したコマンドの表示
次コマンド入力機能↓キー もしくは Ctrl+N次に入力したコマンドの表示
do コマンドGlobal Configurationモードでdoをつけると特権EXECモードでコマンドが実行可能

なおコマンドの履歴は特権EXECモードでshow historyコマンドを実行すると表示される。

1.3. 基本的なCISCOコマンド

1.3.1. showコマンド - 設定などの確認

特権EXECモードでshowを実行することで各種設定を確認できる。

# 現在の設定を確認する例 show running-config show run # コマンド履歴の確認 show history # ConfigureationTerminalとHistoyBufferSizeの表示 show terminal # インターフェイス情報の詳細表示 show interfaces # インターフェイス情報の簡潔表示 show interfaces brief # 時刻の表示 show clock

パイプを使用した絞り込み表示

show running-config | section vlan
コマンド説明
begin指定内容に一致した行から表示の開始
exclude指定内容に一致した行は表示から除く
include指定内容に一致した行のみを表示する
section指定内容に一致したセクションのみを表示する

routerのospf設定のみを表示させる例

show runnning-config | section router ospf

1.3.2. copyコマンド - 設定ファイルの保存

特権EXECモードでcopyを実行することで設定ファイルを保存できる。

copy <コピー元> <コピー先>

startup-configに現行の設定を保存する例

running-configをNVRAMのstartup-configに上書きする。 これによりルータ電源を落としても設定が保存できる。

copy running-config startup-config

running-configをTFTPサーバにコピーする例

TFTPサーバに現行の設定をバックアップするためのコマンド。

copy running-config tftp

TFTPサーバに保存されたルータ設定をrunning-configにコピーする例

copy tftp running-config

1.3.3. hostnameコマンド - ルータ/スイッチの名称変更

特権EXECモードでhostnameを実行することでホスト名を変更、no hostnameでホスト名の設定の削除をできる。

hostname Router1

1.4. CISCO機器へのパスワード設定

1.4.1. ユーザEXECモードへのアクセス制限(Consoleパスワード)

Ciscoルータへ管理アクセスする方法にはコンソールポート経由、AUXポート経由、VTYポート経由の大きく3つある。 3つそれぞれのポートからアクセスする際にパスワードの入力を求めるように設定ができる。

コンソールポートへのパスワード設定

(config)#line console 0 (config-line)#password <パスワード> (config-line)#login

AUXポートへのパスワード設定

(config)#line aux 0 (config-line)#password <パスワード> (config-line)#login

VTYポートへのパスワード設定

(config)#line vty <開始ライン番号> <終了ライン番号> (config-line)#password <パスワード> (config-line)#login

接続の自動ログアウトの設定

(config-line)#exec-timeout <分> [<秒>]

1.4.2. 特権EXECモードへのアクセス制限(Enableパスワード)

Cisco機器の特権EXECモードに移る際(enable)にパスワードの入力を求めるように設定ができる。 パスワードのかけ方はenable passwordenable secretの2つがあり、暗号化される観点から後者の使用が推奨される。

enable password

(config)#enable password <パスワード>

enable secret

(config)#enable secret <パスワード>

1.4.3. パスワードの暗号化

Ciscoルータではenable secretコマンドのパスワードを除き、line vtyやconsoleに設定したパスワードや enable passwordなどは暗号化されずにクリアテキストとしてconfig上に表示されてしまう。 この問題はservice password-encryptionコマンドを設定することで、これらのパスワードが自動的に暗号化するようにできる。

service password-encryption

1.5. ローカル認証の設定とユーザアカウント作成

ローカル認証はパスワードだけでなくユーザー名も認証に必要な設定方法。 コンソールにローカル認証を設定するには以下の手順の通り。

  1. ユーザーアカウントの作成
  2. ラインコンフィグレーションモードに移行する
  3. 作成したユーザーアカウントの使用を指定

設定例を以下に示す。

(config)#username <ユーザー名> [privilege <特権レベル>] password <パスワード> (config)#line console 0 (config-line)#login local

特権レベルはユーザーの特権レベルを指定する。 0 ~ 15 が指定でき、設定されたレベル以下のコマンドしか実行できなくなる。

privilegeを指定せずに作成したユーザーでログインするとユーザEXECモードから始まり、 実行出来るコマンドは1以下に設定されているコマンドになる。

特権レベル15は特権EXECモードとなり、全てのコマンドが実行出来る。 この場合、ログイン後にユーザEXECモードを経由する事なく特権EXECモードから始まる。

1.6. SSH接続の設定

SSHでCiscoのネットワーク機器にアクセスする場合は以下手順で設定を行う。

  1. ホスト名の設定
  2. ドメイン名の設定
  3. RSA暗号鍵の生成
  4. ユーザアカウントを作成
  5. ローカル認証の指定
  6. SSHの接続許可の設定
  7. SSHのバージョン指定

設定例は以下の通り。

(config)#ip domain-name <ドメイン名> (config)#crypto key generate rsa (config)# (config)#username <ユーザー名> [privilege <特権レベル>] password <パスワード> (config)#line console 0 (config-line)#login local (config-line)#exit (config)# (config)#line console 0 (config-line)#tranceport input <telnet | ssh | all | none> (config-line)#exit # SSH 1.0の脆弱性からバージョン2の利用が推奨 (config)#ip ssh version <1 | 2>

1.7. ネットワークの調査を行うためのコマンド

1.7.1. tracerouteと拡張traceroute

traceroute

tracerouteはコンピュータからIPネットワーク上の対象機器までの経路を調べ、パケットがそこに至るまでの中継機器のアドレス等を一覧で表示する機能。

Ciscoのルータではこの機能をサポートしている。

traceroute <1pアドレス | ホストのアドレス>

拡張traceroute

拡張tracerouteコマンドは特権モードでのみ使用できる。 拡張tracerouteコマンドはtracerouteコマンドの後に何もパラメータを指定しないで実行する。

実行後、様々なパラメータを入力するように促され、tarcerouteを細かく設定できる。

  • Target IP address…宛先IPアドレスを指定
  • Source address…送信元IPアドレスを指定
  • Probe count…送信するプローブパケットの数を指定
  • Minimum Time to Live…最小のTTLを指定(2を指定した場合は2ホップ目からの情報が表示される)
  • Maximum Time to Live…最大のTTLを指定

1.7.2. pingと拡張ping

ping

pingは疎通確認用のL3以上のプロトコル。

ping <IPアドレス | ホストのアドレス>

拡張ping

拡張Pingを行った場合、さまざまなパラメータを指定できる。 拡張Pingで指定できる主なパラメータを以下に記す。

  • Protocol
  • Target IP address
  • epeat count(パケットの数)
  • Datagram size
  • Timeout in seconds
  • Source address or interface

1.8. お役立ちCISCO IOSコマンドメモ

役に立つかわからないけど、Cisco IOSのコマンドやシステムに関するメモを記載します。

1.8.1. alias exec - コマンドの代替え

コマンドをLinuxのaliasコマンドのようにラッピングするための新しいコマンドを作成できる。 あんまり使わないけど役に立つ。

(config)#alias exec <エイリアス名> <エイリアスでラッピングしたいコマンド> (config)#exit

削除する場合はno alias <エイリアス名> <エイリアスでラッピングしたいコマンド>

1.8.2. 間違ったコマンドを入れた際の名前解決を停止する

よくCisco IOSに誤ったコマンドを入れるとコマンドをドメインと勘違いして接続を試みようとして数十秒操作不能になる。 これを防ぐにはno ip domain-lookupを入れることで名前解決を試みなくなる。

1.8.3. ルータでメッセージを送る

接続中のセッション(ユーザコンソール)にメッセージを送る 送る際は実際にはshow usersでセッションを確認すると良い。

# vty 1に送る例 send vty 1

入力画面 Ctrl+Z で送信可能。

2 - 2.Catalystスイッチの設定とVLAN

CatalystやVLANに関する設定方法

2.1. Catalystスイッチ基本設定

2.1.1. スイッチへのIPアドレスの設定

スイッチにも管理目的のためにIPアドレスを設定可能。 スイッチにIPアドレスを設定するのは以下の理由より。

  • リモート(SSHなど)からスイッチの設定を行うため
  • VSMよりブラウザからスイッチの設定を行うため
  • SNMPプロトコルによるスイッチ管理のため

IPアドレスの設定

スイッチへのIPアドレスの設定は以下コマンドで行える。 スイッチでは管理VLAN(デフォルトでは1)にIPアドレスは設定することになる。

(config)#interface vlan 1 (config-if)#ip address <IPアドレス> <サブネットマスク> (config-if)#no shutdown

デフォルトゲートウェイの設定

スイッチへのデフォルトゲートウェイ設定は以下コマンドで実行可能。

(config)#ip default-gateway <デフォルトゲートウェイのIPアドレス>

2.1.2. MACアドレステーブルの管理

MACアドレステーブルの確認

MACアドレステーブルの確認は以下コマンドで行う。

show mac-address-table

静的MACアドレスの追加

静的MACアドレスのテーブルへの追加は以下コマンドで行う。

(config)#mac-address-table static <MACアドレス> vlan <VLAN番号> interface <ポート>

2.1.3. ポートセキュリティの設定

Catalystスイッチはポートセキュリティ機能がある。 これはハッキングなどによる情報漏洩を防ぐために使用できる。 具体的にはあらかじめ許可したMACアドレス以外のMACアドレスを持つホストのフレームを遮断する

静的ポートセキュリティの設定

静的(スタティック)にポートセキュリティの設定を行う場合以下手順で行える。

  1. ポートセキュリティを設定するインターフェイスをアクセスポートに設定する
  2. ポートセキュリティの有効化
  3. 最大MACアドレスを設定する
  4. 許可するMACアドレスを登録する
  5. バイオレーションモード(不正なMACアドレスホスト接続時の動作)の設定
  6. ポートセキュリティの設定の確認

コマンド例は以下の通り。

(config)#inyterface fastEthernet <ポート番号> (config-if)#switchport mode access (config-if)#switchport port-security (config-if)#switchport port-security maximum <最大MACアドレス数> (config-if)#switchport port-security mac-address <接続許可するMACアドレス> (config-if)#exit (config)#switch port-security violation <protect | restrict | shutdown> (config)#exit show port-security

なおswitch port-security violation <protect | restict | shutdown>はバイオレーションモードの設定箇所で各挙動は以下の通り。

  • protect … 不正なMACアドレスのフレームは破棄する
  • restrict … protectの機能+SNMPによる通知が可能
  • shutdown … インターフェイスをerr-diabledにして無効化する+SNMPによる通知が可能

動的ポートセキュリティの設定

動的(ダイナミック)にポートセキュリティの設定を行う場合以下手順で行える。

  1. ポートセキュリティを設定するインターフェイスをアクセスポートに設定する
  2. ポートセキュリティの有効化
  3. 最大MACアドレスを設定する
  4. スティキーラーニングの有効化
  5. バイオレーションモード(不正なMACアドレスホスト接続時の動作)の設定
  6. ポートセキュリティの設定の確認

コマンド例は以下の通り。

(config)#inyterface fastEthernet <ポート番号> (config-if)#switchport mode access (config-if)#switchport port-security (config-if)#switchport port-security maximum <MACアドレス数> (config-if)#switchport port-security mac-address sticky (config-if)#exit (config)#switch port-security violation <protect | restrict | shutdown> (config)#exit show port-security

ポートセキュリティにより無効された場合の復旧手順

原因を改善後に以下コマンドを行うことで復旧が可能。

(config)#inyterface fastEthernet <ポート番号> (config-if)#shutdown (config-if)#no shutdown

2.2. VLANの設定

2.2.1. VLANの作成と確認

VLANの確認

show vlan

VLANの作成/削除

(config)#vlan <VLAN番号> (config)#no vlan <VLAN番号>

2.2.2. VLANへのポート割り当て

Access port

(config)#interface fastEthernet <ポート番号> (config-if)#switchport mode access (config-if)#switchport access vlan <VLAN番号>

Trunk port

(config)#interface fastEthernet <ポート番号> (config-if)#switchport mode trunk

2.3. VLAN間ルーティング

VLAN間ルーティングは異なるVLAN同士の通信を実現するために使われる。 VLAN間ルーティングの接続手法は2つある。

  • VLANの数だけ複数のポートで接続 … VLAN非対応ルータでこちらを使用
  • トランクポートを使用して1つのポートで接続 … 上記以外はコチラ

2.3.1. トランクポートを使用したVLAN間ルーティングの設定

ルータ側への設定

ルータ側はVLANの数だけインターフェイスをサブインターフェイスに分割して設定する必要がある。 トランキングプロトコルは通常はIEEE802.1Qであるdot1qを指定するが、Cisco独自のISLはislで指定可能。

(config)#interface fastEthernet <ポート番号>.<サブインターフェイス番号> (config-if)#encapsulation <dot1q | isl> <VLAN番号> (config-if)#ip address <IPアドレス> <サブネットマスク> (config-if)#no shutdown

スイッチ側への設定

基本的にトランクモードにポートをすると良い。

(config)#interface fastEthernet <ポート番号> (config-if)#switchport mode trunk

クライアントのDGWの設定

上記設定後はクライアント端末にルータのサブインターフェイスに設定したIPをDGWとして設定する。

2.3. VTPの設定

VTPはVLANの設定を自動化しスイッチ間で同期を行う仕組みであり、これによりVLAN設定作業の大幅削減が可能。

2.3.1. VTPの設定と確認

VTPの設定で主に必要な項目は以下の2つとなる。

  1. VTPドメイン名の設定
  2. VTPモードの設定

これらの項目設定をそれぞれのスイッチで行うことになる。

VTPドメイン名の設定

以下コマンドでVTPドメイン名の設定は行える。 なおVTPドメイン名は大文字小文字を区別する。

(config)#vtp domain <VTPドメイン名>

VTPモードの設定

VTPモードの設定は以下コマンドで行える。

(config)#vtp mode <server | client | transparent>

VTP情報の確認

VTPの設定や状態の確認は以下コマンドで行える。

show vtp status

2.3.2. VTPプルーニングの設定

VTPプルーニングはVTPで発生した不要トラフィックを排除する仕組み。

VTPプルーニングの設定。

基本的には以下コマンドを実行するのみとなる。

(config)#vtp pruning

VTPプルーニングの設定確認

show vtp statusコマンドでVTPプルーニングの有効化/無効化は確認可能。

(config)#show vtp status

2.4. スイッチのエラーカウンタ

スイッチのエラーカウンタはshow interface <インターフェイス>で表示される各パラメータの何が増加しているかによって不具合の原因などが分かる。

カウンタ説明カウンタ増加原因例
no buffer受信したがバッファ足りずに廃棄したフレーム数・ブロードキャストストーム
runtsIEEE802.3フレームの最小フレームより小さいフレームを受信した数・物理的(ケーブル故障、NIC不良など) ・duplexの不一致
giantsIEEE802.3フレームの最大サイズを超えるフレームを受信した数・NICの不良
input errorsrunts, giants, no buffer, CRC, frame, overrun, ignoredの総数・各種カウンタの増加
CRCFCSに格納されたCRC値と受信データから再計算したCRCが一致しなかったフレーム数・コリジョン ・NIC不良 ・duplex不一致
ignoredバッファが足りず受信せず無視したフレーム数・ブロードキャストストーム
collisionsコリジョン数・半二重の通信 ・duplex不一致
late collitions通常よりも遅れて検出したコリジョン数・規定値を超える長さのケーブルの使用 ・duplex不一致

2.4.1. 各種エラーの詳細

no buffer

no bufferはブロードキャストストームが発生したときに増加するカウンタ

runts

runtsは物理的(ケーブル故障、NIC不良など) やduplexの不一致で増加するカウンタ

giants

giantsはNIC不良等が原因で増加するカウンタ

input errors

各種カウンタの増加があるとそれに伴って増加するカウンタ。

CRC

CRCはコリジョンの発生やNIC不良/duplex不一致に伴って増加するカウンタ

ignored

ignoredはブロードキャストストームが発生したときに増加するカウンタ

collisions

collitionsはduplexの不一致/半二重通信等が原因で増加するカウンタ

late collitions

late collitionsはduplexの不一致等が原因で増加するカウンタ

2.4.2. 各種エラーのケース

発生内容増加パラメータ
ブロードキャストストームno buffer, ignored
duplexの不一致runts, CRC, collitions, late collitions
NICの不良runts, giants, CRC
ケーブル故障runts

3 - 3.STPとEthernetChannelの設定

スパニングツリーやLAGの設定方法に関して

3.1. STPの設定

3.1.1. STPの設定と確認

STPの概要確認

スイッチはアドレス学習機能/フィルタリング機能などたくさんの機能やポートがあることから、演算を行うためのハードウェア要素が複雑であるため壊れやすい。実際に耐久年数は1年程度と言われている。 そのためスイッチは基本的には冗長化される。その手法の1つがSTPとなる。

STP(スパニングツリープロトコル)はIEEE802.1Dとして規定されたL2スイッチで冗長化構成を組んだ際のブロードキャストストーム(L2通信のループ)を防ぐためのプロトコル。 具体的にはネットワークの耐障害性向上のために冗長化を行った際にブロードキャスト通信がループしてネットワークリソースを圧迫するのを防ぐのに使用される。ARP要求などがそのブロードキャストにあたる。

STPの設定と確認

スパニングツリーはCisco製品の場合デフォルトでは有効になっているため設定は不要となっている。 なお確認はshow spannig-treeで可能。

show spanning-tree vlan <VLAN番号> show spanning-tree interface fastEthernet <ポート番号>

STPの動作確認

STPに限らずルータの動作確認にはdebugコマンドを使用するがCPUに負荷がかかるため必要なときのみ行うようにする。 STPの動作確認の開始/停止は以下コマンドで行える。

debug spanning-tree events no debug spanning-tree events

3.1.2. トポロジ変更に関するオプション

STPはデフォルトではどのスイッチがルートブリッジになるかわからない。 場合によっては特定のスイッチをルートブリッジにしたいケースなどもある。 そうしたケースの場合はSTP関連設定を変更しSTPトポロジを変化させて、ネットワーク管理者が意図する構成にする。 そのためのコマンドはいくつかある。

ブリッジプライオリティの変更

ルートブリッジにしたいスイッチではプライオリティをデフォルトより小さい値にしておくのが一般的。 プライオリティを変更するには以下コマンドを実行する。

(config)#spanning-tree vlan <VLAN番号> priority <プライオリティ>

PVST+の場合はVLAN毎にプライオリティを指定可能なためVLAN番号に対象VLANを指定する。 またPVST+ではブリッジプライオリティの一部をVLANとして試用している関係上、プライオリティは4096の倍数を指定する必要がある。

また他の手法としてはダイナミックに直接ルートブリッジを指定する方法があり以下コマンドで実行できる。

(config)#spanning-tree vlan <VLAN番号> root priority

上記コマンドの実行により指定したVLAN上でルートブリッジに選出されているスイッチのプライオリティを自動チェックし、スイッチのブリッジプライオリティより小さい値が自動設定され、自身がルートブリッジに選出される。

バスコストの変更

ポートの役割はバスコストを変更することで変えることができる。 ポートのバスコストは以下コマンドで変更可能

(config-if)#spanning-tree vlan <VLAN番号> cost <バスコスト値>

バスコストのデフォルト値の変更

バスコスト値のデフォルト値はショート法かロング法の2種類のいずれかで決定される。 デフォルトではショート法になっているが切り替えることも可能で、以下コマンドで変更できる。

(config)#spanning-tree pathcost method <short | long>

ポートプライオリティの変更

ポートプライオリティは以下コマンドで変更できる。

(config-if)#spanning-tree vlan <VLAN番号> porrt-priority <プライオリティ>

3.1.3. PortFastの設定と確認

PortFastはコンバージェンスを早くする機能の1つで、この設定でポートを即座にフォワーディングに遷移させられる。 なおループの危険性があるためハブやスイッチ間リンクでは設定してはならない

PorrtFastの設定

PortFastは以下コマンドで実行でき、基本的にはアクセスポートに設定する。 つまりPortFastの設定ポートはPC、サーバなどを接続することを前提としている。

(config-if)#spanning-tree portfast

PorrtFastの確認

以下コマンドで表示されるtype項目がPsp Edgeとなれば、そのポートはPortFastとなる。

show spanning-tree vlan <VLAN番号>

3.1.4. BPDUガードの設定と確認

BPDUガードは、PortFastが設定されているスイッチポートでBPDUを受信した時、そのポートをerror-disabledにする機能。 この機能によりスイッチがPortFastが設定されたポートに接続した場合でも、ポートを error-disabled にして不正接続を防止でき、さらに想定しないスイッチ機器の接続を防止することから、Layer2ループの発生を防ぐことができる。

BPDUガードの有効化

BPDUガードを有効化/無効化するには2種類のコマンドがある。

以下コマンドではPortFastの設定が行われるすべてのポートでBPDUガードを有効化/無効化できる。

(config)#spanning-tree portfast bpdguard default (config)#no spanning-tree portfast bpdguard default

また以下コマンドではPortFastの設定の否かに関係なくそのインターフェイスのみで有効/無効にできる。

(config-if)#spanning-tree bpdguard <enable | disable>

BPDUガードの設定と確認

BPDUガードでBPDUを受信してerror-diabledになったポートを手動で復旧させる場合はポートを再起動させる必要がある。

(config-if)#shutdown (config-if)#no shutdown

3.1.5. ルートガードの設定と確認

ルートガードの設定を行うと既存のルートブリッジより小さなブリッジIDのスイッチが接続されても、STPトポロジの変更を防げる。

ルートガードの有効化

(config-if)#spanning-tree guard root (config-if)#no spanning-tree guard root

ルートガードの設定と確認

ルートガードの設定後に既存のルートブリッジより小さなブリッジIDを持つスイッチを追加した場合、show spanning-tree vlan <VLAN番号>実行後のSts項目にBKN*と表示される。またType項目には*Root_incと表示されルート不整合を意味する。

ルート不整合状態では復旧コマンドは不要で、上位BPDUが送られなければ元に戻る。

3.1.6. RSTPの設定と確認

STPではコンバージェンスに最大約50秒かかる。そのため早期に復旧すべき環境では数秒で切り替わるRSTPを設定する。

RSTPへの設定

RSTPはSTPと互換性があるためネットワーク内で混在環境を設定できるが、RSTPの効能を最大限発揮して動作させるためにはすべてのスイッチの動作モードをRSTPに変更する必要がある。

STPからRSTPへ動作モードを変更するには以下コマンドで行え、RSTPの場合にパラメータはrapid-pvstを指定する。

(config)#spanning-tree mode <pvst | rapid-pvst>

pvstの指定でPVST+でrapid-pvstでRapid-PVST+となる。 デフォルトではpvst(STP)となる。

RSTPの確認

以下コマンドで表示される項目中にSpanning tree enabled protocol rstpとあれば、RSTPに変更されている。

show spanning-tree vlan <VLAN番号>

3.2. EthernetChannelの設定

EthernetChannelはリンクアグリゲーション(LAG)とも呼ばれ、リンク間通信の耐障害性と負荷分散を実現できる。

3.2.1. EthernetChannelの基本コマンド

EthernetChannelの設定はケーブルを外した状態で行う。これは片側スイッチのみでEthernetChannelを形成すると対向スイッチで戻ってきてループが発生する恐れがあるためである。

EthernetChannelの形成

EthernetChannelの形成は以下コマンドで行える。

(config-if)#channel-group <グループ番号> mode < on | auto | desirable | active | passive >

グループ番号はチャンネルグループを指定し、バンドルさせたいポートでは同じ番号にする。 なおグループ番号は対向スイッチと合わせる必要はない

モードはネゴシエーションプロトコルをLACPかPAgPにする、または手動で合わせるかどうかに従って合わせる必要がある。

種類モード動作
手動on強制的に有効化
自動PAgPdesirable自分からPAgPネゴシエーションする(相手から受信して合わせる)
自動PAgPauto自分からPAgPネゴシエーションしない(相手から受信して合わせる)
自動LACPactive自分からLACPネゴシエーションする(自分から送信する)
自動LACPpassive自分からLACPネゴシエーションしない(相手から受信して合わせる)

対応表

ネゴシエーションプロトコルの指定

ネゴシエーションプロトコルを指定する場合には以下コマンドで実行できる。 ただEthernetChannelを形成した際に自動でネゴシエーションプロトコルは決まるため必ず設定をする必要はない。

(config-if)#channel-protocol < lacp | pagp >

ただしEthernetChannel形成前に実行すると、形成する際に間違ったモードを選択した際にメッセージを出してくれるメリットがある。

負荷分散方法の指定

EthernetChannelの負荷分散させる方法の変更には以下コマンドを使用する。

(config)#port-channel load-balance <負荷分散手法>

負荷分散手法のオプションは以下より

オプション負荷分散動作
src-mac送信元MACアドレスを基に負荷分散
dst-mac宛先MACアドレスを基に負荷分散
src-dst-mac送信元MACアドレス/宛先MACアドレスを基に負荷分散
src-ip送信元IPアドレスを基に負荷分散
dst-jp宛先IPアドレスを基に負荷分散
src-dst-ip送信元IPアドレス/宛先IPアドレスを基に負荷分散
src-port送信元ポート番号を基に負荷分散
dst-port宛先ポート番号を基に負荷分散
src-dst-port送信元ポート番号/宛先ポート番号を基に負荷分散

rangeコマンドを使ったインターフェイスの指定

ポートそれぞれで設定をするとコマンドの打ち間違いなどでポート設定がずれる場合がある。 そこで複数のポートをまとめて設定する方法がある。

(config)#interface range <インターフェイス>

インターフェイスの区切り方はFa0/1,Fa0/3のように区切る、もしくはFa0/1 -12のように範囲指定することができる。

3.3.3. L2-EthernetChannelの設定

EthernetChannelの設定例

(config)#interface range Fa0/1,Fa0/4 (config-if)#switchport mode trunk (config-if)#channel-group 1 mode on

EthernetChannelの確認

show etherchannel <summary | detail>

detailを指定すると設定されたモードまで閲覧可能となる。

STPの確認

show spanning-treeを実行するとEthernetChannelでバンドルしたインターフェイスはPo1などと表示される。

running-configの確認

show running-configで確認すると一覧にPort-channelN(Nは数字)でPort-channelインターフェイスが記載されることになる。

負荷分散方法の確認

EthernetChannelでどの負荷分散方法が設定されているかは以下コマンドで確認できる。

show etherchannel load-balance

PAgP、LACP設定時の隣接ポートの確認

隣接するスイッチのポートの各情報を確認するには以下コマンドでできる。

show <pagp | lacp> neigbor

3.3.4. L3-EthernetChannelの設定

L3スイッチではポートをルーテッドポートに設定することでL3-EthernetChannelを形成できる。 L2-EthernetChannelとの違いはIPアドレスの設定をPortChannelインターフェイスで行う必要がある点である。

L3-EthernetChannelの設定例

L3-EthernetChannelの設定ではバンドルする物流インターフェイスをあらかじめno switchportでルーテッドポートに変更を行う。 なおバンドルされている個々の物理ポートではIPアドレスの設定の必要はない

(config)#interface range fastEthernet 0/1 - 3 (config-if-range)#no switchport (config-if-range)#channel-group 1 mode active Creating a port-channel interface Port-channel 1 (config-if-range)#exit (config)#interfase Port-channel 1 (config-if)#ip address 192.168.1.1 255.255.255.0 (config-if)#exit

L3-EthernetChannelの確認

方法はL2-EthernetChannelと同じ。

show etherchannel <summary | detail>

detailを指定すると設定されたモードまで閲覧可能となる。 なおPort-channel項目に(Ru)と表示されていればL3でEthernetChannelが形成されていることが確認できる。

3.3.5. EthernetChannelのトラブルシューティング

EthernetChannelでトラブルが発生した際の確認事項をそれぞれ記載する。

EthernetChannelの不形成

show etherchannel <summary | detail>実行時にPort-channel項目に(SD)と表示されている場合はdownしており、EthernetChannelは形成されていない。その場合はプロトコルの不一致やモードの組み合わせに問題があることが疑われる。

一部のポートがバンドルされていない

show etherchannel <summary | detail>実行時にPorts項目にFa0/1(s)などと表示されている場合はポートが使用できない。 この場合suspendedを意味し、他ポートと設定がずれている可能性がある。

アクセスポートの場合はVLANの一致。

トランクポートの場合はカプセル化、通過許可VLAN、IEEE802.1Qの場合はネイティブVLANの一致、通信モード(半二重/全二重)/速度が一致している必要があるため、show running-configなども組み合わせて適宜調査する必要がある。

4 - 4.ルーティングの設定とOSPF

ルーティング/IGPのOSPFに関して

4.1. ネットワークの設定

4.1.1. IPアドレスの設定と確認

IPアドレスをインターフェイスに設定するにはinterface fastEthernet <インターフェイス番号>を入力する。なおint f/g<インターフェイス番号>で省略可能である。

(config)#interface fastEthernet <インターフェイス番号> (config-if)#ip address <ipアドレス> <サブネットマスク> (config-if)#end

またインターフェイスの状態確認はshow interface fastEthernet <インターフェイス番号>で行う。 使用例は以下の通り。

show interfaces show int f0

一応show protocolsも使用可能。

4.1.2. インターフェイスの有効化

インターフェイスは設定後に有効化する必要がある。

(config-if)#no shutdown

4.2. ルーティングの設定

4.2.1. スタティックルーティングの設定

それぞれのルータのインターフェイスに対してIPアドレスを設定した後、ip routeコマンドでそれぞれの方向のルートを登録する。

(config)#ip route <対象IP> <対象サブネットマスク> <データが来る方向IP>

4.2.2. ダイナミックルーティングの設定

OSPFを使用したダイナミックルーティング

それぞれのルータのインターフェイスに対してIPアドレスを設定した後、それぞれのルータに OSPFの有効化とネットワークへの登録の設定を行う。

(config)#router ospf <プロセスID> (config-router)#network <ネットワーク範囲> <ワイルドカードマスク> area <エリアID>

エリアIDはルータ全体で統一する必要がある。 また確認はshow ip route ospfで可能

設定例は以下の通り。

(config)#router ospf 1 (config-router)#network 192.168.0.0 0.0.0.255 area 0 (config-router)#network 10.0.0.252 0.0.0.3 area 0

RIPv1を使用したダイナミックルーティング

それぞれのルータのインターフェイスに対してIPアドレスを設定した後、それぞれのルータに RIPv1の有効化とネットワークへの登録の設定を行う。

(config)#router rip (config-router)#network <ネットワーク範囲>

注意点としてRIPはクラスフルルーティングをするが特徴ある。 つまりOSPFと異なり、サブネットマスクを意識しない。 そのためnetworkコマンドで設定するネットワークは必ずクラスフルで記述する。

例えばネットワークが172.16.1.0の場合、クラスBアドレスなので172.16.0.0と設定する必要がある。

RIPv2を使用したダイナミックルーティング

それぞれのルータのインターフェイスに対してIPアドレスを設定した後、それぞれのルータに RIPv2の有効化とネットワークへの登録の設定を行う。

(config)#router rip (config-router)#version 2 (config-router)#network <ネットワーク範囲>

変更後にshow ip protocolsコマンドでルータ上で動作しているルーティングプロトコルを確認すると良い。

4.2.3. デフォルトルーティングの設定

デフォルトゲートウェイは宛先のないパケットを送る先であり、デフォルトゲートウェイに送る設定をすることはデフォルトルーティングと呼ばれる。

デフォルトルートの追加は以下コマンドで行える。

(config)#inteface <インターフェイス> (config-if)#ip route 0.0.0.0 0.0.0.0 <インターフェイスのIPアドレス>

また確認はshow ip routeで可能。

デフォルトルーティングを行うにはクラスレスルータとしてルータを動作する必要があり、これはクラスの概念をルータに追加するものとなる。なお現行のルータはデフォルトではクラスレスルータとして動作するため、もしルータをクラスフルルータの場合はクラスレスルータにする必要がある。コマンドはip classlessで行える。

4.3. OSPFの設定と確認

4.3.1. OSPFの有効化

OSPFの有効化は以下のコマンドで行える。

(config)#router ospf <プロセスID>

プロセスIDは複数のプロセスを識別するためのIDで1~65535まで指定可能となっている。 これはプロセスを識別するためのIDであるだけなのでルータごとに異なっていても良い。

4.3.2. インターフェイスの指定

OSPFをインターフェイスで有効化するとhelloパケットを送信し始める。 またインターフェイスに関するLSAも通知する。

(config)#network <ネットワーク範囲> <ワイルドカードマスク> area <エリアID>

エリアIDはインターフェイスが所属するエリア番号を指定する。 またIOSバージョンによっては以下コマンドでインターフェイスごとにOSPFを設定可能。

(config)#inteface <インターフェイス> (config-if)#ip ospf <プロセスID> area <エリアID>

4.3.3. パッシブインターフェイスの設定

パッシブインターフェイスを指定するとOSPF動作するものでHelloパケットを送信を停止できる。そのためこの設定を行とネイバー関係が構築できなくなる。

(config)#router ospf <プロセスID> (config-router)#passive-interface <インターフェイス>

4.3.4. ルータIDの設定

OSPFではルータを識別するためのルータIDが必要となる。 ルータIDはIPアドレスが設定してあれば自動で決定するが、以下コマンドにより手動でも設定可能。

(config)#router ospf <プロセスID> (config-router)#router-id <ルータID>

ルータIDは32bitのアドレスと同じ形で指定し他ルータと重複しない値を設定する必要がある。 またループバックインターフェイスは以下コマンドで設定できる。

(config)#interface Loopback <番号>

番号は0~2147483647の範囲から設定可能で作成したインターフェイスにはIPアドレスを設定する。

4.3.5. OSPFの設定確認

OSPFが問題なく動作しているか確認するには以下フローで確認できる。

  1. ネイバー情報の確認
  2. LSDBの要約情報確認
  3. ルーティングテーブルの確認
  4. インターフェイスの確認

ネイバー情報の確認

ネイバーテーブルを確認することでネイバーが登録されている確認できる。 表示される情報は隣接ルータの情報である。

show ip ospf neighbor

なおOSPFネイバー関係を確立するために一致させる必要があるのは以下の情報となる。

  • Hello/Deadの間隔
  • エリアID
  • 認証パスワード
  • サブネットマスク
  • スタブエリアフラグ
  • MTUサイズ

LSDBの要約情報確認

LSDBの要約情報であるLSAリストのトポロジテーブルを確認する。 表示される情報は各ルータで同じとなる。

show ip ospf database

ルーティングテーブルの確認

ルーティングテーブルを確認してダイナミックルーティングが適用されているか確認を行う。 また念のためospfが動作しているかshow ip protocolで確認する。

show ip route show ip protocol

インターフェイスの確認

OSPFが動作しているインターフェイス情報を以下コマンドで確認する。

show ip ospf interface <インターフェイス>

確認できる情報は以下の通り。

  • IPアドレスと所属エリア
  • プロセスIDとルータID、ネットワークタイプ、コスト
  • リンク状態とプライオリティ
  • DRとBDRのルータIDとIPアドレス
  • HelloインターバルとDeadインターバル

4.4. マルチエリアOSPFの設定と確認

4.4.1. マルチエリアOSPFの設定

マルチエリアOSPFを作成する場合4.3.2項のエリアIDを分けるエリアで別々にする。 ただ注意点として向かい合うルータが同じエリアにならないようにする。

4.4.2. マルチエリアOSPFの確認

確認は4.3.5. OSPFの設定確認の通りで可能。 具体的には以下の点を確認する。

  • LSDB要約情報で異なるエリアが作成されている
  • ルーティングテーブルでコード部分がO IAになっている

O IAは異なるエリアからルートを伝えられていることを示す。

4.5. OPSFの関連パラメータの調整設定

4.5.1. ルータプライオリティ

マルチアクセスのOSPF環境ではDRとBDRを選出するが、DRになるルータ位置の調整が必要な場合ルータプライオリティの変更で実現できる。 ルータプライオリティの変更は以下コマンドで実現できる。

(config)#inteface <インターフェイス> (config-if)#ip ospf priority <ルータプライオリティ値>

以上のコマンドを使いこなすことで意図するルータにDR(代表ルータ)の役割を持たせることができる。

4.5.2. OSPFのコスト

OSPFのメトリックは帯域幅から計算するコスト値となる。 コスト値を変更するとルートの変更が可能になる。

(config)#ip pspf cost <コスト値>

4.5.3. 帯域幅

コストの計算に使用する帯域幅は以下コマンドで変更できる。

(config)#bandwidth <帯域幅>

インターフェースの帯域幅の設定は以下の通り。

(config)#inteface <インターフェイス> (config-if)#bandwidth <帯域幅>

4.5.4. 基準帯域幅

OSPFのコストは基準帯域幅(Default値は100Mbps)/インターフェイスの帯域幅で算出される。 基準帯域幅は以下コマンドで変更できる。

(config)#inteface <インターフェイス> (config-if)#auto-cost reference-bandwidth <帯域幅>

4.5.5. Hello/Deadインターバルの変更

ネイバー認識に使用されるHelloインターバルとDeadインターバルはインターフェイスごとに設定できる。

(config)#ip ospf hello-interval <秒数>
(config)#ip ospf dead-interval <秒数>

注意点として隣接ルータでHello/Deadインターバルが一致しないとネイバーとして認識されないので気にしながら設定する必要がある。

4.5.6. MTUのミスマッチ検出機能の無効化

ネイバーとなるルータのインターフェイスのMTUが自身のインターフェイスと一致しない場合、完全隣接関係にならない。 そのためMTUを合わせるかMTUの不一致の検出する機能を無効化する必要がある。

MTUの不一致検出の無効化は以下コマンドで行える。

(config)#inteface <インターフェイス> (config-if)#ip ospf mtu-ignore

4.5.7. デフォルトルートの配布

インターネットへの接続にはデフォルトゲートウェイへのルート(デフォルトルート)の設定を行う。 すべてのルータにいちいち設定すると手間になる場合がある。 そのため1台のルータに設定後にOSPFで他ルータで配布する機能がある。

デフォルトルートをOSPFを通じて他のルータに配布するには以下コマンドで行える。

(config)#router ospf <プロセスID> (config-router)#default-information originate [always]

確認はshow ip routeで行える。

alwaysをつけるとルーティングテーブルにデフォルトルートが存在しなくてもデフォルトルートを広告する。

4.5.8. 等コストロードバランシングの最大数の設定

等コストロードバランシングで使用する経路の数(デフォルトでは4)を変更するには以下のコマンドを使用する。

(config)#router ospf <プロセスID> (config-router)#maximum-paths <最大数>

4.6. OSPFのトラブルシューティング

OSPFの設定をしたにもかかわらず宛先まで通信できない場合、基本的には以下のことを確認する必要がある。

  • ルータ間の接続
  • ルーティングテーブルの確認
  • ACLが設定してあればACLの設定確認
  • ネイバーテーブルの確認

4.7. IPv6のネットワーク設定

4.7.1. IPv6ルーティングの有効化

IPv6ルーティングを有効化するには以下コマンドで行う。

ipv6 unicast-routing ipv6

4.7.2. インターフェイスにIPv6を設定する

IPv6インターフェイスには2つIPv6アドレスを設定する必要がある。 確かにリンクローカルアドレスは必ず設定する必要がある。

(config)#inteface <インターフェイス> (config-if)#ipv6 address <リンクローカルアドレス> link-local (config-if)#ipv6 address <ユニークローカルアドレス | グローバルアドレス>

4.7.3. IPv6のルーティングテーブルを確認する

show ipv6 route

5 - 5.ACLの設定

アクセスコントロールに関する設定

5.1. ACLの用途と種類

ACL(アクセスリスト)は特定のトラフィックを抽出する条件リストでルータのインターフェイスに割り当てて使用する。

ACLはパケットフィルタリングのほかに以下機能と組み合わせ利用される。

  • NAT
  • VPN
  • QoS
  • ダイナミックルーティング

5.1.1. ACLの種類

アクセスリストは以下表のように規定されている。

種類番号範囲
標準IP1~99
拡張IP100~199
AppleTalk600~699
標準IPX800~899
拡張機能IPX900~999
IPX-SAP1000~1099
名前付きIP名前で定義

標準アクセスリスト

標準ACLではパケットの送信元IPアドレスをチェックする。 また標準ACLの種類には番号付き標準ACLと名前付き標準ACLがあり、それぞれ1~99の値を設定、名前を表す文字列を指定する。

拡張アクセスリスト

拡張ACLでは送信元IPアドレス、宛先IPアドレス、プロトコル番号、送信元ポート番号,宛先ポート番号をチェックする。 また拡張ACLの種類には番号付き拡張ACLと名前付き拡張ACLがあり、それぞれ100~199の値を設定、名前を表す文字列を指定する。

5.2. ワイルドカードマスクの補足

ワイルドカードマスクは2進数表記にした場合、0の部分のチェックを行い、1の部分は無視する。

ワイルドカードマスクが000.000.000.255の場合は第1から第3オクテットまでは固定、第4オクテットは条件に含まない。

例えばIPアドレスが192.168.10.0でワイルドカードマスクが000.000.000.255の場合、ネットワーク範囲は192.168.10.0~192.168.10.255までとなる。

なおワイルドカードマスクの省略形にanyやhostがあり意味は以下の通りである。

  • any … すべてのアドレスビットを無視する
  • host … すべてのアドレスビットをチェックする(特定のホストアドレス)

つまり0.0.0.0 255.255.255.255 → anyIPアドレス 0.0.0.0 → host IPアドレスとなる。

5.2. 標準アクセスリスト/拡張アクセスリストの作成

5.2.1. アクセスリストの設定と確認

標準アクセスリストの作成

標準アクセスリストは送信元IPアドレスで判断し、以下コマンドで実行可能。

注意点としてはACLではリストの上から検索を行い該当行があった場合それ以降の行を検索しない。 そのため記述する順番を意識する必要がある。

なお、どのリストにも該当しない場合はそのトラフィックは拒否される(暗黙の拒否)。

(config)#access-list <ACL番号:1~99, 1300~1999> <permit | deny> <送信元IPアドレス> <ワイルドカードマスク | any>

denyの場合は条件に合致した場合はトラフィックを拒否。 permitの場合は条件に合致した場合はトラフィックを許可。

標準アクセスリストには送信元アドレスしか指定できなお。 そのため、送信元の近くに配置すると宛先に関係なくフィルタリングが早めにかかってしまい、意図しないトラフィックが拒否されてしまう。 そのため拒否するトラフィックの宛先近くに配置する必要がある。

拡張アクセスリストの作成

拡張アクセスリストではトランスポート層の情報であるTCP/UDP、ポート番号まで指定できる。 そのため特定のアプリケーションに対する動作を設定可能

(config)#access-list <ACL番号:100~199, 2000~2699> <permit | deny> <L4プロトコル> <送信元IPアドレス> <ワイルドカードマスク> [送信元ポート番号] <宛先IPアドレス> <ワイルドカードマスク> [オプション]

以下に例をいくつか示す。

(config)#//端末192.168.1.11からネットワーク172.16.1.0/24へのIP通信を拒否 (config)#access-list 100 deny ip host 192.168.1.11 172.16.1.0 0.0.0.255 (config)#//すべての送信元から172.16.0.11へのHTTPアクセスのみ許可する例 (config)#access-list 100 permit tcp any host 172.16.0.11 eq www (config)#//端末192.168.1.11からネットワーク172.16.1.0/24へのエコー要求を拒否 (config)#access-list 100 deny icmp host 192.168.1.11 172.16.1.0 0.0.255 echo

プロトコルごとのオプションは以下の通り。

プロトコルオプション
ipdhcpなど
tcpeq www, eq 80など
udpeq snmp, eq 161
icmpecho, echo-replyなど

なおポート番号は以下表よりキーワードでも指定可能。

ポート番号キーワード
20ftp-data
21ftp
23telnet
25smtp
53domain
67bootps
68bootpc
69tftp
80www
110pop3

またプロトコルはチェックの対象となるプロトコルを指定する箇所へ「tcp」、「icmp」、「ospf」といったプロトコル名の代わりにプロトコルナンバーを使用できる。

プロトコル名プロトコル番号
ICMP1
TCP6
UDP17
EIGRP88
OSPF89

拡張アクセスリストには送信元と宛先アドレスの両方を指定できる。適切な条件であればネットワーク上のどこに配置しても問題ない。 ただし拡張アクセスリストを不要なトラフィックを拒否する目的で使用する場合は送信元の近くに配置し、できるだけ早めにフィルタリングを行ってネットワーク全体に不要なトラフィックを流さないようにすることが推奨される。

アクセスリストの適用

ACLはインターフェイスのインバウンドかアウトバウンドどちらかに適用する。 両者でACLの認可を決めるタイミングが異なり、1つのインターフェイスにはL3プロトコルごとにインバウンド/アウトバンドどちらか片方しか設定できない。

  • インバウンド … ルータがパケット受信するタイミング
  • アウトバウンド … ルータがパケットを送信するタイミング

なおインターフェイスへのACL適用は以下コマンドで行える。

(config)#interface fastEthernet <ポート番号> (config-if)#ip access-group <ACL番号> <in | out>

アクセスリストの確認

ルータに作成されているACLは以下コマンドで確認を行える。

show ip access-lists

5.3. 名前付きアクセスリストの作成

名前付きアクセスリストは名前でアクセスリストを識別できる他に、アクセスリスト中の特定のステートメントを削除やシーケンス番号を振りなおせる特徴がある。

5.3.1. 名前付き標準アクセスリスト

設定はip access-list standard <名称>で可能。 方法は以下コマンドより。

(config)#ip access-list standard <名称> (config-std-nacl)#<permit | deny> <IPアドレス> <ワイルドカードマスク> (config-std-nacl)#exit (config)#interface fastEthernet <ポート番号> (config-if)#ip access-group <名称> <in | out>

なおACLのシーケンス番号を指定する際は上記コード2行目の<permit | deny>の前に指定する。

5.3.2. 名前付き拡張アクセスリスト

設定方法は以下コマンドより。

(config)#ip access-list extended <名称> (config-std-nacl)#<permit | deny> <L4プロトコル> <送信元ポート番号> <送信元IPアドレス> <宛先IPアドレス> <宛先ポート番号> (config-std-nacl)#exit (config)#interface fastEthernet <ポート番号> (config-if)#ip access-group <名称> <in | out>

5.4. ACLによるVTYアクセス制御

ACLはVTY接続(SSH, TELNETによる接続)にも設定が可能。 設定にはaccess-class <ACL番号 | 名称> <in | out>で行う。

(config)#line vty <開始番号> <終了番号> (config-line)#access-class <ACL番号 | 名称> <in | out>

5.5. ACLのトラブルシューティング

ACLの適用により通信が不能になる、ブロックされるはずの通信が届くなど予期せぬ動作が起きた場合、以下可能性を基に調査すると良い。

  • ACLの作成順序の間違い
  • ACLの内容(送信元/宛先IP、ワイルドカードマスク)の間違い
  • ACL適用インターフェイスの間違い
  • ACL適用方向(in/out)の間違い
  • 暗黙のdenyを忘れたACL設計

6 - 6.NAT・DHCPの設定とDNSの確認

NAT・DHCPの設定とDNSの確認

6.1. NATの設定

NATはプライベートIPアドレスをグローバルIPアドレスに変換する仕組み。

6.1.1. NATの確認

NATの確認はshow ip nat statisticsshow access-listsshow runnning-configで確認可能。

NATテーブルの確認

show ip nat translations

NATテーブルにNAT変換情報が登録されるタイミングはNAT方式によって異なる。 Static NATの場合は設定を行った時点でNATテーブルへNAT変換情報が登録される。 一方、Dynamic NAT/NAPTの場合はNAT変換を行う通信が発生した時点で、NATテーブルへNAT変換情報が登録される。

NATのアドレス変換の統計情報確認

show ip nat statistics

NATの変換情報のリアルタイムでの確認

debug ip nat

NATテーブルの削除

# 下記例ではすべてのNATテーブルを消す clear ip nat translations *

6.1.2. Static NATの設定

Static NATを設定する場合以下のことを行う必要がある。

  • ルータのインターフェイスにinside/outsideの設定
  • 内部ローカルアドレスと内部グローバルアドレスの組み合わせをNATテーブルに登録

以下に設定例のコマンド手順を記載する。

(config)#interface <ポートの規格: fastEthernetなど> <ポート番号> (config-if)#ip nat inside (config-if)#exit (config)#interface <ポートの規格: fastEthernetなど> <ポート番号> (config-if)#ip nat outside (config-if)#exit # NATテーブルに内部ローカルアドレスと内部グローバルアドレスの組み合わせを登録 (config)# ip nat inside source static <内部ローカルアドレス> <内部グローバルアドレス>

6.1.3. Dynamic NATの設定

Dynamic NATを設定する場合以下のことを行う必要がある。

  • ルータのインターフェイスにinside/outsideの設定
  • 変換対象の内部ローカルアドレスのリストの作成
  • アドレスプールの作成
  • 内部ローカルアドレスリストとアドレスプールの紐づけ

変換対象の内部ローカルアドレスのリストの作成はACLを使用する。 ACLのpermitとなっているアドレスはNAT変換される。 一方でdenyとなっているアドレスはNAT変換が行われない。

以下に設定例の手順を記載する。

(config)#interface <ポートの規格: fastEthernetなど> <ポート番号> (config-if)#ip nat inside (config-if)#exit (config)#interface <ポートの規格: fastEthernetなど> <ポート番号> (config-if)#ip nat outside (config-if)#exit # 変換対象の内部ローカルアドレスのリストをACLで作成 (config)# access-list <ACL番号> permit <送信元IPアドレス> <ワイルドカードマスク: 0.0.0.255など> # アドレスプールの作成 (config)#ip nat pool <プール名> <開始アドレス> <終了アドレス> netmask <サブネットマスク> # NATテーブルに内部ローカルアドレスリストとアドレスプールの紐づけ (config)#ip nat inside source list <ACL番号> pool <プール名>

6.1.4. NAPT(PAT, IPマスカレード)の設定

NAPTをを設定する場合以下のことを行う必要がある。

  • ルータのインターフェイスにinside/outsideの設定
  • 変換対象の内部ローカルアドレスのリストの作成
  • アドレスプールを利用する場合は作成(任意)
  • 内部ローカルアドレスリストとアドレスプールまたは外部インターフェイスの紐づけ

NAPTはアドレスプールの設定は必須ではなく任意。 また外部インターフェイスに設定されたIPアドレスを変換するための内部グローバルアドレスとして使える

以下に設定例(アドレスプールを使用しない場合)の手順を記載する。

(config)#interface <ポートの規格: fastEthernetなど> <ポート番号> (config-if)#ip nat inside (config-if)#exit (config)# interface <ポートの規格: fastEthernetなど> <ポート番号> (config-if)#ip nat outside (config-if)#exit # 変換対象の内部ローカルアドレスのリストをACLで作成 (config)#access-list <ACL番号> permit <送信元IPアドレス> <ワイルドカードマスク: 0.0.0.255など> # 外部インターフェイスとアクセスリストの紐づ(overloadでNAPTとなる) (config)#ip nat inside source list <ACL番号> interface <ポートの規格: fastEthernetなど> <ポート番号> overload

6.1.5. NAT変換がうまくいかない場合の確認事項

  • 内部インターフェイス/外部インターフェイスの指定ミスがないか
  • 変換対象の内部ローカルアドレスを指定するACLの間違えていないか
  • 内部ローカルアドレス/内部グローバルアドレスの紐づけ間違いがないか
  • NATのアドレスプールで指定する内部グローバルアドレスの間違いがないか
  • NAPTの場合はoverloadの指定忘れがないか

6.2. DHCPの設定

DHCPはクライアントやネットワーク機器に自動でプライベートIPアドレスを付与する仕組み。

DHCPはDHCPサーバとDHCPクライアントから成り立つ。 ルータはDHCPサーバ、DHCPクライアントどちらにも動作させることができる。

具体的にはDHCPの設定は以下2つのパターンのいずれかで行える。

  • DHCPサーバを用意する
  • ルータ自身にDHCPサーバ機能を持たせる

6.2.1. DHCPの確認

DHCPクライアントか確認する

show ip interface briefshow interfacesshow dhcp lease等で確認が可能。

DHCPのアドレスプールの確認

show ip dhcp pool

IPアドレスの割り当て状況確認

show ip dhcp binding

重複が発生したIPアドレスの確認と削除

show ip dhcp conflict clear ip dhcp conflict *

6.2.2. DHCPサーバとしての設定

ルータをDHCPサーバにするには以下ステップを踏む必要がある。

  • アドレスプールの作成
  • 配布するIPアドレスのネットワーク/サブネットの指定
  • デフォルトゲートウェイの指定
  • IPアドレスのリース期間の指定
  • DNSサーバの指定
  • 除外するアドレスの指定
(config)#ip dhcp pool <プール名> (dhcp-config)#network <ネットワーク> <サブネットマスク または /プレフィックス> (dhcp-config)#default-router <IPアドレス> (dhcp-config)#lease <日数> (dhcp-config)#dns-server <DNSサーバのIPアドレス> (dhcp-config)#exit (config)#ip dhcp excluded-address <開始アドレス> [<終了アドレス>]

6.2.3. DHCPクライアントとしての設定

ルータのインターフェイスのIPアドレスをDHCPサーバに割り当ててもらう場合、そのルータをDHCPクライアントにする必要がある。

なお以下はルータのポートはDHCPサーバのブロードキャストを受け取る側で実行する必要がある。

(config)#interface <ポートの規格: fastEthernetなど> <ポート番号> (config-if)#ip address dhcp (config-if)#no shutdown

6.2.4. DHCPリレーエージェントの設定

DHCPリレーエージェントはブロードキャストされたDHCP要求をユニキャストで転送する機能。 DHCPサーバとクライアント間にルータがある場合、ルータはブロードキャストを行わない。 そのためクライアントにIPアドレスを割り当てることができない。 この問題の解決のためにはルータにDHCPリレーエージェントを設定する必要がある。

なおクライアント側のポートで以下は実行する必要がある。

(config)#interface <ポートの規格: fastEthernetなど> <ポート番号> (config-if)#ip helper-address <DHCPサーバのIPアドレス>

6.3. DNSの確認

6.3.1. DNSサーバとして使用する

CiscoルータはDNSサーバとして動作させることができる。

#DNSサーバ機能を有効化する (config)#ip dns server #DNSサーバが回答する名前とIPアドレスのペアを登録 (config)#ip host {ホスト名} {IPアドレス}

6.3.2. DNSクライアントとして使用する

Ciscoのルータは名前解決を行うDNSクライアントとすることができる。 DNSクライアントとして動作させるには以下のコマンドを使用する。

#DNSによる名前解決を行う (config)#ip domain lookup #DNS参照先のIPアドレスを指定する (config)#ip name-server {IPアドレス} #(任意)自身の所属するドメイン名を登録する。ホスト名のみで問い合わせた場合に自動的に補完される (config)#ip domain name {ドメイン名} #(任意)ホスト名のみでの問い合わせ時に自動的に補完されるドメイン名のリスト。「ip domain name」での設定値よりも優先される。 (config)#ip domain list {ドメイン名}

7 - 7.HSRPによるDGW冗長化とSNMPによる監視の設定

回線冗長化設定とSNMPの設定

7.1. HSRPの設定

HSRPはCisco独自のDGW冗長化プロトコル。 バックアップ用のDGWの追加やDGWの冗長化などを行うことができる。

7.1.1. HSRPの有効化

HSRPの有効化自体は以下コマンドで行うことができる。

(config-if)#standby [<スタンバイグループ番号>] ip [<仮想IPアドレス>]

スタンバイグループ番号はHSRPv1の場合は0~255までの番号を指定。番号を省略した場合は0になる。 仮想IPアドレスには仮想IPアドレスが指定できるが、省略した場合はスタンバイグループの他ルータから送信されたHelloパケットから仮想IPアドレスの学習を行う。 仮想IPアドレスはルータに設定されている値を設定することはできないため注意する必要がある。

7.1.2. HSRPプライオリティ値の設定

HSRPのプライオリティ値の設定は以下コマンドで行える。

(config-if)#standby [<スタンバイグループ番号>] priority <プライオリティ値>

プライオリティ値は0~255の間から指定を行う。 指定しなかった場合はデフォルトの100となる。

7.1.3. プリエンプトの指定

常にプライオリティ値の大きいルータをアクティブルータにする機能はプリエンプトで、 具体的には、アクティブルータが障害後にルータがバックアップルータに切り替わった後にアクティブルータが復旧した後に元のアクティブルータをDGWの使用に戻す際に使用できる設定となる。

設定は以下コマンドで行える。

(config-if)#standby [<スタンバイグループ番号>] preempt

7.1.4. インターフェイストラッキングの設定

アクティブルータのWAN側のインターフェイスに障害が起きて通信ができなくなってもHSRPで直接検知ができない。そのため通信が行えないDGWの方がアクティブルータになったままになる場合がある。 そのためインターフェイスの状態によりHSRPプライオリティ値を減少させる機能がある。

設定を行うには以下コマンドで行う。

(config-if)#standby [<スタンバイグループ番号>] track <インターフェイス> [<減少値>]

インターフェイスには追跡したいインターフェイス(fastEthernet 0/0など)を指定する。 指定したインターフェイスがダウンした場合に設定した減少値だけプライオリティ値が減少し、アップに戻ると元のプライオリティ値に戻る。 減少値は指定しない場合はデフォルトの10が設定値となる。

7.1.5. HSRP設定の確認

HSRPの要約情報を確認するには以下コマンドで行える。

show standby brief

また詳細な情報は以下コマンドで行うことができる。

show standby

上記コマンドでは以下内容が確認できる。

  • 有効になっているインターフェイス/グループ/役割
  • 仮想IPアドレス
  • 仮想MACアドレス
  • プリエンプトが有効になっているかどうか
  • HSRPプライオリティ値

7.2. SNMPの設定

7.2.1. SNMPビューの設定

SNMPビューを設定すると特定のMIB情報のみをSNMPマネージャに取得させる、させないといったことができる。

(config)#snmp-server view <ビュー名> <OID> <include | exclude>

ビュー名には作成した任意のビュー名を指定する。

7.2.2. コミュニティ名の設定

SNMPv1やv2の認証ではコミュニティ名を使用する。 コミュニティ名の指定は以下コマンドで行うことができる。

(config)#snmp-server community <コミュニティ名> [view <ビュー名>] [ro | rw] [<ACL>]

コミュニティ名はSNMPエージェントとマネージャで合わせる必要がある。 view項目はSNMPビューを使用しMIB取得を制限させる場合に使用する。 またroは読み取りを許可、rwは読み書きを許可。 ACLではACLのpermitで許可されているアドレスからのみ要求を受け付ける設定が可能。

7.2.3. 通知機能の設定

SNMPトラップやSNMPインフォームなどのSNMP通知機能を設定するにはエージェント側でマネージャ(NMS)を指定する必要がある。

通知送信先の指定

SNMPマネージャの指定は以下コマンドで行える。

(config)#snmp-server host <IPアドレス> [traps | informs] [ version < 1 | 2c | 3 <auth | noauth priv>>] <コミュニティ名 | ユーザ名>

トラップの有効化

SNMPトラップ/SNMPインフォームといった通知機能を有効化するには以下コマンドを実行する。

(config)#snmp-server enable traps [<トラップ対象>]

トラップ対象を省略するとすべてのトラップが有効となる。

7.2.4. SNMPv1とSNMPv2c

SNMPv1ではコミュニティ名を利用して認証が行われる。なお平文のまま送信されるため盗聴される危険性がある。SNMPトラップしか対応していない。 SNMPv2cではSNMPv1の機能に加え、GetBulkRequestやSNMPインフォームが利用可能という特徴がある。

SNMPv1

SNMPv1では以下のコマンドが定義されている。

  • Get Request・・・指定のオブジェクトIDに対応した情報の要求
  • GetNext Request・・・次のオブジェクトIDに対応した情報の要求
  • Set Request・・・SNMPエージェントの制御
  • Get Response・・・マネージャからの要求に対する応答
  • Trap・・・SNMPエージェントからマネージャへの一方的な状態通知

SNMPv2c

SNMPv2cでは64bitカウンタに対応しさらに以下のコマンドが追加されている。

  • GetBulk Request・・・繰り返しの情報の要求
  • Inform Request・・・SNMPエージェントからマネージャへの状態通知。マネージャから応答がなければ再送

またSNMPv2cでは認証に使うコミュニティストリングの設定が必須となる。 設定内容は以下のコマンドで確認できる。

# コミュニティストリング show snmp community # 設置場所 show snmp location # 管理者情報 show snmp contact # トラップ送信先 show snmp host # シリアルナンバー show snmp chassis

7.2.5. SNMPv3の設定

SNMPv3ではコミュニティ名ではなくユーザ名やパスワードにより認証を行う。 SNMPユーザはSNMPグループに参加しグループ単位でSNMPビュー, セキュリティレベルの設定が行われる。 そのためコミュニティストリングの設定はない。

SNMPグループの作成

SNMPグループは以下コマンドで作成できる。

(config)#snmp-server group <グループ名> v3 <auth | noauth | priv> [read <ビュー名>] [write <ビュー名>] [access <ACL>]

グループ名には作成したいグループを作成。その後ろにセキュリティレベルを指定し、auth(AuthNopriv), noauth(NoAuthNopriv), priv(AuthPriv)の設定が行える。

SNMPユーザの作成

SNMPユーザはSNMPグループと関連付ける必要がある。 SNMPユーザの作成は以下コマンドで行える。

(config)#snmp-server user <ユーザ名> <グループ名> v3 [auth <md5 | sha> <パスワード>] [priv <des | 3des | aes <128 | 192 |256>> <パスワード>]

MD5やSHAによる認証を行う場合はauthのほうでパスワードを指定し、暗号化を行う場合、privで暗号化方式とパスワードを指定する。

エンジンIDの確認

またSNMPv3ではSNMPエージェントやマネージャを識別するためにエンジンIDという一意の値を使用する。エンジンIDは自動的に生成されるが管理者が設定することも可能となっている。

show snmp engineID

このコマンドではengineIDのほかにSNMPマネージャのIPアドレスを確認できる。

7.2.6. SNMPの確認

SNMPビューの確認

show snmp view

SNMPグループの確認

show snmp group

SNMPユーザの確認

show snmp user

確認できる項目は以下の通り。

  • 作成したビュー
  • 作成したグループとセキュリティモデル、可読可能なビュー
  • 作成したユーザ
  • 認証プロトコルの種類
  • 所属グループ

7.3. IP SLA

IP SLA(Service Level Agreement)は、パケットを生成してネットワークのパフォーマンスを監視/測定するCisco IOSの機能。

IP SLAによる監視では、通常のサーバをターゲットにすることも可能であるが、IP SLAレスポンダ(ターゲットもIOSを搭載しIP SLAをサポートしているデバイス)を用意することで、測定精度が向上し、VoIPの遅延やジッタを測定することも可能になる。

8 - 8.ネットワーク機器の管理と運用設定

systemログ管理やNTP/QoSなどに関して

8.1. システムログの設定

8.1.1. システムログの出力先設定

システムログのメッセージは以下のような場所に出力される。

  • コンソールライン
  • 仮想ターミナルライン
  • ルータやスイッチのRAM
  • Syslogサーバ

それぞれの出力先の設定により設定コマンドが異なる。 またシステムのログレベルは以下の通り。

重大度意味説明
0緊急システムが不安定
1警報直ちに処置が必要
2重大クリティカルな状態
3エラーエラー状態
4警告警告状態
5通知正常だが注意を要する状態
6情報単なる情報メッセージ
7デバッグデバッグメッセージ

例えば3まででは1から3までのメッセージしか表示されず、7ではすべてのメッセージが表示されることになる。

コンソールラインへの出力

コンソールにはデフォルトでログが出力される。 なおコンソール上の出力されるシステムログレベルは7となる。 レベル7ではすべてのログが表示される。 ログレベルの変更は以下コマンドで行える。

(config)#logging console <レベル>

仮想ターミナルラインへの出力

仮想ターミナルラインにシステムコンソールを表示するには以下コマンドできる。

terminal monitor

また上記コマンドのみではログインセッションが切れるとコマンドが無効になる。 またログレベルの変更は以下コマンドで行える。

(config)#logging console <レベル>

ルータやスイッチのRAMへの出力

ルータやスイッチのRAMにシステムログを保存するにはサイズを指定する必要がある。

(config)logging buffered <サイズ(Byte単位で4096以上を指定)>

また保存するログのログレベルの変更は以下コマンドで可能。

(config)logging buffered <レベル>

Syslogサーバへの出力

Syslogサーバへシステムログを出力するにはサーバの指定が必要で以下コマンドで行える。

(config)# logging host <IPアドレス/ホスト名>

8.1.2. システムログのその他の設定

タイムスタンプの表示設定

システムログで表示されるメッセージのタイムスタンプの形式は以下コマンドで行える。

(config)#service timestamps <debug | log> [<datetime [localtime] [msec] [show-timezone] [year] | uptime>]

シーケンス番号の設定

メッセージにシーケンス番号を付加するには以下コマンドで行える。

(config)#service sequence-numbers

システムログの確認

コンソールラインや仮想ターミナルラインでシステムログを確認するには以下コマンドで行える。

show logging

デバッグの設定と表示

システムログのレベル7に相当するデバッグは通常のlogging consoleterminal monitorでは表示されない。表示するには以下コマンドを実行する。

debug <表示したいデバックメッセージ>

デバッグコマンドはCPUに負荷がかかるため必要なときのみ使用するようにする。 デバッグメッセージを止める場合以下コマンドを実行することでできる。

no debug all

8.2 NTPの時刻管理の設定

8.2.1. NTPクライアントとしてサーバとの同期有効化

クライアント/サーバモードのクライアントとしてNTPサーバに対して時刻を要求するには以下コマンドを行う。

(config)#ntp server <IPアドレス> [prefer]

IPアドレスにNTPサーバのIPアドレスを指定する。 複数のNTPサーバを指定していたときはpreferを指定すると、サーバと優先的に同期を行うにすることができる。

8.2.2. NTPサーバとして有効化

Ciscoルータはクライアント/サーバモードどちらでも動作させられる。 NTPサーバにするには以下コマンドで行う。

(config)#ntp master [<stratum数>]

statrum数は1~15まで指定可能で、デフォルトでは8になる。

8.2.3. NTP認証の設定

NTPの認証機能を追加すると信頼できるNTPサーバ/クライアント間の通信に限定するため、誤った不正時刻に更新されることを防ぐことができる。 設定にはNTPサーバ/クライアント間双方で認証を有効化し共通番号の文字列定義を行う。

また自身のNTP設定の確認は以下コマンドで行える。

show ntp status

認証機能の有効化

認証機能はデフォルトでは無効化されているため以下コマンドで有効化する。

(config)#ntp authenticate

認証鍵の定義

認証鍵の定義は以下コマンドで行える。

(config)#ntp authentication <鍵番号> md5 <文字列>

NTPサーバ/クライアントに対して共通の鍵番号と文字列を指定する。

定義した鍵番号指定

鍵番号の指定は以下コマンドで行う。

(config)#ntp trusted-key <鍵番号>

同期有効化時の鍵番号指定

NTPクライアント側で時刻同期するNTPサーバに対して認証を行うには以下コマンドで設定を行う。

(config)#ntp server <IPアドレス> key <鍵番号> [prefer]

NTP時刻同期の確認

NTPの時刻同期状態の確認は以下コマンドで行える。

show ntp associations

8.2.4. タイムゾーンの設定

日本の場合UTCから+9時間の時差(JST)となる。 設定は以下コマンドで行える。

(config)#clock timezone <タイムゾーンの略称> <時差>

またルータなどの現在時刻の確認は以下コマンドで行える。

show clock

8.3. CDP/LLDPによる隣接機器の検出設定

8.3.1. CDPの設定と確認

Cisco機器ではCDPはデフォルトでONになっている。 有効化/無効化は以下コマンドで行う。

なおCDPの設定はshow cdpshow cdp interfaceコマンドで確認可能で以下情報が確認可能。

  • CDPパケット送信間隔(60s)
  • ホールド時間(180s)
  • CDPのバージョン

機器全体でのCDP設定

(config)#cdp run (config)#no cdp run

インターフェイスごとのCDP設定

(config-if)#cdp enable (config-if)#no cdp enable

CDPの隣接機器の要約情報確認

CDPで隣接機器から受信したの確認は特権EXECモードでshow cdp neiborsを実行する。

# cdpのL2情報の確認 show cdp neibors # cdpのL3情報の確認 show cdp neibors detail

なお特定機器の隣接機器の情報を表示するにはshow cdp entry <機器名>を実行する。

8.3.2. LLDPの設定と確認

LLDPの設定と確認

Cisco機器以外で隣接機器の情報を取得したい場合はLLDPを有効化する必要がある。 有効化/無効化は以下コマンドで行う。

なおCDPの設定はshow lldpコマンドで確認可能で以下情報が確認可能。

機器全体でのLLDP設定

(config)#lldp run (config)#no lldp run

インターフェイスごとのLLDP設定

transmitでLLDPフレームの送信、receiveでLLDPフレームの受信を設定できる。

(config-if)#lldp <transmit | rececive> (config-if)#no lldp <transmit | rececive>

LLDPパケット送信間隔とホールド時間の設定

LLDPはデフォルトでは30秒ごとにLLDPフレームを送信する。 変更する場合はlldp timer <秒>で設定する。

ホールド時間はデフォルトでは120秒となっており、変更する場合はlldp holdtime <秒>で設定する。

またLLDPの初期化処理の遅延時間はデフォルトでは2秒であるが、これを変更するにはlldp reinit <秒>で指定する。

LLDPの隣接機器の要約情報確認

LLDPで隣接機器から受信したの確認は特権EXECモードでshow lldp neiborsを実行する。

# lldpのL2情報の確認 show lldp neibors # lldpのL3情報の確認 show lldp neibors detail

なお特定機器の隣接機器の情報を表示するにはshow llp entry <機器名>を実行する。

8.4. Cisco IOSの管理設定

8.4.2. CISCO IOSのイメージファイルの確認

CISCO IOSのイメージのバージョンやファイルを確認するには特権EXECモードで以下コマンドを実行する。

show flashコマンド

このコマンドではフラッシュメモリに保存されているファイル(IOSイメージを含む)やフラッシュメモリの容量などを確認できる。

show flash

show versionコマンド

show version

このコマンドではIOSファイル以外にも以下内容を確認できる。

  • IOSバージョン
  • IOSイメージファイル名
  • CPU/RAMの容量
  • ルータのインターフェイス
  • フラッシュメモリの容量
  • コンフィギュレーションレジスタ値
  • システムが稼働してからの時間
  • システムを起動した方法
  • DRAMの容量

8.4.3. CISCO IOSのバックアップとリストア

CISCO IOSのアップデート後に不具合が発生した際にバージョンを戻して対応できるようにバックアップを行うと安全である。

CISCO IOSのバックアップ手順

基本的にはTFTPサーバを用いてバックアップを行う。

この場合、実行前の準備としてTFTPサーバを立てておく必要がある。 TFTPサーバは基本PCで建てる場合が多く、windowsでは3CDaemonというソフトウェアで立てられる。

  1. TFTPサーバの準備と疎通確認(ping)を行う。
  2. show flashコマンドで.binが拡張子のIOSイメージファイルと空き容量を確認する
  3. copy flash tftpコマンドでIOSイメージをバックアップする

CISCO IOSのアップグレード

アップグレードを行う前にアップグレードを行いたいネットワーク機器がIOSの動作要件を満たしているか確認する。 また現行の機能がアップグレード後も使用できるか増設インターフェイスの使用ができるかやメモリの容量があるかなども確認が必要となる。

IOSはTFTPサーバにアップロードして特権EXECモードで以下のコマンドを使用する。

cpy tftp flash

CISCO IOSのリカバリ手順

事前準備として現行設定が保存されたrunnning-configのバックアップをしておく必要がある。 これはルータやスイッチの設定が誤った場合に戻せるようにするためである。

copy running-config tftp

リカバリはtftpに保存したバックアップファイルを設定ファイルにコピーして行う。 なおこの際のコピーは上書きではなくマージとなる。

copy tftp running-config

マージでは既存の設定、コピー元の設定が有効となり、競合した項目はコピー元が優先して保存される。

8.4.5. パスワードの復旧方法

特権EXECモードに移る際のパスワードを忘れてしまった場合は以下手順でパスワードを再設定できる。 ただし設定用PCとCISCO機器を直接接続する必要がある。

  1. ROMMONモードにアクセスする : ルータの再起動を行い、起動シーケンスでSelf decompressing the image : #########部分表示中にAlt+bを押してシーケンスを中断させる。(ハイパーターミナルの場合はCtrl+Break)
  2. コンフィギュレーションレジスタ値の変更をする : コマンドconfreg 0x2142を叩いてコンフィギュレーションレジスタ値を0x2142にする。これは次回起動時にNVRAMの内容を無視して読み込むことを意味する。
  3. ルータを再起動する : resetコマンドによりルータを再起動する
  4. 再起動後に特権EXECモードに入りstartup-configをコピーする : パスワードを要求されずに特権モードに移れるのでcopy startup-config runnning-configでコピーする。
  5. 特権EXECモードから抜けずに新しいパスワードを設定する : conf tでコンフィギュレーションモードに入り、上記1.4.2に基づいてパスワードを再設定する
  6. コンフィギュレーションレジスタ値をもとに戻す : コンフィギュレーションレジスタ値を0x2102に戻す。具体的にはconfig-register 0x2102で戻す
  7. 設定の保存をcopy running-config startup-configで保存する

8.5. リモートアクセス管理

8.5.1. ルータやスイッチからリモートアクセスする

telnetやsshで現在アクセスしているネットワークデバイスから別のネットワークデバイスにアクセスができる。 なお切断はexitで行い、中断はCtrl+Shift+6入力後にXキーを押すと可能。

telnet

telnet <IPアドレス | ホスト名>

ssh

ssh -l <ユーザ名> <IPアドレス | ホスト名>

セッションの確認と再開

中断した接続に戻る場合で特に複数接続を行いセッションを中断する場合はリモートセッションを確認する必要がある。 show sessionでセッションを確認、resume <セッション番号>でセッションに復帰可能となる。

show session

中断セッションの切断

中断しているセッションはdisconnect <セッション番号>で切断可能。

ログインしてきているセッションの確認

show usersでユーザのログインを確認可能。

8.5.2. バナーメッセージの設定

banner motdでコンソール接続時にメッセージ(バナーメッセージ)を表示させることができる。 区切り文字は#などを使うとよい。

具体的なメッセージとしてはルータ管理の情報や警告などを表示するようにすることが多い。

(config)#banner motd <区切り文字>

8.6 QoSの設定

8.6.1. IP電話

IP電話を信頼境界とする場合はIP電話を接続しているスイッチでデータパケットに対するプライオリティの変更の有無をIP電話に指示が可能。

(config-if)#switchport priority extend {cos CoS値 | trust}
  • CoS値・・・受信したパケットにすでに施されているマーキングを無視して、新たに設定するCoS値
  • trust・・・受信したパケットのプライオリティを信頼する

9 - 9.ネットワーク機器のセキュリティ設定

ネットワーク機器のセキュリティ設定に関して

9.1. L2セキュリティ

9.1.1. ポートセキュリティの設定

ポートセキュリティを有効化すると、想定外端末のネットワーク接続を防ぐことが可能。

ポートセキュリティの有効化

ポートセキュリティはデフォルトでは有効になっていないため有効化する必要がある。

ポートセキュリティの有効化にはインターフェイスを手動でアクセスポート/トランクポートにする必要がある。 有効化には以下コマンドで行える。

(config-if)#switchport porrt-security

セキュアMACアドレスの登録

ポートセキュリティの接続違反判断にはMACアドレスをスイッチに登録しておく必要がある。 方法は以下の通り。

  1. 手動で登録
  2. フレームが届いた際に自動でその送信元MACアドレスが登録される方法
  • 最大MACアドレス登録数の設定

1つのインターフェイスに登録可能なMACアドレスはデフォルトでは1つ。 自動で登録させる場合はコマンドで変更する必要があり、以下コマンドで実現できる。

(config-if)#switchport port-security maximum <最大数>
  • MACアドレスの登録

手動で登録する場合は以下コマンドで実行できる。

(config-if)#switchport porrt-security mac-address <MACアドレス>

またセキュアMACアドレスの種類は以下の通り。

種類説明保存先
スタティックセキュアMACアドレス静的に設定したMACアドレスMACアドレステーブル、running-config
ダイナミックセキュアMACアドレス動的に学習したMACアドレスMACアドレステーブル
スティキーセキュアMACアドレス動的に学習したMACアドレスMACアドレステーブル、running-config

スティキーラーニング

スティキーラーニングは自動登録されたセキュアMACアドレスがrunning-configに保存する方法。 これによりスイッチが再起動された後も一度登録したセキュアMACアドレスが消えなくなる。

スティキーラーニングの有効化には以下コマンドで行うことができる。

(config-if)#switchport porrt-security mac-address sticky

違反時の動作の指定

ポートに登録されていないMACアドレスが登録された際の動作は3種類あり設定できる。 なおデフォルトではshutdownの設定となっている。

  • protect … 通信をブロックするのみ
  • restrict … ブロックするのに加えてセキュリティ違反のカウンタを加算する、SNMPと組み合わせて違反を通知できる
  • shutdown(デフォルト) … restrictに加えてインターフェイスをシャットダウンする、このときインターフェイスはerror-disableとなる

違反モードの設定は以下コマンドで設定できる。

(config-if)#switchport port-security violation <モード>

ポートセキュリティの設定確認

ポートセキュリティの確認は以下コマンドで行える。

#ポートセキュリティの確認 show porrt-security #セキュアMACアドレスの確認 show port-security address #インターフェイスの確認 show port-security interface <インターフェイス>

err-disable状態の自動復旧方法

エラー原因の状態確認は以下コマンドで行える。

show errdisable recovery

また自動復旧をさせるためのコマンドは以下の通り。

(config)#[no] errdisable recovery cause <エラーの原因>
エラーの原因復旧原因
bpduguardBPDUガードの動作
psecure-violationポートセキュリティの動作

エラー原因には自動復旧させるエラー原因を登録する。 なおallを指定するとすべてのエラーでも復旧する。 ちなみにerrdisableになる原因は以下の通り。

  • BPDUガード違反(レイヤ2ループを防ぐ機能であるSTPの動作)
  • セキュリティ違反(不正な接続を防ぐ機能であるポートセキュリティの動作)

復旧までの時刻は以下コマンドで行える。 なおデフォルトでは300秒となっている。

(config)#errdisable recovery interval [秒数]

手動でerr-disable状態を復旧する

err-disableは、機械的にポートをshutdownさせているため手動でshutdown状態にする。 手順は以下の通り。

  1. err-disabledがかかっているinterfaceに移動しshutdownコマンドを適用する
  2. その後、no shutdownコマンドを実行しポートを有効にする

なお「err-disable状態になった原因」を把握しないと、同じ原因で再びerr-diableになる可能性が高いので原因は合わせて調査すべきである。

9.1.2. DHCPスヌーピングの設定

DHCPスヌーピングの有効化

DHCPスヌーピングの有効化は以下コマンドで行える。 この項目のみの有効化ではすべてにポートが非信頼ポートとなるため、信頼ポートも指定する必要がある。

  • すべてのVLANでDHCPスヌーピングは非アクティブ
  • すべてのポートはuntrustedポート
(config)#ip dhcp snooping

また有効化にはVLANも指定する必要がある。

(config)#ip dhcp snooping vlan <VLAN番号リスト>

信頼ポートの設定

信頼ポートの割り当ては以下コマンドで行える。

(config-if)#ip dhcp snooping trust

noをつけると非信頼ポートに指定できる。

リレーエージェント情報オプション

DHCPにはリレーエージェント情報オプション(82)という追加情報を含めることが可能。 このオプションはDHCPパケットをリモートネットワークに転送する機能で追加情報をつけることができる。

この機能ではデフォルトでは有効になっているが、DHCPサーバがこの機能に対応していないと応答が返らない。 そこで無効化を行うためには以下コマンドを行う。

(config)#[no] ip dhcp snooping information option

DHCPパケットのレート制限

DHCPパケットのレートを制限するには以下コマンドで行える。

(config-if)#ip dhcp snooping limit rate <1秒あたりに受信可能なDHCPパケット数>

上記設定のメリットは以下の通り。

  • インターフェースが受信できる1秒あたりのDHCPパケット数を設定できる
  • 不正なクライアントがDHCPサーバに大量のDHCP要求を送りつける攻撃(DOs攻撃)を防ぐ

MACアドレス検証の有効化/無効化

接続されたDHCPクライアントのMACアドレスと、DHCPクライアントが送信するDHCPパケットに含まれる送信元MACアドレスが一致しているか検証する機能を使うには以下コマンドを入力する。

(config)#ip dhcp snooping verify mac-address

DHCPスヌーピングの設定確認

DHCPスヌーピングの設定を確認するには以下コマンドで行える。

show ip dhcp snooping

DHCPスヌーピングバインディングデータベースの設定確認

DHCPスヌーピングバインディングデータベースはPCに割り当てられたIPアドレスが保存される。 このデータベースの確認は以下コマンドで行える。

show ip dhcp snooping binding

なおDHCPスヌーピングバインディングデータベースには以下情報が保存される。

  • DHCPクライアントのMACアドレス
  • DHCPクライアントに割り当てられたIPアドレス
  • IPアドレスのリース時間
  • ポートが属するVLAN
  • スイッチのポート番号

9.1.3. ダイナミックARPインスペクションの設定

ダイナミックARPインスペクション(DAI)はデフォルトでは有効になっていないため、設定する必要がある。

ダイナミックARPインスペクションの有効化

ダイナミックARPインスペクションは以下コマンドで有効化を行える。

(config)#ip arp inspection vlan <vlan番号リスト>

信頼できるポートの指定

DHCPスヌーピングの設定同様にこの項目のみの有効化ではすべてにポートが非信頼ポートとなるため、信頼ポートも指定する必要がある。

(config-if)#ip arp inspection trust

ダイナミックARPインスペクションの設定確認

ダイナミックARPインスペクションの設定確認は以下コマンドで行うことができる。

show ip arp inspection [vlan <VLAN番号>]

9.1.4. VACL

VACLはスイッチ内のVLANにACLを適用するもの。 インバウンド/アウトバンドの指定はなく、VLANに届いたものすべてに適用される。

VACLはダブルダギング攻撃の対策となる。

ダブルタギング攻撃

ダブルタギング攻撃はトランクリンクのカプセル化がIEEE802.1Qの際にネイティブVLANを利用した攻撃手法

通常VLANを使用してネットワークトラフィックを分離する際に、攻撃者がスイッチに対して偽装された二重のVLANタグ(802.1Qタグ)を送信することで実行される。攻撃者がこの方法を使用すると、通常は異なるVLANに属するべきトラフィックが攻撃者が制御するVLANに送信される可能性があるというもの。

この攻撃の対策としては以下のようなことが上げられる。

  • ネイティブVLANを未使用VLAN IDに設定する
  • ネイティブVLANでもタグが付くなどの設定をする

この「ネイティブVLANでもタグが付くようにする」には以下コマンドで行える。

(config)#vlan dot1q tag native

9.2. L3セキュリティ

9.2.1. IPアドレススプーフィングの設定

IPアドレススプーフィングとは攻撃者が自身のIPアドレスを偽って不正に接続する攻撃のこと。

IPソースガードの有効化

IPアドレススプーフィングの防止にはIPソースガードを使用する。 この機能はIPパケットの送信元アドレスを検査するものであり、IPソースガードが有効になっているポートにIPパケットが着信すると検査して、送信元IPアドレスと送信元MACアドレス(オプション)が、「DHCPスヌーピングバインディングデータベース」または手動で作成したバインディングデータベースに載っていれば許可し、載っていなければ拒否する。

有効化は以下コマンドで行える。

(config-if)# ip verify source [ port-security ]

IPソースガードの確認

show ip verify source show ip verify source binding

9.3. デバイスのセキュリティ

9.3.1. パスワードによるアクセス保護の暗号化

Enableパスワードの暗号化

異なるアルゴリズムを使用してenableパスワードを暗号化するには以下コマンドで行える。

(config)#enable algororithm-type <md5 | scrypt | sha256> secret <パスワード>

暗号化アルゴリズムはshow running-configで確認した後にenable secret項目の数字で判断できる。

アルゴリズムタイプ番号
md55
sha-2568
scrypt9

ローカル認証時のユーザアカウントパスワードの暗号化

コンソールやVTY接続でのログイン時にローカル認証(ユーザ名/パスワード)をすることができる。

ローカル認証のパスワード暗号化には以下コマンドで行える。

(config)#username <ユーザ名> [privilege <特権レベル>] secret <パスワード>

9.4. AAAを利用したログイン認証設定

AAAは「認証」「認可」「アカウンティング」の略でセキュリティの3機能を示す概念である。

9.4.1. AAAの有効化

AAAの有効化は以下コマンドで行える。

(config)#aaa new-model

9.4.2. ログイン時の認証方式指定と適用

ログインの認証方式の指定には認証方式リストを作成する必要があり、リストの作成は以下コマンドで行える。

(config)#aaa authentication login <default | リスト名> <認証方式1> [<認証方式2>]

認証方式として利用できるのは以下の通り。

認証方式説明
enableあらかじめ設定されているenableパスワードの利用
group radiusRadiusサーバによる認証の有効化
group tacacs+TACACS+サーバによる認証の有効化
lineラインモードで設定されているパスワードを使用する
localあらかじめ設定されているローカル認証用のユーザアカウント情報を使用
local-caselocalと同じだが、ユーザ名の大文字小文字を区別
none認証を使用しない

認証方式の適用は以下コマンドで行える。

(config-line)#login authentication < default | リスト名 >

ちなみに上記例では認証タイプはloginになっているが、指定可能な認証タイプは他に以下のようなものがある。

  • enable … 特権EXECモード兵の移行認証
  • dot1x … IEEE802.1X認証
  • ppp … ppp接続の認証

10 - 10.Cisco社が提供するSDNソリューション

ciscoのSDN技術に関して

10.1. Cisco SDNの前提知識

10.1.1. インテントベースネットワーク(IBN)

インテントベースネットワーク(Intent-based Network:IBN)は、Ciscoが提唱するSDNのソリューション。

「ソフトウェアで定義する」という段階を一歩進め、「利用者の意図に応じたネットワーク環境を自動構築する」ことを可能にする。

10.1.2. Cisco社の提供する代表的なSDNソリューション

Cisco社が提供するSDNのソリューションサービスには以下のようなものがある。

Open SDNCisco ACIAPIC Enterprise Module
コントロールプレーンの変更×
コントロールプレーンの集中度ほぼすべて一部分散
SBIOpenFlowOpFlexCLI, SNMP
代表的なコントローラOpenDaylight, Cisco OpenAPICAPIC-EM

10.2. Cisco ACI

Cisco ACI(Cisco Application Centric Infrastructure)は、Ciscoが提供するデータセンター向けのSDNソリューション。

10.3. Cisco SD Access

CISCO社の提供するIBNに基づいた新しいキャンパスLANの構築手法。 CISCO DNA CenterやWebGUIで提供されるアプリケーションや自作プログラムで制御ができる。

CISCO

SD-Accessは大きくアンダーレイオーバーレイで構成される。

10.3.1. ファブリック

ファブリックはアンダーレイとオーバーレイをひとまとめにしたもの。 言い換えると外部から見た、SDAネットワーク全体といえる。

10.3.2. アンダーレイ

アンダーレイはオーバレイ機能を提供するための基盤物理ネットワークのこと。 これらはルータやスイッチ、ケーブルなどの物理的なネットワークによって構成され、以下の特徴がある。

  • すべてがレイヤ3での接続となる(ルーテッドアクセス)
  • ルーティングプロトコルにOSPFやIS-ISといったリンクステート型のプロトコルを使用する
  • レイヤ2ループの考慮が不要になるため、STP/RSTPは使用しない
  • これまでの2階層、3階層モデルの役割分担がなくなり、ディストリビューション層が担当していたデフォルトゲートウェイ機能はPCが接続するエッジノードが担当する

また、各スイッチの役割は以下3つに分類される。

分類説明
ファブリックエッジノードエンドポイントとなるデバイスに接続する機器、アクセス層のスイッチにあたる
ファブリックボーダノードWANルータなどと接続する機器
ファブリックコントロールノードLISP MAP Serverとして機能する機器

アンダーレイの構築には、既存のネットワークに段階的に適用する手法(ブラウンフィールド)と、既存のものとは別個に構築して段階的に移行する手法(グリーンフィールド)がある。

10.3.3. オーバレイ

アンダーレイは通信経路などは意識せず、実際に通信を行うエンドポイント間が直接接続しているように振る舞う仮想的な論理ネットワークのこと。

内部的にはエンドポイントからパケットを受け取ったSDAエッジノード間に仮想的な接続(トンネル)を構築し、エッジノード間が直結されているように動作する。

オーバレイは以下の特徴がある。

  • トンネル構築にVXLANを使用する
  • トンネルの相手側アドレスの解決にLISPを使用する

VXLAN

物理的に異なるL3ネットワーク上に論理的なL2ネットワークを構築する技術。 具体的にはレイヤ2フレームやレイヤ3パケットをUDPパケットにカプセル化を行う。

VXLANの使用により物理的なL3ネットワークをまたいだ同一ネットワークが構築可能とまる。

LISP

LISP(Locator Identity Separation Protocol)はIPアドレスのIDとロケータ機能を分けてルーティングを行うトンネリングプロトコル。 これにより各エッジノードは全エッジノードのアドレス/ネクストホップを知らずに通信可能。

LISPではEID(エンドポイント端末のIPアドレス)とRLOC(LISP有効のルータのIPアドレス)と言う値を用いて通信を行う。

10.4. Cisco DNA/Cisco DNA Center

10.4.1. Cisco DNA

CISCO DNA(Digital Network Architecture)はCiscoが提唱するインテントベースネットワークを企業ネットワークに適用するためのアーキテクチャ。

インテントベースネットワークでは、ネットワーク機器ごとの個別の設定コマンドや設定値を意識する必要はなく、管理者の目的に沿って自動的に設定変更が行われる。

10.4.2. Cisco DNA Center

Cisco DNA CenterはCisco DNA製品やソリューションを一元管理する装置。

GUIで操作可能で、各ネットワーク機器のステータスやネットワーク上の問題点などを可視化して一元的に管理できるSDNコントローラとして動作する。

デバイスを物理的な場所単位(ビルやフロア)で管理するためのグループであるサイトを作成し、サイトごとにネットワークの設定やネットワーク機器等を紐づけてネットワークの管理を行う。 各ネットワーク機器にはサイトにあった適切な設定を自動投入可能で、様々なツールを用いて自動化を行うこともできる。 具体的にはデバイスの設定や運用監視のほか、セキュリティ対策機能も提供している。

Cisco DNA Centerの利点は以下の通り。

  • GUIによる一元管理が可能
  • ネットワーク機器のプラグアンドプレイが行われる
  • ネットワーク全体のスムーズな監視が可能
  • Easy QoSの機能(QoS設定をGUIで簡単にポリシとして設定可能)
  • Cisco AIによるエンドポイント分析機能の提供

また、Cisco DNA CenterにはマルチベンダSDKが提供されているため、マルチベンダ環境においても、マルチベンダSDKを使って非Cisco機器の情報を登録することでCisco DNA Centerから非Cisco機器を制御できるようにできる。

Cisco DNA Centerの機能

  • ネットワークのモニタリング(アシュアランス)機能
  • CLIテンプレート作成機能(テンプレートエディタ)
  • インベントリ機能(IPアドレスやMACアドレスなどネットワーク内のデバイスの情報の保持)

Cisco DNA Centerの特徴

CISCO DNA Centerの特徴は以下の通り。

  • ソフトウェアとしてではなく機器一体
  • SDNコントローラとして動作
  • NorthBound APIはREST APIを使用
  • Southbound APIはTELNET, SSH, SNMP, NETCONF/RESTCONFを使用

スケーラブルグループ

スケーラブルグループは、SD-Accessファブリックにおけるセキュリティポリシー適用のコンポーネント。

ユーザや宛先ネットワークをグループとして定義し、どのネットワーク機器に設定するか、どのような設定をするかということは一切考えず「どのグループからどのグループへの通信は許可する」というポリシーを指定するだけで必要な設定はすべてCisco DNA CenterからSD-Accessファブリックに反映される。

ACLとの違いは以下手順でセキュリティポリシを適用可能。

  1. Cisco DNA Centerでエンドポイントやユーザを「グループ(Scalable Groups)」に割り当て
  2. 各グループ間の通信を「許可/拒否」設定する

10.5. Cisco PI

Cisco PI(Cisco Prime Infrastructure)とは、Ciscoが提供するネットワーク管理ツール。 管理対象となる全てのデバイスを一つの画面から設定、管理することが可能。

機能としてはネットワークの可視化機能も持ち、デバイスの動作状況やネットワークトラフィックの状況、無線LANの電波状況など、様々な情報をダッシュボード上で視覚的に確認することを可能。

Cisco DNA Centerと比べて高度な自動化機能を多くない。 例えば、ソフトウェアの自動アップデートや、ポリシーベースの機器設定、障害の自動検知と分析、対応策の機能がDNAよりも弱い。

従来型のネットワークではCisco PIによる一元管理が幅広く使用されていたが、SDN対応が求められる現代のネットワークではCisco DNA Centerが多く使用されている。

11 - 11.CiscoのワイヤレスLAN設定

ciscoのWLANに関して

11.1. CiscoワイヤレスLANの前提知識

11.1.1. AP/ワイヤレスLANコントローラへの接続

CiscoのワイヤレスLANソリューションにおける無線LAN設計には分散管理型と集中管理型の2種類がある。

  • 分散管理型 … アクセスポイントと無線LANクライアントから構成
  • 集中管理型 … アクセスポイント、無線LANクライアント、無線LANスイッチで構成

ワイヤレスLAN

11.1.2. WLCへのログイン

WLC(ワイヤレスLANコントローラ)にはCUIログイン以外にもHTTP/HTTPSを用いたGUIアクセスも可能

11.1.2. CiscoワイヤレスLANコントローラのポート概念

WLCport

物理ポートの役割

種類説明
ディストリビューションシステムポートWLCを有線LANに接続するポート、通常はIEEE802.1Qトランクリンクでスイッチと接続する。LAG接続も可能
サービスポートWLCへ管理アクセスするためのポート
コンソールポートWLCにコンソール接続するためのポート。アウトオブバンド管理に使用される
冗長ポートWLCの冗長化のためのポート

論理ポートの役割

種類説明
DynamicインターフェイスSSID/VLANの紐づけを行うポート、SSIDに紐づいたVLANデータの送受信を行う
Virtualインターフェイスモビリティ機能を提供するための仮想ポート
Serviveインターフェイスサービスポートと紐づくインターフェイス、アウトオブバンド管理に使用される
ManagementインターフェイスWLCの管理用ポート、WLC通信制御に使用される。インバウンド管理に使用される

11.2. ワイヤレスLANコントローラの設定

WirelessLAN

11.2.1. Monitorメニュー

ポートやプロトコルの大まかな情報を把握可能。

CiscoGUI

またWLCは未知のAP(不正AP)を検出したとき、そのAPを事前に設定したルールに基づき、以下のいずれかのタイプに分類し、その結果はMonitorタブで閲覧可能。

なお以下種類ごとに表示される。

分類説明
Friendly友好的(脅威的ではない)
Malicious悪意のあるAP
Custom管理者が新たに作成した分類
Unclassified未分類

11.2.2. WLANsメニュー

WLANsメニューでは以下のことが可能。

  • SSIDの作成
  • WLANセキュリティ規格の設定
  • Web認証設定
  • AAAのRadiusなどの認証サーバ設定
  • QoSの設定

Generalタブ

SSID名変更/作成したWLANの有効無効化などを行える。

General

Securityタブ

  • Layer 2タブ … WLCのセキュリティ規格設定(WPA+WPA2など)や事前共有鍵認証方式の設定(PSKなど)、MACフィルタリングの有効化、PSK Format(ASCII,Hsx)、PMF有効化など
  • Layer 3タブ … Web認証の有効化/無効化(Webブラウザでのユーザ認証)
  • AAA Serverタブ … Radiusサーバなどの認証サーバの指定
  • Advancedタブ … DHCP、AAAオーバライドなどの設定

なお「AAA Serverタブ」のQoSのレベルは以下のようなものを設定できる。

QoS Level説明
PlutinumVoice over Wireless LAN用サービスの提供
Gold高品質ビデオアプリケーション用サービス提供
Silverクライアント用の通常帯域幅を提供
Bronzeゲストサービス用の最小帯域幅の提供

PMF: 管理フレームのセキュリティを強化するための機能(Comebackタイマー、SAクエリタイムアウトの設定が必要 )

11.2.3. Controllerメニュー

Controllerメニューでは以下のことが可能。

  • Dynamicインターフェイスの作成
  • WLANの作成
  • LAG(EthernetChannel)の設定
  • Fast SSID Changeの有効化

Fast SSID Change: SSIDに接続しているWLANクライアントが別のSSIDへ接続しようとした際に、SSIDを素早く切り替える機能

11.2.4. Wirelessメニュー

Wirelessメニューでは以下のことが可能。

  • APモードの変更

APモード

モード説明
LocalLAPデフォルトのモード。無線LANクライアントを使ったデータの送受信/無線通信に1つのチャネルを使用し他チャネルを監視
FlexConnectWAN経由でWLCと接続するときに使用するモード
Monitor不正APの検出、IDS・RFID専用モードなどとして動作
Rogue Detector有線ネットワーク上に不正なAPやクライアントがいないか監視するモード
Sniffer特定チャネルのすべてのトラフィックを収集し指定デバイスに送信するモード
BridgeAPがブリッジとして動作するモード
SE-Connectスペクトルアナライザ専用モード

11.2.5. Securityメニュー

Securityメニューでは以下のことが可能。

  • Radiusサーバの登録
  • ACLの作成と適用

11.3.6. Managementメニュー

Managementメニューでは以下のことが可能。

  • HTTP/HTTPSによるWLCへのアクセスを許可/拒否

11.3. CiscoのワイヤレスLANに関するサービス/製品

Cisco Meraki

Cisco Merakiは自律型アクセスポイント(AP)を始めとしたネットワーク機器の設定やネットワークの管理をクラウド上で行うシステムのこと。

Merakiに対応したアクセスポイントであれば、コンソールケーブルを接続してCLIで設定を行う必要がなく、APをLANケーブル(インターネット)に接続するだけで導入できる。 細かい設定や管理については、インターネット経由でMerakiのクラウドにアクセスすることで、GUIで操作できる。