经过 NAT 或防火墙端口转发后,如何从 TCP 连接中获得真实的客户端 IP?请说明利用 TCP Options 的技术方案及其限制。
考察说明
考察 TCP 协议头扩展、网络地址转换下的真实 IP 获取机制及安全性考量
回答思路
- 指出常规源 IP 在 NAT 后被替换,需借助代理协议或 TCP Options 携带真实 IP
- 说明使用自定义 TCP Options 携带 IP 的做法及前提:需在可信网络边界主动改写报文
- 提及标准方案如 Proxy Protocol 或 TCP option 编号分配,并讨论兼容性与安全风险
- 对比源 IP、X-Forwarded-For 与 TCP Options 方案的适用场景