네트워크 트래픽 (Network Traffic)
Datadog Agent가 사용하는 네트워크 트래픽, 목적지 도메인, 포트, IP 범위에 대해 알려드릴게요. 방화벽을 구성하거나 통합 목록을 만들 때 이 페이지가 기준이 돼요.
출처: 문서
본문
개요 (Overview)
트래픽은 항상 Agent에서 Datadog으로 시작돼요. Datadog에서 Agent로 다시 시작되는 세션은 없어요.
모든 Agent 트래픽은 SSL로 전송돼요. 목적지는 Datadog 서비스와 사이트에 따라 달라져요. Datadog 사이트에 따른 목적지를 보려면 오른쪽의 DATADOG SITE 선택기를 클릭하세요.
설치 (Installation)
Agent 설치를 허용하려면 다음 도메인을 포함 목록에 추가하세요:
install.datadoghq.comyum.datadoghq.comkeys.datadoghq.comapt.datadoghq.comwindows-agent.datadoghq.com
목적지 (Destinations)
7.67.0부터 Agent는 DNS 쿼리 수를 줄이기 위해 Datadog 사이트를 정규화된 도메인 이름(FQDN)으로 변환해요(도메인 끝에 점 추가). 예를 들어 APM 페이로드를
trace.agent.datadoghq.com.으로 보내요. 이 동작은 7.72.0 이상에서 구성의convert_dd_site_fqdn.enabled를false로 설정하거나DD_CONVERT_DD_SITE_FQDN_ENABLED=false환경 변수로 비활성화할 수 있어요.
- APM:
trace.agent.<YOUR_DATADOG_SITE>instrumentation-telemetry-intake.<YOUR_DATADOG_SITE> - LLM Observabilty:
llmobs-intake.<YOUR_DATADOG_SITE> - Container Images:
contimage-intake.<YOUR_DATADOG_SITE> - Live Containers, Live Process, Cloud Network Monitoring, Universal Service Monitoring:
process.<YOUR_DATADOG_SITE> - Network Device Monitoring:
ndm-intake.<YOUR_DATADOG_SITE>snmp-traps-intake.<YOUR_DATADOG_SITE>ndmflow-intake.<YOUR_DATADOG_SITE> - Network Path:
netpath-intake.<YOUR_DATADOG_SITE>. Agent v7.75+에서 Network Path는 소스 호스트의 공용 IP를 해석하기 위해 외부 서비스에 HTTPS로 접속해요. 이는 선택 사항이며 Network Path는 이것 없이도 동작하지만, 네트워크가 아웃바운드 트래픽을 제한하고 소스 공용 IP 해석을 원한다면 허용 목록에 다음을 추가하세요:icanhazip.com,ipinfo.io,checkip.amazonaws.com,api.ipify.org,whatismyip.akamai.com. 자세한 내용은 Network Path 설정을 참고하세요. - Orchestrator:
orchestrator.<YOUR_DATADOG_SITE>contlcycle-intake.<YOUR_DATADOG_SITE> - Profiling:
intake.profile.<YOUR_DATADOG_SITE> - Real User Monitoring (RUM): <YOUR_BROWSER_SDK_ENDPOINT_DOMAIN>
- Cloud Security Vulnerabilities:
sbom-intake.<YOUR_DATADOG_SITE> - Synthetic Monitoring Private Locations: Synthetics Worker v1.5.0 이상:
intake.synthetics.<YOUR_DATADOG_SITE>가 구성해야 할 유일한 엔드포인트예요. Synthetics Worker > v0.1.6의 API 테스트 결과:intake.synthetics.<YOUR_DATADOG_SITE>. Synthetics Worker > v0.2.0의 Browser 테스트 결과:intake-v2.synthetics.<YOUR_DATADOG_SITE>. Synthetics Worker < v0.1.5의 API 테스트 결과:api.<YOUR_DATADOG_SITE> - Remote Configuration:
config.<YOUR_DATADOG_SITE>
app.datadoghq.com, app.datadoghq.eu, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, uk1.datadoghq.com Datadog 사이트를 사용하는 사용자를 위한 중요 참고사항
- Database Monitoring:
dbm-metrics-intake.<YOUR_DATADOG_SITE>dbquery-intake.<YOUR_DATADOG_SITE>- End User Device Monitoring:
softinv-intake.<YOUR_DATADOG_SITE>eudm-intake.<YOUR_DATADOG_SITE>
참고(경고): TCP 로그 수집은 지원되지 않아요. TCP를 사용할 때 Datadog은 전달 또는 신뢰성 보장을 제공하지 않으며 로그 데이터가 공지 없이 손실될 수 있어요. 안정적인 수집을 위해서는 HTTP intake 엔드포인트, 공식 Datadog Agent 또는 forwarder 통합을 대신 사용하세요. 자세한 내용은 로그 수집을 참고하세요.
- Logs & HIPAA 로그: (Deprecated) TCP: <YOUR_TCP_ENDPOINT> HTTP: <YOUR_AGENT_HTTP_ENDPOINT> 기타: logs 엔드포인트 참고
- HIPAA 레거시 로그 (Deprecated, TCP 지원 안 함): <YOUR_HIPAA_LOGS_ENDPOINTS>
- Metrics, Service Checks, Events 및 기타 Agent 메타데이터:
<VERSION>-app.agent.<YOUR_DATADOG_SITE>. 예를 들어 Agent v7.31.0은7-31-0-app.agent.<YOUR_DATADOG_SITE>로 보고해요. 방화벽의 포함 목록에*.agent.<YOUR_DATADOG_SITE>를 추가해야 해요. v6.1.0부터 Agent는 비핵심 기능을 제공하기 위해 Datadog의 API도 쿼리해요(예: 구성된 API 키의 유효성 표시): Agent v7.18.0 또는 6.18.0 이상:api.<YOUR_DATADOG_SITE>. Agent < v7.18.0 또는 6.18.0:app.<YOUR_DATADOG_SITE> - Agent flare:
<VERSION>-flare.agent.<YOUR_DATADOG_SITE>. 예를 들어 Agent v7.31.0은 flare 데이터를7-31-0-flare.agent.<YOUR_DATADOG_SITE>로 보내요. 방화벽의 포함 목록에*.agent.<YOUR_DATADOG_SITE>를 추가해야 해요.
정적 IP 주소 (Static IP addresses)
이 모든 도메인은 정적 IP 주소 집합을 가리키는 CNAME 레코드예요. 이 주소는 https://ip-ranges.<YOUR_DATADOG_SITE>에서 찾을 수 있어요.
정보는 다음 스키마를 따르는 JSON으로 구성돼요:
{
"version": 1, // <-- 이 정보가 변경될 때마다 증가
"modified": "YYYY-MM-DD-HH-MM-SS", // <-- 마지막 수정 타임스탬프
"agents": { // <-- Agent가 메트릭을 Datadog에 제출하는 데 사용하는 IP
"prefixes_ipv4": [ // <-- IPv4 CIDR 블록 목록
"a.b.c.d/x",
...
],
"prefixes_ipv6": [ // <-- IPv6 CIDR 블록 목록
...
]
},
"api": {...}, // <-- Agent가 비핵심 기능(API에서 정보 쿼리)에 사용하는 IP
"apm": {...}, // <-- Agent가 APM 데이터를 Datadog에 제출하는 데 사용하는 IP
"logs": {...}, // <-- Agent가 로그를 Datadog에 제출하는 데 사용하는 IP
"process": {...}, // <-- Agent가 프로세스 데이터를 Datadog에 제출하는 데 사용하는 IP
"orchestrator": {...}, // <-- Agent가 컨테이너 데이터를 Datadog에 제출하는 데 사용하는 IP
"remote-configuration": {...}, // <-- Agent가 동적 구성을 가져오는 데 사용하는 IP
"synthetics": {...}, // <-- Synthetic 워커가 사용하는 소스 IP (Agent가 사용하지 않음)
"synthetics-private-locations": {...}, // <-- Synthetics Private Locations 워커가 데이터를 Datadog에 제출하는 데 사용하는 IP (Agent가 사용하지 않음)
"webhooks": {...} // <-- Datadog이 HTTP로 3rd party 인프라에 연결할 때 사용하는 소스 IP (Agent가 사용하지 않음)
}
각 섹션에는 전용 엔드포인트가 있어요. 예:
https://ip-ranges.<YOUR_DATADOG_SITE>/logs.json— TCP로 로그 데이터를 수신하는 데 사용되는 IP용https://ip-ranges.<YOUR_DATADOG_SITE>/apm.json— APM 데이터를 수신하는 데 사용되는 IP용
포함 (Inclusion)
모든 ip-ranges를 포함 목록에 추가하세요. 한 시점에는 그 일부만 활성 상태지만, 정기적인 네트워크 운영과 유지보수로 인해 전체 집합 내에서 시간에 따라 변동이 있어요.
열린 포트 (Open ports)
모든 아웃바운드 트래픽은 TCP 또는 UDP를 통해 SSL로 전송돼요. 방화벽 규칙이나 유사한 네트워크 제한을 사용해 Agent에 애플리케이션이나 신뢰할 수 있는 네트워크 소스만 접근할 수 있게 하세요. 신뢰할 수 없는 접근은 악의적인 행위자가 여러 침습적 행위를 수행하게 할 수 있어요. 여기에는 Datadog 계정에 트레이스와 메트릭을 쓰거나 구성과 서비스에 대한 정보를 얻는 행위가 포함되지만 이에 국한되지 않아요.
모든 Agent 기능을 활용하려면 다음 포트를 여세요:
아웃바운드 (Outbound)
app.datadoghq.com, app.datadoghq.eu Datadog 사이트를 사용하는 사용자를 위한 중요 참고사항
| 제품/기능 | 포트 | 프로토콜 | 설명 |
|---|---|---|---|
| Agent, APM, Containers, Live Processes, Metrics, Cloud Network Monitoring, Universal Service Monitoring | 443 | TCP | 대부분의 Agent 데이터는 포트 443을 사용해요. |
| Custom Agent Autoscaling | 8443 | TCP | |
| 로그 수집 | {% placeholder "user-web-integrations-port" /%} | (Deprecated) TCP | TCP를 통한 로깅.참고: TCP 로그 수집은 지원되지 않아요. TCP를 사용할 때 Datadog은 전달 또는 신뢰성 보장을 제공하지 않으며 로그 데이터가 공지 없이 손실될 수 있어요. 안정적인 수집은 HTTP intake 엔드포인트, 공식 Datadog Agent, forwarder 통합을 대신 사용하세요. 다른 연결 유형은 logs 엔드포인트 참고. |
| NTP | 123 | UDP | Network Time Protocol (NTP). 기본 NTP 대상 참고. NTP 문제 해결은 NTP 문제 참고. |
| 연결 테스트 | 8042 | TCP | Remote configuration 연결 테스트.참고: 프로토콜 개발을 위한 고객 데이터가 없는 텔레메트리 엔드포인트이며 Remote Config가 활성화된 경우에만 사용됨. |
us3.datadoghq.com, us5.datadoghq.com, app.ddog-gov.com, us2.ddog-gov.com, ap1.datadoghq.com, ap2.datadoghq.com, uk1.datadoghq.com Datadog 사이트를 사용하는 사용자를 위한 중요 참고사항
| 제품/기능 | 포트 | 프로토콜 | 설명 |
|---|---|---|---|
| Agent, APM, Containers, Live Processes, Metrics, Cloud Network Monitoring, Universal Service Monitoring | 443 | TCP | 대부분의 Agent 데이터는 포트 443을 사용해요. |
| NTP | 123 | UDP | Network Time Protocol (NTP). 기본 NTP 대상 참고. NTP 문제 해결은 NTP 문제 참고. |
인바운드 (Inbound)
호스트 내에서만 Agent 서비스가 서로 통신하는 데 사용돼요.
| 제품/기능 | 포트 | 프로토콜 | 설명 |
|---|---|---|---|
| Agent 브라우저 GUI | 5002 | TCP | |
| APM receiver | 8126 | TCP | Tracing과 Profiler를 포함. |
| DogStatsD | 8125 | UDP | dogstatsd_non_local_traffic이 true로 설정되지 않은 경우의 DogStatsD 포트. IPv4 localhost(127.0.0.1)에서 사용 가능. |
| go_expvar 서버 (APM) | 5012 | TCP | 자세한 내용은 go_expvar 통합 문서 참고. |
| go_expvar 통합 서버 | 5000 | TCP | 자세한 내용은 go_expvar 통합 문서 참고. |
| IPC API | 5001 | TCP | IPC(Inter Process Communication)에 사용되는 포트. |
| Process Agent 디버그 | 6062 | TCP | Process Agent의 디버그 엔드포인트. |
| Process Agent 런타임 | 6162 | TCP | Process Agent의 런타임 구성 설정. |
포트 구성하기 (Configure ports)
네트워크의 기존 서비스가 기본 포트를 이미 사용 중이라 인바운드 포트를 변경해야 한다면 datadog.yaml 구성 파일을 편집하세요. 파일의 Advanced Configuration 섹션에서 대부분의 포트를 찾을 수 있어요:
datadog.yaml 파일에서:
## @param expvar_port - integer - optional - default: 5000
## @env DD_EXPVAR_PORT - integer - optional - default: 5000
## The port for the go_expvar server.
#
# expvar_port: 5000
## @param cmd_port - integer - optional - default: 5001
## @env DD_CMD_PORT - integer - optional - default: 5001
## The port on which the IPC api listens.
#
# cmd_port: 5001
## @param GUI_port - integer - optional
## @env DD_GUI_PORT - integer - optional
## The port for the browser GUI to be served.
## Setting 'GUI_port: -1' turns off the GUI completely
## Default is:
## * Windows & macOS : `5002`
## * Linux: `-1`
##
#
# GUI_port: <GUI_PORT>
APM receiver와 DogStatsD 포트는 각각 datadog.yaml 구성 파일의 Trace Collection Configuration 및 DogStatsD Configuration 섹션에 있어요:
datadog.yaml 파일에서:
## @param dogstatsd_port - integer - optional - default: 8125
## @env DD_DOGSTATSD_PORT - integer - optional - default: 8125
## Override the Agent DogStatsD port.
## Note: Make sure your client is sending to the same UDP port.
#
# dogstatsd_port: 8125
[...]
## @param receiver_port - integer - optional - default: 8126
## @env DD_APM_RECEIVER_PORT - integer - optional - default: 8126
## The port that the trace receiver should listen on.
## Set to 0 to disable the HTTP receiver.
#
# receiver_port: 8126
여기서 DogStatsD 포트나 APM receiver 포트 값을 변경하면 해당 포트에 맞게 Datadog SDK 구성도 반드시 변경해야 해요. 사용 언어의 Library Configuration 문서에서 포트 구성에 대한 정보를 참고하세요.
프록시 사용하기 (Using proxies)
프록시 설정에 대한 자세한 구성 가이드는 Agent 프록시 구성을 참고하세요.
데이터 버퍼링 (Data buffering)
네트워크를 사용할 수 없게 되면 Agent는 메트릭을 메모리에 저장해요. 메트릭 저장에 사용되는 최대 메모리는 forwarder_retry_queue_payloads_max_size 구성 설정으로 정의돼요. 이 한도에 도달하면 메트릭은 버려져요.
Agent v7.27.0 이상은 메모리 한도에 도달하면 메트릭을 디스크에 저장해요. forwarder_storage_max_size_in_bytes를 양수 값으로 설정하면 이 기능이 활성화되며, 이 값은 Agent가 메트릭을 디스크에 저장하는 데 사용할 수 있는 최대 저장 공간(바이트)을 나타내요.
메트릭은 forwarder_storage_path 설정으로 정의된 폴더에 저장돼요. 기본값은 Unix 시스템에서 /opt/datadog-agent/run/transactions_to_retry, Windows에서 C:\ProgramData\Datadog\run\transactions_to_retry예요.
저장 공간이 부족해지지 않도록 Agent는 사용된 전체 저장 공간이 80퍼센트 미만일 때만 메트릭을 디스크에 저장해요. 이 한도는 forwarder_storage_max_disk_ratio 설정으로 정의돼요.
Datadog Operator 설치 (Installing the Datadog Operator)
연결이 제한된 Kubernetes 환경에서 Datadog Operator를 설치한다면 레지스트리에 따라 TCP 포트 443에 대해 다음 엔드포인트를 허용 목록에 추가해야 해요:
registry.datadoghq.com(Datadog Container Registry)us-docker.pkg.dev/datadog-prod/public-images(registry.datadoghq.com에서 리다이렉트될 수 있음)
gcr.io/datadoghq(GCR US)eu.gcr.io/datadoghq(GCR Europe)asia.gcr.io/datadoghq(GCR Asia)datadoghq.azurecr.io(Azure)public.ecr.aws/datadog(AWS)docker.io/datadog(DockerHub)
더 알아보기 (Learn more)
도움이 되는 추가 문서, 링크, 글: