首页/网络/常用端口速查/4318 OpenTelemetry OTLP HTTP 端口

4318 OpenTelemetry OTLP HTTP 端口

OpenTelemetry Collector 的 OTLP/HTTP 默认接收端口:应用把 traces/metrics/logs POST 到它;gRPC 版是 4317,两者常成对暴露。

常用端口速查网络更新于 2026-10-13

OTLP HTTP 接收口

OpenTelemetry Collector 的 OTLP/HTTP 接收端口:应用把 traces、metrics、logs 通过 HTTP POST 发到 4318(默认路径 /v1/traces 等),对应的 gRPC 端口是 4317。浏览器与前端 SDK 只能走 HTTP,因此 4318 常被暴露在更靠外的位置。

基本信息

服务OpenTelemetry Collector(otlp receiver)
协议TCP/HTTP(protobuf 或 JSON)
默认端口4318(gRPC 4317)
默认路径/v1/traces、/v1/metrics、/v1/logs
暴露面仅采集网段,公网需网关鉴权

典型使用场景

  • 后端服务上报链路追踪数据
  • 前端与浏览器 SDK 上报遥测
  • 日志与指标统一经 OTLP 汇聚
  • 灰度对比两套采集配置
  • 自建 Collector 时核对两个协议是否都在监听

接收端核对

接收端核对
ss -lntp | grep -E '431[78]'
curl -i http://collector01:4318/v1/traces -H 'Content-Type: application/json' -d '{}'
# Collector 配置:
#   protocols:
#     http: {endpoint: 0.0.0.0:4318}
#     grpc: {endpoint: 0.0.0.0:4317}

排障与核对

检查项做法异常表现
监听ss -lntp | grep -E '431[78]'只有 4317:用 HTTP 上报的 SDK 全部失败
路径POST 到 /v1/traces返回 404:路径拼错或只开了另一协议
编码Content-Type 与实际编码报不支持的格式:protobuf 与 JSON 混用
边界公网可达性与鉴权配置公网可写:可注入伪造遥测数据
otlp 接收器默认同时开 4317 与 4318;前端与浏览器场景只能用 4318,这让它经常被放到更靠外的位置,因此限流与鉴权要按公网服务的标准来配。

写入口的安全边界

遥测接收端本质是一个写入接口:不加限制时攻击者可以注入大量伪造数据,既污染监控与告警,也能把存储与后端查询打满。生产上应限制来源、设置请求体大小与速率上限,并在网关层做鉴权。

上报端与接收端的协议要一致:gRPC 客户端连 HTTP 端口会一直失败,HTTP 客户端连 gRPC 端口同样不通。排查时先确认 SDK 配置里的协议与端口是否匹配。
把 4318 裸放公网收数据:任何人都能注入伪造遥测,把监控后端当成写入型存储攻击。
接收端与后端存储的容量要匹配:采集量上涨时先看接收端的队列与丢弃计数,再看存储写入速率,否则容易把后端压力误判成网络问题。
在 K8s 里接收端常以 DaemonSet 或 Deployment 暴露,注意 Service 的端口映射与探针配置:探针路径写错时 Pod 反复重启,现象很像接收端崩溃。

易错点

  • 只开 4317:浏览器与前端 SDK 完全无法上报
  • 公网暴露且不限流:伪造遥测刷爆存储,真实数据与告警一起被淹没
  • 协议与端口不匹配:SDK 报连接错误,排查方向被带到网络上
  • 缺少请求体大小上限:单条超大报文即可拖垮接收端

数据来源与参考

  • OpenTelemetry 官方文档(OTLP 默认端口 4317/4318)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌