nginxinc / kubernetes-ingress

NGINX and NGINX Plus Ingress Controllers for Kubernetes
https://docs.nginx.com/nginx-ingress-controller
Apache License 2.0
4.66k stars 1.97k forks source link

Extend `ip` as an option to listeners for TransportServer #6134

Closed shaun-nx closed 1 month ago

shaun-nx commented 2 months ago

As an engineer, I would like to allow TransportServer to use the new ipv4ip and ipv6ip listener options in GlobalConfiguration so that TransportServer users can also choose specific interfaces to bind to.

### UACs
- [x] Extend `makeHTTPListner` in tempalte helper to TransportServer
- [x] Ensure only and IPv4 style address is bound to the IPv4 listener
- [x] Ensure only and IPv6 style address is bound to the IPv6 listener
- [x] Ensure an IPv6 IP is not set on a Listen line when `DisableIPV6` is `true`
- [x] Ensure TCP and UDP listeners can use the same IP/PORT combo
- [x] Ensure IP/PORT combo for TCP and UDP listeners don't clash with IP/PORT Combos for HTTP listneres
- [x] Ensure IPv4 and IPv6 addreses can be set in GC in Helm deployments
github-actions[bot] commented 2 months ago

Hi @shaun-nx thanks for reporting!

Be sure to check out the docs and the Contributing Guidelines while you wait for a human to take a look at this :slightly_smiling_face:

Cheers!