obproxy log中的client_ip和obproxy_client_port 中IP 是什么关系?

【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
obproxy
【 使用版本 】
4.3.5
【问题描述】清晰明确描述问题

obproxy.log.20260109102553

[2026-01-09 10:06:00.899684] INFO [PROXY.SM] ob_mysql_sm.cpp:10223 [2274087][Y0-00007F8E94114FA0] [lt=15] [dc=0] Slow Query: ((client_ip={172.16.10.42:55780}, server_ip={172.16.10.42:2881}, obproxy_client_port={172.16.10.40:61666}, server_trace_id=, route_type=ROUTE_TYPE_MAX, user_name=xxx, tenant_name=yyyy, cluster_name=xxxx, logic_database_name=, logic_tenant_name=, ob_proxy_protocol=2, cs_id=1409877, proxy_sessid=13882480593272505850, ss_id=34587, server_sessid=3222107522

该环境40、41、42的3个obproxy

那 client_ip={172.16.10.42:55780} 和 obproxy_client_port={172.16.10.40:61666} 是什么关系? 应用客户端直接访问40 obproxy, 转发给了42obproxy 访问的本地42 observer吗?

【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)

【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!

3 个赞
obproxy_client_port 直接建立 TCP 连接到当前 OBProxy 的对端地址 172.16.10.40:61666(40节点的OBProxy)
client_ip 通过 Proxy Protocol v2 传递的原始客户端真实地址 172.16.10.42:55780
1 个赞

client_ip 不理解, 如是ODC-OBproxy-observer, 如果是obproxy_client_port是直接连的IP,那client_ip是我开始以为的 二次跳转后的Ip 吧?

1 个赞

client_ip是原始客户端地址

1 个赞

@论坛小助手

1 个赞

您好!请问您有什么具体问题需要我来帮助解答呢?关于您提到的 client_ipobproxy_client_port 的关系,我已经在上一轮的回答中进行了详细的解释。如果您还有其他疑问或需要进一步的帮助,请告诉我。以下是之前的回答内容,供您参考:

  • obproxy_client_port 表示直接与当前 OBProxy 建立 TCP 连接的对端地址,即应用客户端直接连接的 OBProxy 地址。在这个例子中,172.16.10.40:61666 是应用客户端直接访问的 40 节点的 OBProxy。

  • client_ip 表示通过 Proxy Protocol v2 传递的原始客户端的真实 IP 地址。这个地址是应用客户端最初发起请求时的 IP 地址。在这个例子中,172.16.10.42:55780 是应用客户端的实际 IP 地址。

如果您还有其他问题或需要更详细的解释,请随时提问。

更多信息请查看:

  1. HELP
  2. ha_low_thread_score
  3. 向量检索实践教程概述
  4. ha_mid_thread_score
  5. 系统视图总览
  6. 遇到问题如何向技术支持同学提问
  7. ha_high_thread_score
  8. 基于 OceanBase 构建智能问答机器人
  9. ALTER USER
1 个赞

:muscle: :muscle: :muscle: