AIS-P、PLM-P LOF ( Loss of Frame )
レイヤー 2 の監視およびトラブルシューティング
OSI
モデルの次の層であるレイヤー2
は、同一ネットワークセグメン ト上の隣接するネットワークノード間における論理データフレームの送 信を管理します。レイヤー2
プロトコルには、イーサネット(レイヤー1
とレイヤー2
の両方で動作する)、フレームリレー、およびHDLC
な どがあります。本セクションでは、PPP(Point-to-Point Protocol)の監視および トラブルシューティングについて説明します。PPPは、WANリンクを 介してルーターを接続するために良く用いられるレイヤー
2
プロトコ ルであり、ジュニパーネットワークスのルーターでは、シリアル接続用 のデフォルトプロトコルとして採用されています。レイヤー1
でのトラ ブルシューティングと同様に、レイヤー2
で調べるべき対象は、showinterfaceコマンドの実行による出力に示されます。
以下の出力例は、前述の
SONET
インタフェースに対するものと同じ ですが、ここではレイヤー2(PPP)に焦点を当てます。
[edit]
ps@dunkel-re0> show interfaces so-1/2/3
Physical interface: so-1/2/3, Enabled, Physical link is Up Interface index:148, SNMP ifIndex:133
Description:Connection to kenny so-1/2/3
Link-level type:PPP, MTU:4474, Clocking:Internal, SONET mode, Speed:OC3, Loopback:None, FCS:16, Payload scrambler:Enabled
Device flags :Present Running
Interface flags:Point-To-Point SNMP-Traps Internal:0x4000 Link flags :Keepalives
Keepalive settings:Interval 10 seconds, Up-count 1, Down-count 3 Keepalive:Input:275076 (02:44:12 ago), Output:275032 (02:44:09 ago) LCP state:Opened
NCP state:inet:Opened, inet6:Not-configured, iso:Not-configured, mpls:
Not-configured CHAP state:Closed PAP state:Closed
CoS queues :4 supported, 4 maximum usable queues Last flapped :2010-04-09 14:38:52 PDT (2d 23:50 ago) Input rate :656 bps (0 pps)
Output rate :696 bps (0 pps) SONET alarms :None
SONET defects :None
Logical interface so-1/2/3.0 (Index 69) (SNMP ifIndex 142) Flags:Point-To-Point SNMP-Traps 0x4000 Encapsulation:PPP Protocol inet, MTU:4470
Flags:None
Addresses, Flags:Is-Preferred Is-Primary
Destination:10.33.18.4/30, Local:10.33.18.6, Broadcast:10.33.18.7
PPP
に関する情報は、上記では太字で表示されており、その動作の 重要な側面を示します。LCP(Link Control Protocol)およびNCP
(Network Control Protocol)は、PPPスイート内のプロトコルで、
PPP
のリンクおよびネットワーク機能のパラメータと動作を管理しま す。LCPは、リンクパラメータのネゴシエーション(パケット送信サ イズ)と、リンクが(基準セットに基づいて)許容できるものかどうか の検証を行います。LCP
がオープン状態にならない限り、PPPは継続できません。LCP によるネゴシエーションの後、NCPはレイヤー3
プロトコルモジュー ルを使用して、多岐にわたるレイヤー3
プロトコルに対するパラメー タのネゴシエーションを行います。こうすることで、新しいレイヤー3
プロトコルをサポートできるようにPPP
を変更することが不要になり ます。このケースで考慮すべきNCP
モジュールは、IPCP(InternetProtocol Control Protocol)です。IPCP
は、圧縮メカニズム、IP アドレッシング(動的な加入者環境など)など、IPレイヤーパラメー タやその他の値のネゴシエーションを行います。特定のレイヤー3
プ ロトコルに対してIPCP
がオープンな状態でなければ、そのタイプの パケットを送信することはできません。第5章:レイヤー1およびレイヤー2の監視およびトラブルシューティング 67
注
NCP
モジュール には、IPv6CP for IP version 6、IPX(IPxCP forInternet Packet Exchange
) お よ びATCP
(AppleTalk Control Protocol)などもあります。
大半の状況では、これらすべてのパラメータのデフォルト値を使用す れば問題ありません。ただし、レイヤー
1
については、両側で一致す ることが必要であるため、LCP
またはNCP
がオープン状態にならな い状況では、まず初めに調べるべき箇所であるといえます。CHAP
およびPAP
プロトコルは、多くのPPP
問題の原因となること があります(非動的なアドレス環境)。CHAP
およびPAP
は、ピア のアイデンティティを認証するために使用され、通常は、NCPによる ネゴシエーション完了後に動作します。CHAP
またはPAP
の障害が発生すると、NCPおよびLCP
はクロー ズ状態となり、プロセスが再開します。CHAPおよびPAP
は、どち らも隣接機器を認証するためにパスワードを使用しますが、異なるメ カニズムを採用しています。PAP
はパスワードをプレーンテキストで 送信するため安全ではありませんが、CHAPはMD5
ハッシュを用い ることで、そうした脆弱性を回避します。どちらのプロトコルも、大規 模なシリアルリンクではそれほど採用されません。一般に、加入者環 境でクライアントのアイデンティティを検証するために限定的に使用さ れます。CHAPまたはPAP
を使用した場合には、両側で認証および パスワードのタイプを確認することを推奨します。以下に、パスワー ド設定に誤りがあるPAP
認証の設定サンプルを示します。ここでは、例として、問題の切り分けに
traceoptions
を使用しています。この 例では、PPPリンクを介してトラフィックを渡すことができず、LCP がオープンではないことがわかりました。ps@dunkel-re0> ping 10.33.18.5 count 5 PING 10.33.18.5 (10.33.18.5):56 data bytes 10.33.18.5 ping statistics
---5 packets transmitted, 0 packets received, 100% packet loss ps@dunkel-re0> show interfaces so-1/2/3
Physical interface: so-1/2/3, Enabled, Physical link is Up Interface index:148, SNMP ifIndex:133
Description:Connection to maibock
Link-level type:PPP, MTU:4474, Clocking:Internal, SONET mode, Speed:OC3, Loopback:None, FCS:16, Payload scrambler:Enabled
Device flags :Present Running
Interface flags:Point-To-Point SNMP-Traps Internal:0x4000
Keepalive settings:Interval 10 seconds, Up-count 1, Down-count 3 Keepalive:Input:0 (never), Output:0 (never)
LCP state:Down
NCP state: inet:Not-configured, inet6:Not-configured, iso:Not-configured, mpls:
Not-configured
CHAP state:Closed PAP state:Closed
CoS queues :4 supported, 4 maximum usable queues Last flapped :2010-04-09 14:38:52 PDT (3d 00:34 ago) Input rate :80 bps (0 pps)
Output rate :88 bps (0 pps) SONET alarms :None
SONET defects :None
Logical interface so-1/2/3.0 (Index 73) (SNMP ifIndex 521)
Flags:Hardware-Down Point-To-Point SNMP-Traps 0x4000 Encapsulation:PPP Protocol inet, MTU:4470
Flags:Protocol-Down
Addresses, Flags:Dest-route-down Is-Preferred Is-Primary
Destination:10.33.18.4/30, Local:10.33.18.6, Broadcast:10.33.18.7
ping
の試行とインタフェースの出力により、LCPがダウンしているこ とが示されています。このリンクを介してトラフィックを渡せない理由 がわかりました。この設定では、CHAP認証を使用していることが示 されているため、トラブルシューティングを開始すべき箇所であるとい えます。ps@dunkel-re0> show configuration interfaces so-1/2/3 description “Connection to maibock”;
unit 0 {
ppp-options { chap {
default-chap-secret “$9$PfF/9A0OIcF3hreKx7ik.539BIcM87cyvL”; ## SECRET-DATA }
}
family inet {
address 10.33.18.6/30;
} }
問題が
CHAP
に関連していないことを最も早く裏付ける方法は、接 続の両側でパスワード(この例ではppp-password)を再入力する
方法です。しかし、Junosのデバッグ機能を示すために、問題の診 断にはtraceoptions
を使用しています。Junos
のtraceoptions
は、プロトコルまたは機能のデバッグ情報を提供します。一般に、プロト
コルの
traceoptions
は、そのプロトコルに対応する階層レベルで設定します。PPPの場合、traceoptionsは
[edit protocols ppp]
階 層で設定します。traceoptionsには、主に2
つの設定パラメータが あります。それは、デバッグメッセージのログが記録されるファイルと、ログ記録対象の情報タイプを指定するフラグです。この例では、ファ イル名は「ppp-log.txt」です。以下に、PPP traceoptionsの設定 オプションを示します。
第5章:レイヤー1およびレイヤー2の監視およびトラブルシューティング 69
[edit]
ps@dunkel-re0# set protocols ppp traceoptions flag ? Possible completions:
access Trace access code address-pool Trace address pool code all Trace all areas of code auth Trace authentication code chap Trace CHAP code
ci Trace ci code
config Trace configuration code ifdb Trace interface database code lcp Trace LCP state machine code memory Trace memory management code message Trace message processing code mlppp Trace MLPPP code
ncp Trace NCP state machine code pap Trace PAP code
ppp Trace PPP protocol processing code radius Trace RADIUS processing code redundancy Trace redundancy code
rtsock Trace routing socket code session Trace session management code signal Trace signal handling code timer Trace timer code
ui Trace user interface code
PPP
に は 多 数 のtraceoptions
フラグ が ありま す が、CHAPに 問題があると疑う場合は、そこから調査を開始すべきです。PPPtraceoptions
は、出力を特定の重要度に制限するレベルパラメータも提供します。この例では、まずレベルとして「all」を使用し、以下
のように
traceoptions
設定をそのまま使用します。ps@dunkel-re0> show configuration protocols ppp traceoptions {
file ppp-log.txt;
level all;
flag chap;
}
この設定をコミット後、 問題を診断するための次のステップは、
traceoptions
ファイルの監視です。これを行うには、monitor start[filename]
コマンドを実行します。ps@dunkel-re0> monitor start ppp-log.txt
このコマンドは、UNIX環境での
tail
コマンドに相当し、ユーザーが ファイルへの追加を監視できるようにするものです。しばらくすると、画面上に以下が表示されます。
ps@dunkel-re0>
*** ppp-log.txt ***
Apr 12 16:12:20 so-1/2/3.0:CHAP - Stopping protocol timer Apr 12 16:12:20 so-1/2/3.0:CHAP - Starting authentication Apr 12 16:12:20 so-1/2/3.0:CHAP - End authen(0x8231004):FAILURE
ログ内で最も重要な行は、障害エラーです。認証が失敗し、両側で パスワードをリセットすべきであることがわかります。
Junos
で は、PPPの 状 態を監 視 するた め のCLI
コマンドが いく つか提供されています。最も役立つコマンドとしては、show pppinterface [interface name] extensiveおよびshow ppp summaryがあ ります。以下に、現在のダウンした状態でこれらのコマンドを実行し
た場合の出力例を示します。
ps@dunkel-re0> show ppp interface so-1/2/3 extensive Sessions for interface so-1/2/3
Session so-1/2/3.0, Type:PPP, Phase:Establish LCP
State:Creq-sent
Last started:2010-04-12 16:16:16 PDT Last completed:2010-04-12 16:16:14 PDT Negotiated options:
Authentication protocol:CHAP, Authentication algorithm:MD5, Magic number:2543706641, MRU:4470
Authentication:CHAP State:Closed
Last started:2010-04-12 16:16:14 PDT Last completed:2010-04-12 16:13:26 PDT IPCP
State:Closed
Last started:2010-04-12 16:13:26 PDT Last completed:2010-04-12 16:13:26 PDT Negotiated options:
Local address:10.33.18.6, Remote address:10.33.18.4, Primary DNS:0.0.0.0, Secondary DNS:0.0.0.0
ps@dunkel-re0> show ppp summary Interface Session type Session phase Session flags so-1/2/3.0 PPP Authenticate
第5章:レイヤー1およびレイヤー2の監視およびトラブルシューティング 71
運用時の設定では、show ppp interface extensiveコマンドの実行に よる出力で、LCPおよび
IPCP(および設定したその他のレイヤー 3
プロトコル)は「Opened」状態にあり、show ppp summaryにはセッショ ンフェーズとして「Network」が示されているべきです。両側でパスワードをリセットすると、以下のログが表示されます(こ の時点でも監視を継続しているはずです)。
Apr 12 16:13:26 so-1/2/3.0:CHAP - Starting protocol timer (2 sec, 0 nsec) Apr 12 16:13:26 so-1/2/3.0:CHAP - Stopping protocol timer
Apr 12 16:13:26 so-1/2/3.0:CHAP - Starting authentication
Apr 12 16:13:26 so-1/2/3.0:CHAP - End authen(0x8231004):SUCCESS
SUCCESSメッセージが表示されています。この後、回線をもう一度
ping
すると、PPPが正常に機能していることがCLI
操作によって検 証されます。ps@dunkel-re0> show ppp interface so-1/2/3 extensive Sessions for interface so-1/2/3
Session so-1/2/3.0, Type:PPP, Phase:Network LCP
State:Opened
Last started:2010-04-12 16:19:41 PDT Last completed:2010-04-12 16:19:41 PDT Negotiated options:
Authentication protocol:CHAP, Authentication algorithm:MD5, Magic number:2544040945, MRU:4470
Authentication:CHAP State:Success
Last started:2010-04-12 16:19:41 PDT Last completed:2010-04-12 16:19:41 PDT IPCP
State:Opened
Last started:2010-04-12 16:19:41 PDT Last completed:2010-04-12 16:19:41 PDT Negotiated options:
Local address:10.33.18.6, Remote address:10.33.18.5, Primary DNS:0.0.0.0, Secondary DNS:0.0.0.0
ps@dunkel-re0> show ppp summary Interface Session type Session phase Session flags so-1/2/3.0 PPP Network