Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions kubernetes/customresourcedefinitions.gen.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions networking/v1/service_entry_alias.gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

25 changes: 22 additions & 3 deletions networking/v1alpha3/service_entry.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

21 changes: 21 additions & 0 deletions networking/v1alpha3/service_entry.pb.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions networking/v1alpha3/service_entry.proto
Original file line number Diff line number Diff line change
Expand Up @@ -560,6 +560,23 @@ message ServiceEntry {
// specified in the hosts field, if wildcards are not used. DNS resolution
// cannot be used with Unix domain socket endpoints.
DNS_ROUND_ROBIN = 3;

// DYNAMIC_DNS will attempt to resolve the host name specified in
// the Host header or SNI to an IP address when handling traffic. This
// allows multiple DNS addresses to be represented by a single wildcard
// `host` entry without having to explicitly enumerate all possible
// endpoints. During DNS proxying, ztunnel will resolve all subdomains
// matching the wildcard host name to a VIP which isn't used for routing
// outside the mesh. `DYNAMIC_DNS` will provide configuration to a
// waypoint proxy to recover the original host name using information
// from SNI or a Host header in an HTTP Request. This original host name
// will then be resolved so that traffic can be routed to the intended
// IP address. This method of handling wildcard traffic is not
// compatible with raw TCP traffic where the original host cannot
// be recovered. `DYNAMIC_DNS` is only supported for wildcard hosts,
// `MESH_EXTERNAL` location and in ambient mode. The ServiceEntry must
// be bound to a waypoint. Specified endpoints will be ignored.
DYNAMIC_DNS = 4;
}

// Service resolution mode for the hosts. Care must be taken
Expand Down
17 changes: 17 additions & 0 deletions networking/v1beta1/service_entry_alias.gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions releasenotes/notes/dynamic-dns-resolution.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
apiVersion: release-notes/v2
kind: feature
area: traffic-management
issue:
- https://github.com/istio/istio/issues/54540

releaseNotes:
- |
**Added** a new `DYNAMIC_DNS` resolution option for `ServiceEntry` to enable
dynamic DNS resolution based on the request's Host header or SNI when the
ServiceEntry has a wildcard host.