instantlinux / docker-tools

Docker tools for developer productivity & entertainment
Apache License 2.0
273 stars 89 forks source link

Add Transparency to udp-nginx-proxy #28

Open lehighkid opened 4 years ago

lehighkid commented 4 years ago

https://www.nginx.com/blog/ip-transparency-direct-server-return-nginx-plus-transparent-proxy/#ip-transparency

This would assist in passing forward the original requesting IP address instead of the host proxy which is useful in my case where I am load-balancing 3 separate pi-holes and would like the request tracking.

TuKDoan commented 4 years ago

+1 for this;

Useful for tracking DNS queries from different clients.

Attempting to use

  server {
    listen 5353 udp;
    proxy_pass backends;
    proxy_responses 0;
    error_log stderr;
#  proxy_timeout 1s;
    proxy_bind $remote_addr:53 transparent;
  }

Without the proxy_bind $remote_addr:53 transparent; and proxy_responses set to 1 I am able to receive dns queries; however they look like they're coming from the load balancer themselves. I would like the upstream servers to be aware of the client that is making the request.