-
Notifications
You must be signed in to change notification settings - Fork 397
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Embed v4 address in v6 as alternative to proxy_protocol #371
Comments
candlerb
added a commit
to candlerb/sniproxy
that referenced
this issue
Mar 5, 2021
Usage: listen 0.0.0.0 443 { proto tls source fd46:1:: ipv6_embed on } If the inbound connection is IPv4, and the outbound connection is IPv6, then the IPv4 address is embedded in the low 32 bits of the source. TODO: - better choice of option name - better parsing/validation (e.g. reject ipv6_embed configuration if source is missing or source is not IPv6)
candlerb
added a commit
to candlerb/sniproxy
that referenced
this issue
Mar 5, 2021
Usage: listen 0.0.0.0 443 { proto tls embed fd46:1:: } If the inbound connection is IPv4, and the outbound connection is IPv6, then the IPv4 address is embedded in the low 32 bits of the source.
candlerb
added a commit
to candlerb/sniproxy
that referenced
this issue
Mar 5, 2021
Usage: listen 0.0.0.0 443 { proto tls embed fd46:1:: } If the inbound connection is IPv4, and the outbound connection is IPv6, then the IPv4 address is embedded in the low 32 bits of the source.
Nice concept. More elegant than transparent proxying too I think, if you're certain you'll be contacting IPv6 destinations. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This is a feature suggestion:
fd46:1::/96
sysctl net.ipv6.ip_nonlocal_bind
This would give a transparent way to keep the v4 source address visible in logs, without having to deal with
proxy_protocol
- so local connections and remote connections can be treated identically.Demonstration proof-of-concept:
The text was updated successfully, but these errors were encountered: