スキップしてコンテンツを表示

Direct Connect のレイヤー 3 の問題をトラブルシューティングする方法を教えてください。

所要時間3分
0

レイヤー 3 の問題が原因で AWS Direct Connect 接続がダウンした場合のトラブルシューティングを行いたいと考えています。

解決策

注: レイヤー 1 の問題については、「How do I troubleshoot layer 1 issues in Direct Connect?」(Direct Connect のレイヤー 1 の問題をトラブルシューティングする方法を教えてください) を参照してください。レイヤー 2 の問題については、「How do I troubleshoot layer 2 issues in Direct Connect?」(Direct Connect のレイヤー 2 の問題をトラブルシューティングする方法を教えてください) を参照してください。

AWS Health Dashboard でメンテナンスアクティビティを確認する

Direct Connect 接続は、数分から数時間続く可能性がある進行中の AWS メンテナンスが原因で DOWN になることがあります。メンテナンス中、ボーダーゲートウェイプロトコル (BGP) 接続は Idle 状態に移行します。

Direct Connect 接続に影響する可能性のある進行中または最近完了した AWS メンテナンスについては、AWS Health Dashboard[イベント] セクションを確認してください。

重要なメトリクスの通知を設定して、すぐにアラートを受け取れるようにします。

BGP 設定を確認する

仮想インターフェイスが Available 状態でも BGP 接続を確立できない場合は、次の操作を行います。

  • ローカルの BGP AS 番号 (ASN) と AWS ASN の設定に問題がないか確認します。
  • BGP ピアリングセッションの両側のピア IP アドレスに設定上の問題がないか確認します。
  • MD5 認証キーを、ダウンロードしたルーター設定ファイルのキーと一致するように設定します。キーに余分なスペースや文字が含まれていないことを確認してください。
  • プライベート仮想インターフェイスには 100 個を超えるプレフィックス、パブリック仮想インターフェイスには 1,000 個を超えるプレフィックスをアドバタイズしないでください。<br id=hardline_break/> 注: これらのクォータを変更したり、超えたりすることはできません。
  • TCP ポート 179 または番号の大きいエフェメラル TCP ポートをブロックするファイアウォールまたはネットワークアクセスコントロールリスト (ネットワーク ACL) ルールを無効にします。<br id=hardline_break/> 注: これらのポートは、BGP がピア間の TCP 接続を確立するために必要です。
  • BGP ログにエラーや警告メッセージがないか確認してください。

上記の手順で BGP の問題が解決しない場合は、次のアクションを実行してください。

  • ゲートウェイで BGP が正しく設定されていることを確認します。
  • BGP ピア IP アドレス間で ping テストを行います。
  • ゲートウェイデバイスから BGP ピア IP アドレス間のトラフィックのパケットキャプチャを収集します。

BGP 状態のトラブルシューティング

BGP を正しく設定してもレイヤー 3 の問題が解決しない場合は、BGP 状態に関するトラブルシューティングを行います。

注: Idle 状態は、BGP が開始イベントを待つ最初の状態です。開始イベントは、新しい BGP ネイバーを設定したとき、または確立された BGP ピアリングをリセットしたときに発生します。BGP はリソースを初期化し、ConnectRetry タイマーをリセットしてから、リモート BGP ネイバーへの TCP 接続を開始します。

Connect 状態

Connect 状態の間、BGP は TCP 3 ウェイハンドシェイクが完了するまで待機します。ハンドシェイクが成功すると、接続は OpenSent 状態に移行します。

正常な接続の例:

2021-07-04 22:50:20 169.254.60.146 169.254.60.145 TCP 74 34516 → 179 [SYN] Seq=0 Win=2920 Len=0 MSS=1460 SACK_PERM TSval=3030456 TSecr=0 WS=1
2021-07-04 22:50:20.719228 169.254.60.145 169.254.60.146 TCP 74    179 → 34516 [SYN, ACK] Seq=0 Ack=1 Win=26844 Len=0 MSS=1375 TSval=64921081 TSecr=3030456 WS=128
2021-07-04 22:50:20.719453 169.254.60.146 169.254.60.145 TCP 66    34516 → 179 [ACK] Seq=1 Ack=1 Win=2920 Len=0 TSval=3030476 TSecr=64921081

接続または ConnectRetry が失敗した場合、接続は Active 状態のままで、OpenSent 状態にはなりません。

Connect 状態に関する問題のトラブルシューティングを行うには、次の操作を行います。

  • 2 つの BGP ネイバー間が TCP 接続されていることを確認するには、TCP ポート 179 で telnet テストを実行します。TCP 接続がない場合は、TCP 接続中にログのエラーやドロップされたパケットがないかどうかを確認します。
  • BGP、ゲートウェイ、AWS で BGP ネイバーの IP アドレスが正しく設定されていることを確認します。
  • ルータで正しい BGP 認証を入力したことを確認します。

OpenSent 状態

BGP がピアに OPEN メッセージを送信すると、BGP は OpenSent 状態で OPEN 応答を待ちます。BGP が応答を正常に受信すると、BGP は OpenConfirm 状態に移行し、キープアライブメッセージをピアに送信します。接続に失敗すると、BGP は Idle 状態または Active 状態に戻ります。

BGP が接続を確立しない場合は、BGP ネイバーが送受信した BGP パラメータを含む OPEN メッセージがログにないかどうかを確認します。

OPEN メッセージの例:

Border Gateway Protocol - OPEN MessageType: OPEN Message (1)  
Version: 4   
My AS: 65000  
Hold Time: 30  
BGP Identifier: 54.241.242.80

また、OpenSent ログを確認して失敗の原因を特定してください。

注: AWS は Hold Time の値として 0 を受け入れません。

OpenConfirm 状態

BGP は OpenConfirm 状態でピアからのキープアライブメッセージを待ちます。BGP がメッセージを正常に受信すると、Established 状態に移行します。それ以外の場合は、Idle 状態または Active 状態に戻ります。

ログで、ピアがキープアライブメッセージを送信し、BGP がそれを受信したことを確認します。

BGP ピア間のキープアライブメッセージの例:

65    2021-07-04 22:50:20.744297    169.254.60.146    169.254.60.145    BGP    85    KEEPALIVE Message
66    2021-07-04 22:50:20.765323    169.254.60.145    169.254.60.146    BGP    85    KEEPALIVE Message

Established 状態

Established 状態では、BGP はピア間で情報を交換します。

BGP 更新メッセージの例:

Border Gateway Protocol - UPDATE Message
Path attributes
Path Attribute - AS_PATH: 65000
Path Attribute - NEXT_HOP: 169.254.60.146
Network Layer Reachability Information (NLRI)
   192.168.0.0/16

BGP が接続を確立しない場合は、次のアクションを実行してください。

  • ログをチェックして、ルーターがアップデートを正しく交換していることを確認します。アドバタイズされたプレフィックスが予想されるルートと一致していることを確認します。
  • BGP フィルターまたはプレフィックスリストがルートテーブル内でのルートの伝達を妨げないようにしてください。
  • ピアルートテーブルのアドバタイズされたルートエントリが正しいことを確認します。
  • BGP ログまたはオンプレミスデバイスでは、仮想ゲートウェイの Direct Connect 仮想インターフェイスで BGP ピアリングセッションが Established 状態から Idle 状態に変更されたと表示される場合があります。この場合、ピアが BGP ピアリングセッションでアドバタイズするルートが 100 未満であることを確認してください。

BFD 問題のトラブルシューティング

AWS では、AWS 上の Direct Connect 仮想インターフェイスの双方向フォワーディング検出 (BFD) が自動的に有効になります。

これらの BFD 問題をトラブルシューティングするには、次のアクションを実行します。

  • ルーターで BFD を有効にした場合は、BFD が正しく設定されていることを確認してください。
  • ルーターの BFD ピアリングセッションが UP 状態であることを確認します。
  • ルーターの BFD イベントまたはログを確認します。

注: AWS のデフォルトの BFD ライブネス検出の最小間隔は 300 ミリ秒 (ms) です。デフォルトの BFD ライブネス検出の乗数は 3 です。

フェイルオーバーや接続の問題を回避するには、グレースフル再起動と BFD を同時に設定しないことがベストプラクティスです。高速フェイルオーバーのためには、グレースフル再起動を有効にせずに BFD を設定します。

関連情報

Troubleshoot layer 3/4 (Network/Transport) issues (レイヤー 3/4 (ネットワーク/トランスポート) の問題のトラブルシューティング)

AWS公式更新しました 5ヶ月前
コメントはありません

関連するコンテンツ