기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS Site-to-Site VPN 로그
AWS Site-to-Site VPN 로그는 Site-to-Site VPN 배포에 대한 심층적인 가시성을 제공합니다. 이 기능을 사용하면 IP 보안(IPsec) 터널 설정, 인터넷 키 교환(IKE) 협상, 데드 피어 감지(DPD) 프로토콜 메시지, Border Gateway 프로토콜(BGP) 상태 및 라우팅 업데이트에 대한 세부 정보를 제공하는 Site-to-Site VPN 연결 로그에 액세스할 수 있습니다.
Site-to-Site VPN 로그는 Amazon CloudWatch Logs에 게시할 수 있습니다. 이 기능은 고객이 모든 Site-to-Site VPN 연결에 대한 세부 로그를 액세스하고 분석할 수 있는 일관된 단일 방법을 제공합니다.
주제
Site-to-Site VPN 로그의 이점
-
간소화된 VPN 문제 해결: Site-to-Site VPN 로그를 사용하면 AWS 와 고객 게이트웨이 디바이스 간의 구성 불일치를 정확히 파악하고 초기 VPN 연결 문제를 해결할 수 있습니다. 잘못 구성된 설정(예: 제한 시간이 잘못 조정됨)으로 인해 VPN 연결이 시간이 지남에 따라 간헐적으로 플랩되거나, 기본 전송 네트워크(예: 인터넷 날씨)에 문제가 있거나, 라우팅 변경 또는 경로 오류로 인해 VPN을 통한 연결이 중단될 수 있습니다. 이 기능을 사용하면 간헐적인 연결 실패의 원인을 정확하게 진단하고 안정적인 작동을 위해 저수준 터널 구성을 미세 조정할 수 있습니다.
-
중앙 집중식 AWS Site-to-Site VPN 가시성: Site-to-Site VPN 로그는 모든 Site-to-Site VPN 연결 유형에서 터널 활동 및 BGP 라우팅 로그를 제공할 수 있습니다. 이 기능은 고객이 모든 Site-to-Site VPN 연결에 대한 세부 로그를 액세스하고 분석할 수 있는 일관된 단일 방법을 제공합니다.
-
보안 및 규정 준수: Site-to-Site VPN 로그를 Amazon CloudWatch Logs로 전송하여 시간 경과에 따른 VPN 연결 상태 및 활동을 소급적으로 분석할 수 있습니다. 이렇게 하면 규정 준수 및 규제 요구 사항을 충족할 수 있습니다.
Amazon CloudWatch Logs 리소스 정책 크기 제한
CloudWatch Logs 리소스 정책은 5,120자로 제한됩니다. CloudWatch Logs는 정책이 이 크기 제한에 도달하는 것을 감지하면 /aws/vendedlogs/로 시작하는 로그 그룹을 자동으로 활성화합니다. 로깅을 활성화하는 경우 Site-to-Site VPN이 지정된 로그 그룹으로 CloudWatch Logs 리소스 정책을 업데이트해야 합니다. CloudWatch Logs 리소스 정책 크기 제한에 도달하는 것을 방지하려면 로그 그룹 이름에 접두사 /aws/vendedlogs/를 추가합니다.
Site-to-Site VPN 로그의 내용
Site-to-Site VPN 터널 활동 로그에는 다음 정보가 포함됩니다. 로그 스트림 파일 이름은 VpnConnectionID 및 TunnelOutsideIPAddress를 사용합니다.
| 필드 | 설명 |
|---|---|
|
VpnLogCreationTimestamp( |
epoch 시간 형식의 로그 생성 타임스탬프입니다. |
|
VpnLogCreationTimestampReadable( |
사람이 읽을 수 있는 시간 형식의 로그 생성 타임스탬프입니다. |
|
TunnelDPDEnabled( |
DPD(Dead Peer Detection) 프로토콜 사용 상태(True/False)입니다. |
|
TunnelCGWNATTDetectionStatus( |
고객 게이트웨이 디바이스에서 NAT-T가 감지되었는지 여부입니다(True/False). |
|
TunnelIKEPhase1State( |
IKE 1단계 프로토콜 상태(설정됨 | 키 재지정 | 협상 | 중단)입니다. |
TunnelIKEPhase2State(ike_phase2_state) |
IKE 2단계 프로토콜 상태(설정됨 | 키 재지정 | 협상 | 중단)입니다. |
VpnLogDetail(details) |
IPSec, IKE 및 DPD 프로토콜에 대한 자세한 메시지입니다. |
Site-to-Site VPN 터널 BGP 로그에는 다음 정보가 포함됩니다. 로그 스트림 파일 이름은 VpnConnectionID 및 TunnelOutsideIPAddress를 사용합니다.
| 필드 | 설명 |
|---|---|
|
resource_id |
로그가 연결된 터널 및 VPN 연결을 식별하기 위한 고유 ID입니다. |
|
event_timestamp |
epoch 시간 형식의 로그 생성 타임스탬프입니다. |
|
timestamp |
사람이 읽을 수 있는 시간 형식의 로그 생성 타임스탬프입니다. |
|
type |
BGP 로그 이벤트 유형(BGPStatus | RouteStatus). |
|
status |
특정 유형의 로그 이벤트에 대한 상태 업데이트(BGPStatus: UP | DOWN)(RouteStatus: ADVERTISED {route was advertised by the peer} | UPDATED: {기존 경로가 피어에 의해 업데이트됨} | WITHDRAWN: {route was withdraw by peer}) . |
| message | 로그 짝수 및 상태에 대한 추가 세부 정보를 제공합니다. 이 필드는 BGPStatus가 RouteStatus 메시지에서 교환된 라우팅 속성이 다운된 이유를 이해하는 데 도움이 됩니다. |
IKEv1 오류 메시지
| 메시지 | 설명 |
|---|---|
|
Peer is not responsive - Declaring peer dead(피어가 응답하지 않음 - 피어 작동 중지 선언) |
피어가 DPD 메시지에 응답하지 않아 DPD 시간 초과 조치가 적용되었습니다. |
|
AWS 잘못된 사전 공유 키로 인해 터널 페이로드 복호화에 실패했습니다. |
두 IKE 피어 모두에서 동일한 사전 공유 키를 구성해야 합니다. |
|
에서 제안 일치를 찾을 수 없음 AWS |
1단계에 대해 제안된 속성(암호화, 해싱 및 DH 그룹)이 AWS VPN 엔드포인트에서 지원되지 않습니다(예: |
|
No Proposal Match Found(일치하는 제안 항목을 찾을 수 없음). Notifying with "No proposal chosen"('선택한 제안 항목 없음'으로 알림) |
IKE 피어의 2단계에 대해 올바른 제안 항목/정책을 구성해야 함을 알리는 No Proposal Chosen(선택한 제안 항목 없음) 오류 메시지가 피어 간에 교환됩니다. |
|
AWS SPI가 xxxx인 2단계 SA에 대한 터널 수신 DELETE |
CGW에서 2단계에 대한 Delete_SA 메시지를 보냈습니다. |
|
AWS 터널이 CGW에서 IKE_SA용 DELETE 수신 |
CGW에서 1단계에 대한 Delete_SA 메시지를 보냈습니다. |
IKEv2 오류 메시지
| 메시지 | 설명 |
|---|---|
|
AWS {retry_count} 재전송 후 터널 DPD 시간 초과 |
피어가 DPD 메시지에 응답하지 않아 DPD 시간 초과 조치가 적용되었습니다. |
|
AWS 터널이 CGW에서 IKE_SA용 DELETE 수신 |
피어에서 Parent/IKE_SA에 대한 Delete_SA 메시지를 보냈습니다. |
AWS SPI가 xxxx인 2단계 SA에 대한 터널 수신 DELETE |
피어에서 CHILD_SA에 대한 Delete_SA 메시지를 보냈습니다. |
|
AWS 터널이 CHILD_DELETE로 (CHILD_REKEY) 충돌을 감지했습니다. |
CGW에서 키가 다시 입력되는 활성 SA에 대해 Delete_SA 메시지를 보냈습니다. |
|
AWS 터널(CHILD_SA) 중복 SA가 감지된 충돌로 인해 삭제되고 있습니다. |
충돌로 인해 중복 SA가 생성되면 피어들은 RFC에 따라 임시 값을 일치시킨 후 중복 SA를 닫습니다. |
|
AWS 1단계를 유지하면서 터널 2단계를 설정할 수 없음 |
피어가 협상 오류(예: 잘못된 제안 항목)로 인해 CHILD_SA를 설정하지 못했습니다. |
AWS: Traffic Selector: TS_UNACCEPTABLE: received from responder(트래픽 선택기: TS_UNAPLABLE: 응답자로부터 수신됨) |
피어가 잘못된 트래픽 선택기/암호화 도메인을 제안했습니다. 피어들을 동일하고 올바른 CIDR로 구성해야 합니다. |
AWS 터널이 응답으로 AUTHENTICATION_FAILED를 전송하고 있습니다. |
피어가 IKE_AUTH 메시지 내용을 확인하여 피어를 인증할 수 없습니다. |
AWS 터널이 cgw: xxxx와 사전 공유 키 불일치를 감지했습니다. |
두 IKE 피어 모두에서 동일한 사전 공유 키를 구성해야 합니다. |
AWS 터널 제한 시간: cgw: xxxx를 사용하여 설정되지 않은 1단계 IKE_SA 삭제 |
협상에서 반개방된 IKE_SA를 피어로 삭제하는 작업이 진행되지 않았습니다. |
No Proposal Match Found(일치하는 제안 항목을 찾을 수 없음). Notifying with "No proposal chosen"('선택한 제안 항목 없음'으로 알림) |
IKE 피어에 대해 올바른 제안 항목을 구성해야 함을 알리는 No Proposal Chosen(선택한 제안 항목 없음) 오류 메시지가 피어 간에 교환됩니다. |
에서 제안 일치를 찾을 수 없음 AWS |
1단계 또는 2단계(암호화, 해싱 및 DH 그룹)에 대해 제안된 속성은 AWS VPN 엔드포인트에서 지원되지 않습니다. 예: |
IKEv2 협상 메시지
| 메시지 | 설명 |
|---|---|
|
AWS CREATE_CHILD_SA에 대한 터널 처리 요청(id=xxx) |
AWS 가 CGW로부터 CREATE_CHILD_SA 요청을 수신했습니다. |
|
AWS 터널이 CREATE_CHILD_SA에 대한 응답(id=xxx)을 보내고 있음 |
AWS 가 CREATE_CHILD_SA 응답을 CGW로 보내고 있습니다. |
AWS 터널이 CREATE_CHILD_SA에 대한 요청(id=xxx)을 보내고 있음 |
AWS 가 CREATE_CHILD_SA 요청을 CGW로 보내고 있습니다. |
|
AWS CREATE_CHILD_SA에 대한 터널 처리 응답(id=xxx) |
AWS 가 CREATE_CHILD_SA 응답 양식 CGW를 수신했습니다. |
BGP 상태 메시지
BGP 상태 메시지에는 지정된 BGP 세션의 BGP 이웃에 대한 BGP 세션 상태 전환, 접두사 제한 경고, 제한 위반, BGP 세션 알림, BGP OPEN 메시지 및 속성 업데이트와 관련된 정보가 포함됩니다.
| 메시지 | BGP 상태 | 설명 |
|---|---|---|
|
AWS 측 피어 BGP 세션 상태가 유휴에서 이웃과 연결 {ip: xxx}로 변경되었습니다. |
다운 |
AWS 측의 BGP 연결 상태가 연결로 업데이트되었습니다. |
|
AWS 측 피어 BGP 세션 상태가 이웃이 {ip: xxx}인 Connect에서 OpenSent로 변경되었습니다. |
다운 |
AWS 측의 BGP 연결 상태가 OpenSent로 업데이트되었습니다. |
|
AWS 측 피어 BGP 세션 상태가 이웃이 {ip: xxx}인 OpenSent에서 OpenConfirm으로 변경되었습니다. |
다운 |
AWS 측의 BGP 연결 상태가 OpenConfirm으로 업데이트되었습니다. |
|
AWS 측 피어 BGP 세션 상태가 OpenConfirm에서 이웃 {ip: xxx}으로 설정됨으로 변경되었습니다. |
UP |
AWS 측의 BGP 연결 상태가 설정됨으로 업데이트되었습니다. |
|
AWS 측 피어 BGP 세션 상태가 설정됨에서 이웃이 {ip: xxx}인 유휴로 변경되었습니다. |
다운 |
AWS 측의 BGP 연결 상태가 유휴로 업데이트되었습니다. |
|
AWS 측 피어 BGP 세션 상태가 이웃이 {ip: xxx}인 연결에서 활성으로 변경되었습니다. |
다운 |
AWS 측의 BGP 연결 상태가 연결에서 활성으로 전환되었습니다. BGP 세션이 연결 상태로 멈춘 경우 CGW에서 TCP 포트 179 가용성을 확인합니다. |
|
AWS 측 피어가 최대 접두사 제한 경고를 보고함 - 이웃 {ip: xxx}에서 {prefixes (count): xxx} 접두사를 수신함 {limit (numeric): xxx} |
UP |
AWS 측은 CGW에서 수신한 접두사 수가 허용 한도에 가까워지면 주기적으로 로그 메시지를 생성합니다. |
|
AWS 측 피어가 최대 접두사 제한을 초과했음을 감지함 - 이웃 {ip: xxx}에서 {prefixes (count): xxx} 접두사를 수신함, 제한은 {limit (numeric): xxx} |
다운 |
AWS 측은 CGW에서 수신한 접두사 수가 허용 한도를 초과하면 로그 메시지를 생성합니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에 6/1(Cease/Maximum Number of Prefixes Reached) 알림을 보냈습니다. |
다운 |
AWS 측은 접두사 제한 위반으로 인해 BGP 세션이 종료되었음을 나타내는 알림을 CGW BGP 피어에 보냈습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}로부터 6/1(Cease/Maximum Number of Prefixes Reached) 알림을 수신했습니다. |
다운 |
AWS 측은 접두사 제한 위반으로 인해 BGP 세션이 종료되었음을 나타내는 알림을 CGW 피어로부터 받았습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에게 6/2(Cease/Administrative Shutdown) 알림을 보냈습니다. |
다운 |
AWS 측은 CGW BGP 피어에 BGP 세션이 종료되었음을 알리는 알림을 보냈습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}로부터 6/2(Cease/Administrative Shutdown) 알림을 수신함 |
다운 |
AWS 측은 CGW 피어로부터 BGP 세션이 종료되었음을 알리는 알림을 받았습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에 6/3(Cease/Peer Un configured) 알림을 보냈습니다. |
다운 |
AWS 측은 CGW 피어에 피어가 구성되지 않았거나 구성에서 제거되었음을 나타내는 알림을 보냈습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}로부터 6/3(Cease/Peer Un configured) 알림을 수신했습니다. |
다운 |
AWS 측은 CGW 피어로부터 피어가 구성되지 않았거나 구성에서 제거되었음을 알리는 알림을 받았습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에게 6/4(Cease/Administrative Reset) 알림을 보냈습니다. |
다운 |
AWS 측은 CGW BGP 피어에 BGP 세션이 재설정되었음을 알리는 알림을 보냈습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}로부터 6/4(Cease/Administrative Reset) 알림을 수신함 |
다운 |
AWS 측은 CGW 피어로부터 BGP 세션이 재설정되었음을 알리는 알림을 받았습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에게 6/5(Cease/Connection Rejected) 알림을 보냈습니다. |
다운 |
AWS 측은 CGW BGP 피어에 BGP 세션이 거부되었음을 알리는 알림을 보냈습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}로부터 6/5(Cease/Connection Rejected) 알림을 수신했습니다. |
다운 |
AWS 측은 CGW 피어로부터 BGP 세션이 거부되었음을 알리는 알림을 받았습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에게 6/6(Cease/Other Configuration Change) 알림을 보냈습니다. |
다운 |
AWS 측은 CGW BGP 피어에 BGP 세션 구성 변경이 발생했음을 알리는 알림을 보냈습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}로부터 6/6(Cease/Other Configuration Change) 알림을 수신함 |
다운 |
AWS 측은 CGW 피어로부터 BGP 세션 구성 변경이 발생했음을 나타내는 알림을 받았습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에 6/7(Cease/Connection Collision Resolution) 알림을 보냈습니다. |
다운 |
AWS 측은 두 피어가 동시에 연결을 설정하려고 할 때 연결 충돌을 해결하기 위해 CGW 피어에 알림을 보냈습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}로부터 6/7(Cease/Connection Collision Resolution) 알림을 수신했습니다. |
다운 |
AWS 측은 두 피어가 동시에 연결을 설정하려고 할 때 연결 충돌의 해결을 나타내는 알림을 CGW 피어로부터 수신했습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에게 홀드 타이머 만료 알림을 보냈습니다. |
다운 |
BGP 보류 타이머가 만료되었으며 AWS 측에서 CGW로 알림을 보냈습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에서 잘못된 OPEN 메시지를 감지했습니다. 원격 AS는 {asn: xxx}, 예상 {asn: xxx}입니다. |
다운 |
AWS 측에서 구성 불일치를 나타내는 CGW 피어에서 잘못된 OPEN 메시지가 수신되었음을 감지했습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}- 버전 4, AS {asn: xxx}, holdtime {holdtime (seconds): xxx}, router-id {id: xxx}}로부터 OPEN 메시지를 수신했습니다. |
다운 |
AWS 측에서 CGW 피어로 BGP 세션을 시작하는 BGP 열린 메시지를 수신했습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}- 버전 4, AS {asn: xxx}, holdtime {holdtime (seconds): xxx}, 라우터 ID {id: xxx}에 OPEN 메시지를 보냈습니다. |
다운 |
CGW 피어가 BGP 열린 메시지를 전송하여 AWS 측 BGP 피어로 BGP 세션을 시작했습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에 대한 연결( Connect를 통해)을 시작하고 있습니다. |
다운 |
AWS 측에서 CGW BGP 이웃과 연결을 시도하고 있습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}에 End-of-RIB 메시지를 보냈습니다. |
UP |
AWS 측에서 BGP 세션 설정 후 CGW로 경로 전송을 완료했습니다. |
|
AWS 측 피어가 이웃 {ip: xxx}- AS 경로: {aspath (list): xxx xxx xxx}의 속성으로 업데이트를 수신했습니다. |
UP |
AWS 측이 이웃으로부터 BGP 세션 속성 업데이트를 수신했습니다. |
라우팅 상태 메시지
BGP 상태 메시지와 달리 라우팅 상태 메시지에는 AS 경로, 로컬 기본 설정, 다중 종료 식별기(MED), 다음 홉 IP 주소 및 가중치와 같은 지정된 접두사의 BGP 속성에 대한 데이터가 포함됩니다. 경로 상태 메시지에는 ADVERTISED, UPDATED 또는 WITHDRAWN 경로에 오류가 있는 경우에만 세부 정보 필드가 포함됩니다. 그 예는 다음과 같습니다.
| 메시지 | 설명 |
|---|---|
|
DENIED 원인: as-path에는 자체 AS가 포함되어 있습니다. |
AWS 측 피어 자체 AS가 포함된 경로로 인해 AWS는 CGW의 새 접두사에 대한 BGP 업데이트 메시지를 거부했습니다. |
|
다음으로 인해 거부됨: 연결되지 않은 다음 홉 |
AWS는 연결되지 않은 다음 홉 검증 실패로 인해 CGW에서 접두사에 대한 BGP 라우팅 광고를 거부했습니다. CGW 측에서 경로에 연결할 수 있는지 확인합니다. |
터널 BGP 로그의 로그 형식 예
{ "resource_id": "vpn-1234abcd_1.2.3.4", "event_timestamp": 1762580429641, "timestamp": "2025-11-08 05:40:29.641Z", "type": "BGPStatus", "status": "UP", "message": { "details": "AWS-side peer BGP session state has changed from OpenConfirm to Established with neighbor 169.254.50.85" } } { "resource_id": "vpn-1234abcd_1.2.3.4", "event_timestamp": 1762579573243, "timestamp": "2025-11-08 05:26:13.243Z", "type": "RouteStatus", "status": "UPDATED", "message": { "prefix": "172.31.0.0/16", "asPath": "64512", "localPref": 100, "med": 100, "nextHopIp": "169.254.50.85", "weight": 32768, "details": "DENIED due to: as-path contains our own AS" } }
CloudWatch Logs에 게시하기 위한 IAM 요구 사항
로깅 기능이 제대로 작동하려면 기능을 구성하는 데 사용되는 IAM 보안 주체에 연결된 IAM 정책에 최소한 다음 권한이 포함되어야 합니다. 자세한 내용은 Amazon CloudWatch Logs 사용 설명서의 특정 AWS 서비스에서 로깅 활성화 섹션에서 확인할 수도 있습니다.