Closed
Description
Overview of the Issue
consul connect proxy public address is not escaped correctly for IPv6 addresses when making connection to upstream.
There is a Sprintf in https://github.com/hashicorp/consul/blob/master/connect/proxy/config.go which doesn't take into account a proper format for IPv6 addresses ( line 116 )
Reproduction Steps
Steps to reproduce this issue, eg:
- start a connect proxy for a service, make the proxy register listen under IPv6 address
consul connect proxy -service postgres -service-addr 172.17.0.3:5432 -listen [fc01::1]:15432 -register
- start a connect proxy upstream to access the service
consul connect proxy -service web -upstream postgres:5432
- View error on the proxy which is trying to establish connect (web side)
[ERR] failed to dial: dial tcp: address fc01::1:15432: too many colons in address
Consul info for both Client and Server
Client info
consul info
agent:
check_monitors = 0
check_ttls = 2
checks = 5
services = 5
build:
prerelease =
revision = c97c712e
version = 1.4.2
Server info
consul info
agent:
check_monitors = 0
check_ttls = 2
checks = 5
services = 5
build:
prerelease =
revision = c97c712e
version = 1.4.2
Operating system and Environment details
Ubuntu 18.04
Activity
seeder commentedon May 8, 2019
is there any chance that this patch gets merged?
looks like it was an easy fix, but there is no will to actually close this blocker bug
Ensure Consul is IPv6 compliant