QUIC server preferred address config (proto)

This extension has the qualified name envoy.quic.server_preferred_address.fixed

Note

This extension is functional but has not had substantial production burn time, use only with this caveat.

This extension is intended to be robust against untrusted downstream traffic. It assumes that the upstream is trusted.

Tip

This extension extends and can be used with the following extension category:

This extension must be configured with one of the following type URLs:

extensions.quic.server_preferred_address.v3.FixedServerPreferredAddressConfig

[extensions.quic.server_preferred_address.v3.FixedServerPreferredAddressConfig proto]

Configuration for FixedServerPreferredAddressConfig.

Warning

This API feature is currently work-in-progress. API features marked as work-in-progress are not considered stable, are not covered by the threat model, are not supported by the security team, and are subject to breaking changes. Do not use this feature without understanding each of the previous points.

{
  "ipv4_address": ...,
  "ipv4_config": {...},
  "ipv6_address": ...,
  "ipv6_config": {...}
}
ipv4_address

(string) String representation of IPv4 address, i.e. “127.0.0.2”. If not specified, none will be configured.

ipv4_config

(extensions.quic.server_preferred_address.v3.FixedServerPreferredAddressConfig.AddressFamilyConfig) The IPv4 address to advertise to clients for Server Preferred Address. This field takes precedence over ipv4_address.

ipv6_address

(string) String representation of IPv6 address, i.e. “::1”. If not specified, none will be configured.

ipv6_config

(extensions.quic.server_preferred_address.v3.FixedServerPreferredAddressConfig.AddressFamilyConfig) The IPv6 address to advertise to clients for Server Preferred Address. This field takes precedence over ipv6_address.

extensions.quic.server_preferred_address.v3.FixedServerPreferredAddressConfig.AddressFamilyConfig

[extensions.quic.server_preferred_address.v3.FixedServerPreferredAddressConfig.AddressFamilyConfig proto]

Addresses for server preferred address for a single address family (IPv4 or IPv6).

{
  "address": {...},
  "dnat_address": {...}
}
address

(config.core.v3.SocketAddress) The server preferred address sent to clients.

Note: Envoy currently must receive all packets for a QUIC connection on the same port, so unless dnat_address is configured, the port for this address must be zero, and the listener’s port will be used instead.

dnat_address

(config.core.v3.SocketAddress) If there is a DNAT between the client and Envoy, the address that Envoy will observe server preferred address packets being sent to. If this is not specified, it is assumed there is no DNAT and the server preferred address packets will be sent to the address advertised to clients for server preferred address.

Note: Envoy currently must receive all packets for a QUIC connection on the same port, so the port for this address must be zero, and the listener’s port will be used instead.