このページでは、Cloud Interconnect の MACsec をトラブルシューティングする方法について説明します。
新しいキーを作成しようとすると Cloud Interconnect でエラーが表示される
開始時刻のない MACsec キーが存在しているときに、新しいキーを作成しようとすると、Cloud Interconnect にエラーが表示されます。このエラーを解決するには、既存のキー開始時間を更新します。
Cloud Interconnect 接続で MACsec の動作が停止している
Cloud Interconnect 接続とオンプレミス ルーターで MACsec が有効になっていても、Cloud Interconnect 接続で動作を停止していることが MACsec セッションに表示されます。
Cloud Interconnect 接続とオンプレミス ルーターで MACsec が正常に有効になっていても、Cloud Interconnect 接続リンクで動作を停止していることが MACsec セッションに表示されます。考えられる原因は次のいずれかです。
- オンプレミス ルーターと Google のエッジルーター上のアクティブな鍵が一致しない。
- オンプレミス ルーターと Google のエッジルーターの間に MACsec プロトコルの不一致がある。
MACsec 状態を解決する手順は次のとおりです。
Cloud Interconnect 接続で MACsec が有効になっていることを確認するには、次のいずれかのオプションを選択します。
コンソール
Google Cloud コンソールで、Cloud Interconnect の [物理接続] タブに移動します。
表示する Cloud Interconnect 接続を選択します。
[MACsec] タブで、[MACsec 構成] に次のいずれかが表示されていることを確認します。
有効、フェイル オープン: リンクで MACsec 暗号化が有効になっています。両端の間で MACsec 暗号化が確立されていない場合、リンクは暗号化なしで動作します。
有効、フェイル クローズ: リンクで MACsec 暗号化が有効になっています。両端の間で MACsec 暗号化が確立されていない場合、リンクは失敗します。
gcloud
gcloud compute interconnects describe INTERCONNECT_CONNECTION_NAME
INTERCONNECT_CONNECTION_NAME
は、Cloud Interconnect 接続の名前に置き換えます。出力は次のようになります。
macsecEnabled: true
が表示されていることを確認します。adminEnabled: true availableFeatures: - IF_MACSEC circuitInfos: - customerDemarcId: fake-peer-demarc-0 googleCircuitId: LOOP-0 googleDemarcId: fake-local-demarc-0 creationTimestamp: '2021-10-05T03:39:33.888-07:00' customerName: Fake Company description: something important googleReferenceId: '123456789' id: '12345678987654321' interconnectAttachments: - https://www.googleapis.com/compute/v1/projects/my-project1/regions/us-central1/interconnectAttachments/interconnect-123456-987654321-0 interconnectType: IT_PRIVATE kind: compute#interconnect labelFingerprint: 12H17262736_ linkType: LINK_TYPE_ETHERNET_10G_LR location: https://www.googleapis.com/compute/v1/projects/my-project1/global/interconnectLocations/cbf-zone2-65012 macsec: failOpen: false preSharedKeys: - name: key1 startTime: 2023-07-01T21:00:01.000Z macsecEnabled: true name: INTERCONNECT_CONNECTION_NAME operationalStatus: OS_ACTIVE provisionedLinkCount: 1 requestedFeatures: - IF_MACSEC requestedLinkCount: 1 selfLink: https://www.googleapis.com/compute/v1/projects/my-project1/global/interconnects/INTERCONNECT_CONNECTION_NAME selfLinkWithId: https://www.googleapis.com/compute/v1/projects/my-project1/global/interconnects/12345678987654321 state: ACTIVE
Cloud Interconnect ポートのステータス、MACsec の動作状態、アクティブなキー名を確認するには、次のいずれかのオプションを使用します。
コンソール
Google Cloud コンソールで、Cloud Interconnect の [物理接続] タブに移動します。
表示する Cloud Interconnect 接続を選択します。
[リンク回路の情報] で、すべてのリンクの [リンク状態] に
(アクティブ)が表示されていることを確認します。[MACsec キー名] にすべてのリンクのキー名が表示され、各キー名に
(このリンクの MACsec が稼働中です)または (このリンクの MACsec がダウンしています)が表示されていることを確認します。
gcloud
gcloud compute interconnects get-diagnostics INTERCONNECT_CONNECTION_NAME \ --project=PROJECT_NAME
PROJECT_NAME
は、Google Cloud プロジェクトの名前で置き換えます。出力は次のようになります。
links.lacpStatus.state
がACTIVE
になり、links.macsec.ckn
に値が表示され、links.operationalStatus
がLINK_OPERATIONAL_STATUS_UP
であることを確認します。bundleAggregationType: BUNDLE_AGGREGATION_TYPE_STATIC bundleOperationalStatus: BUNDLE_OPERATIONAL_STATUS_UP links: - circuitId: LOOP-0 googleDemarc: fake-local-demarc-0 lacpStatus: googleSystemId: '00:11:22:33:44:55' neighborSystemId: '55:44:33:22:11:00' state: ACTIVE macsec: ckn: 0101010189abcdef...0123456789abcdef operational: false operationalStatus: LINK_OPERATIONAL_STATUS_UP receivingOpticalPower: state: OK value: -2.49 transmittingOpticalPower: state: OK value: -0.88 macAddress: 00:11:22:33:44:55
links.macsec.ckn
に表示される値がない場合は、Google Cloud サポートにお問い合わせください。アクティブなキーの CAK 値と CKN 値、キーの開始時間を確認するには、次のいずれかのオプションを選択します。
コンソール
[MACsec] タブで [事前共有キー] セクションに移動し、現在アクティブなキーの横にある [表示] をクリックします。CKN 値が表示されない場合は、Google Cloud サポートにお問い合わせください。
[事前共有キー] セクションで、現在アクティブなキーに表示されている開始時間がオンプレミス ルーターの開始時間と一致していることを確認します。次のいずれかを行います。
値が一致しない場合は、ルーターのマニュアルを参照してルーターの値を更新してから、MACsec セッションが確立できるかどうかを確認します。
値が一致しても MACsec セッションが引き続きリンク上で停止している場合は、次のステップに進みます。
gcloud
gcloud compute interconnects get-diagnostics
コマンドを実行して、アクティブなキーの CKN 値を表示します。複数のキーが構成されている場合は、将来ではない最新の開始時刻を持つキーがアクティブなキーとして選択されます。Google のエッジルーターでは、古いキーの使用を試みる新しい MACsec セッションが拒否されます。
MACsec 構成を取得してから、以前に表示された CKN 値に対応する CAK 値とキーの開始時刻をメモします。
gcloud compute interconnects macsec get-config INTERCONNECT_CONNECTION_NAME
INTERCONNECT_CONNECTION_NAME
は、Cloud Interconnect 接続の名前に置き換えます。出力は次のようになります。
preSharedKeys: - name: key1 ckn: 0101010189abcdef...0123456789abcdef cak: 0123456789abcdef...0123456789abcdef startTime: 2023-07-01T12:12:12Z - name: key2 ckn: 0202020289abcdef...0123456789abcdef cak: 0123456789abcdef...0123456789abcdef startTime: 2023-08-01T12:12:12Z
オンプレミス ルーターのアクティブな CKN、CAK、開始時間が Cloud Interconnect の MACsec に表示される値と一致することを確認します。次のいずれかを行います。
値が一致しない場合は、ルーターのマニュアルを参照してルーターの値を更新してから、MACsec セッションが確立できるかどうかを確認します。
値が一致しても MACsec セッションが引き続きリンク上で停止している場合は、次のステップに進みます。
指標を表示して、パケットが Cloud Interconnect 接続の上り(内向き)と下り(外向き)のどちらでドロップしているかを確認します。指標の表示については、接続をモニタリングするをご覧ください。
次のステップを判断するには、次の操作を行います。
network/interconnect/link/macsec/received_errors_count
が増分している場合、エラーのため、パケットは上り(内向き)Cloud Interconnect 接続でドロップします。これは、オンプレミス ルーターと Google のエッジルーターの間にプロトコルの不一致があることを示します。オンプレミス ルーターのログを確認して、トラブルシューティングを行います。次のいずれかのカウンタが増分している場合、これ以上のアシスタンスは Google Cloud サポートまでお問い合わせください。
network/interconnect/link/macsec/received_dropped_packets_count
network/interconnect/link/macsec/send_errors_count
network/interconnect/link/macsec/send_dropped_packets_count
次のカウンタのいずれもが増分していない場合、パケットがオンプレミス ルーターの下り(外向き)でドロップしていることを示します。オンプレミス ルーターのログを確認して、トラブルシューティングを行います。
network/interconnect/receive_errors_count
network/interconnect/received_unicast_packets_count
network/interconnect/link/macsec/received_control_packets_count
network/interconnect/link/macsec/received_data_packets_count
network/interconnect/link/macsec/received_errors_count
network/interconnect/link/macsec/received_dropped_packets_count
MACsec は動作中で、パケットロスが発生している
Cloud Interconnect で MACsec が正常に有効になり、MACsec は動作していますが、パケットロスが発生しています。
指標を表示して、パケットが Cloud Interconnect 接続の上り(内向き)と下り(外向き)のどちらでドロップしているかを確認します。指標の表示については、接続をモニタリングするをご覧ください。Cloud Interconnect の接続にパケットエラーや損失が表示されない場合は、MACsec ルーターの確認に進みます。
network/interconnect/link/macsec/received_errors_count
が増分している場合、エラーのため、パケットは上り(内向き)Cloud Interconnect 接続でドロップします。これは、オンプレミス ルーターと Google のエッジルーターの間にプロトコルの不一致があることを示します。オンプレミス ルーターのログを確認して、トラブルシューティングを行います。次のいずれかのカウンタが増分している場合、これ以上のアシスタンスは Google Cloud サポートまでお問い合わせください。
network/interconnect/link/macsec/received_dropped_packets_count
network/interconnect/link/macsec/send_errors_count
network/interconnect/link/macsec/send_dropped_packets_count
次のカウンタのいずれもが増分していない場合、パケットがオンプレミス ルーターの下り(外向き)でドロップしていることを示します。オンプレミス ルーターのログを確認して、トラブルシューティングを行います。
network/interconnect/receive_errors_count
network/interconnect/received_unicast_packets_count
network/interconnect/link/macsec/received_control_packets_count
network/interconnect/link/macsec/received_data_packets_count
network/interconnect/link/macsec/received_errors_count
network/interconnect/link/macsec/received_dropped_packets_count
フェイルオープン動作が有効な間に MACsec の問題をトラブルシューティングする
フェイルオープン動作で Cloud Interconnect の MACsec を有効にすると、MACsec セッションが正常に確立できない場合でも Cloud Interconnect 接続がトラフィックを継続して転送します。パケットを平文として送信することを防ぐため、本番環境の Cloud Interconnect 接続ではフェイル オープン動作を使用しないことを強くおすすめします。
MACsec 接続の構成と状態を判別するには、次の操作を行います。
Cloud Interconnect 接続の状態を確認するには、次のいずれかのオプションを選択します。
コンソール
Google Cloud コンソールで、Cloud Interconnect の [物理接続] タブに移動します。
表示する Cloud Interconnect 接続を選択します。
[MACsec] タブで、[MACsec 構成] に「有効、フェイル オープン」と表示されていることを確認します。
gcloud
gcloud compute interconnects describe INTERCONNECT_CONNECTION_NAME
INTERCONNECT_CONNECTION_NAME
は、Cloud Interconnect 接続の名前に置き換えます。出力は次のようになります。
availableFeatures: - IF_MACSEC adminEnabled: true circuitInfos: - customerDemarcId: fake-peer-demarc-0 googleCircuitId: LOOP-0 googleDemarcId: fake-local-demarc-0 creationTimestamp: '2021-10-05T03:39:33.888-07:00' customerName: Fake Customer description: <something> googleReferenceId: '123456789' id: '12345678987654321' interconnectAttachments: - https://www.googleapis.com/compute/prod/projects/my-project1/regions/us-central1/interconnectAttachments/interconnect-123456-123456789-0 interconnectType: IT_PRIVATE kind: compute#interconnect labelFingerprint: 42WmSpB8rSM= linkType: LINK_TYPE_ETHERNET_10G_LR location: https://www.googleapis.com/compute/prod/projects/my-project1/global/interconnectLocations/cbf-zone2-65012 macsec: failOpen: true preSharedKeys: - name: key3 startTime: '2023-07-01T21:00:01.000Z' macsecEnabled: true name: INTERCONNECT_CONNECTION_NAME operationalStatus: OS_ACTIVE provisionedLinkCount: 1 requestedFeatures: - IF_MACSEC requestedLinkCount: 1 selfLink: https://www.googleapis.com/compute/prod/projects/my-project1/global/interconnects/INTERCONNECT_CONNECTION_NAME selfLinkWithId: https://www.googleapis.com/compute/prod/projects/my-project1/global/interconnects/INTERCONNECT_CONNECTION_NAME/12345678987654321 state: ACTIVE
この例では、
macsec.failopen
はtrue
、macsecEnabled
はtrue
を表示しています。Cloud Interconnect 接続のポートのステータス、MACsec の動作状態、アクティブなキー名を確認するには、次のいずれかのオプションを選択します。
コンソール
Google Cloud コンソールで、Cloud Interconnect の [物理接続] タブに移動します。
表示する Cloud Interconnect 接続を選択します。
[リンク回路の情報] で、すべてのリンクの [リンク状態] に
(アクティブ)が表示されていることを確認します。[MACsec キー名] にすべてのリンクのキー名が表示され、各キー名に
(このリンクの MACsec が稼働中です)または (このリンクの MACsec がダウンしています)が表示されていることを確認します。
gcloud
gcloud compute interconnects get-diagnostics INTERCONNECT_CONNECTION_NAME \ --project=PROJECT_NAME
PROJECT_NAME
は、Google Cloud プロジェクトの名前で置き換えます。出力は次のようになります。
bundleAggregationType: BUNDLE_AGGREGATION_TYPE_LACP bundleOperationalStatus: BUNDLE_OPERATIONAL_STATUS_UP links: - circuitId: LOOP-0 googleDemarc: fake-local-demarc-0 lacpStatus: googleSystemId: '00:11:22:33:44:55' neighborSystemId: '55:44:33:22:11:00' state: ACTIVE macsec: ckn: 0101010189abcdef...0123456789abcdef operational: false operationalStatus: LINK_OPERATIONAL_STATUS_UP receivingOpticalPower: state: OK value: -2.49 transmittingOpticalPower: state: OK value: -0.88 macAddress: 00:11:22:33:44:55
この例では、次のようになります。
bundleOperationalStatus: BUNDLE_OPERATIONAL_STATUS_UP
は、バンドルが動作していることを示します。links.lacpStatus.state: ACTIVE
は、LACP メンバーリンクが稼働していることを示します。links.macsec.operational: false
は、MACsec が停止していることを示します。
この場合、フェイル オープン動作が有効になっているため、LACP 制御パケットはドロップされません。
links.macsec.ckn
に表示される値がない場合は、Google Cloud サポートにお問い合わせください。gcloud compute interconnects get-diagnostics
コマンドは、アクティブなキーの CKN 値を表示します。複数のキーを構成している場合は、最新の開始時刻を指定したキーがアクティブなキーとして選択されます。Google のエッジルーターでは、古いキーの使用を試みる新しい MACsec セッションが拒否されます。MACsec 構成を取得し、以前に表示された CKN 値に対応する CAK 値とキーの開始時間をメモするには、次のいずれかのオプションを選択します。
コンソール
[MACsec] タブで [事前共有キー] セクションに移動し、現在アクティブなキーの横にある [表示] をクリックします。キーの CAK 値と CKN 値が表示されない場合は、Google Cloud サポートにお問い合わせください。
[事前共有キー] セクションで、現在アクティブなキーに表示されている開始時間がオンプレミス ルーターの開始時間と一致していることを確認します。
gcloud
次のコマンドを実行します。
gcloud compute interconnects macsec get-config INTERCONNECT_CONNECTION_NAME
出力は次のようになります。
preSharedKeys: - name: key1 ckn: 0101010189abcdef...0123456789abcdef cak: 0123456789abcdef...0123456789abcdef startTime: 2023-07-01T12:12:12Z - name: key2 ckn: 0202020289abcdef...0123456789abcdef cak: 0123456789abcdef...0123456789abcdef startTime: 2023-08-01T12:12:12Z
オンプレミス ルーターのアクティブな CKN、CAK、開始時間が Cloud Interconnect の MACsec に表示される値と一致することを確認します。
次のいずれかを行います。
値が一致しない場合は、ルーターのマニュアルを参照してルーターの値を更新してから、MACsec が確立できるかどうかを確認します。
値が一致しても MACsec セッションが引き続きリンク上で停止している場合は、次のステップに進みます。
Cloud Interconnect 接続のパケット カウンタをモニタリングする指標を表示します。指標の表示については、接続をモニタリングするをご覧ください。
MACsec フェイル オープン動作が有効になっている場合、次のカウンタが増分します。
network/interconnect/sent_unicast_packets_count
network/interconnect/received_unicast_packets_count
MACsec フェイル オープン動作が有効になっている場合、次のカウンタは増分しません。
network/interconnect/link/macsec/received_control_packets_count
network/interconnect/link/macsec/received_data_packets_count
network/interconnect/link/macsec/sent_control_packets_count
network/interconnect/link/macsec/sent_data_packets_count
次のステップを判断するには、次の操作を行います。
network/interconnect/link/macsec/received_errors_count
が増分している場合、エラーのため、パケットは上り(内向き)Cloud Interconnect 接続でドロップします。これは、オンプレミス ルーターと Google のエッジルーターの間にプロトコルの不一致があることを示します。オンプレミス ルーターのログを確認して、トラブルシューティングを行います。次のいずれかのカウンタが増分している場合、これ以上のアシスタンスは Google Cloud サポートまでお問い合わせください。
network/interconnect/link/macsec/received_dropped_packets_count
network/interconnect/link/macsec/send_errors_count
network/interconnect/link/macsec/send_dropped_packets_count
次のカウンタのいずれもが増分していない場合、パケットがオンプレミス ルーターの下り(外向き)でドロップしていることを示します。オンプレミス ルーターのログを確認して、トラブルシューティングを行います。
network/interconnect/receive_errors_count
network/interconnect/received_unicast_packets_count
network/interconnect/link/macsec/received_errors_count
network/interconnect/link/macsec/received_dropped_packets_count