このページでは、Cloud Interconnect の MACsec をトラブルシューティングする方法について説明します。
新しいキーを作成しようとすると Cloud Interconnect でエラーが表示される
開始時刻のない MACsec キーが存在しているときに、新しいキーを作成しようとすると、Cloud Interconnect にエラーが表示されます。このエラーを解決するには、既存のキー開始時間を更新します。
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 接続の名前に置き換えます。出力は次のようになります。
ckn
を探します。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 は操作上動作していますが、パケットロスが発生しています。
MACsec 接続が動作しているにもかかわらず、Cloud Interconnect の Link Aggregation Control Protocol(LACP)ステータスが Detached
の場合は、オンプレミス ルーターで Secure Channel Identifier(SCI)が有効になっていることを確認します。詳細については、オンプレミス ルーターの構成をご覧ください。
指標を表示して、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 接続の名前に置き換えます。出力は次のようになります。
macsec failOpen
がtrue
に設定され、macsecEnabled
がtrue
に設定されていることを確認します。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 プロジェクトの名前で置き換えます。出力は次のようになります。
bundleOperationalStatus
がBUNDLE_OPERATIONAL_STATUS_UP
に設定され、state
がACTIVE
に設定され、macsec
ckn
operational
がfalse
に設定されていることを確認します。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
ckn
を探します。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