envoyproxy/envoy

upstream_bind_config does not work with UDP. (Connected to #15516)

Open

#15,590 创建于 2021年3月20日

在 GitHub 查看
 (3 评论) (0 反应) (0 负责人)C++ (5,373 fork)batch import
area/udphelp wanted

仓库指标

Star
 (27,997 star)
PR 合并指标
 (平均合并 8天) (30 天内合并 378 个 PR)

描述

This issue was opened because @mattklein123 asked to do it in #15516 Using upstream_bind_config field with UDP doesn't seem to work.

Repro steps + Config: Tested the following config with a socat UDP sender sending datagrams to 127.0.0.1:1234, and socat receiver listening at 127.0.0.1:1235 My full static config is: upstream_bind_config_test.txt

Expectation: The expectation was to bind the outgoing connection's source to 127.0.0.2:9999, but it did not happen. socat recv accepted connection from a randomly chosen port at 127.0.0.1 by envoy. 2021/03/17 14:10:30 socat[28284] N accepting UDP connection from AF=2 127.0.0.1:51755

Note: The same upstream_bind_config configuration works well with HTTP, as you would expect.

@mattklein123 as you mentioned that

The problem with bind config with a single port is it breaks session tracking

May I ask for a deeper explanation on this topic?

贡献者指南