Por que o Nginx proxy_pass para o envio de dados envia, às vezes, solicitações de saída para o IPv6?
2015/12/28 14:11:06 [error] 38194#0: *114469948 connect() failed (111: Connection refused) while connecting to upstream, client: xx.xxx.xx.xxx, server: example.com, request: "POST /suggest/ HTTP/1.1", upstream: "http://[AAAA:BBB:CCC:DDDD::E]:5555/suggestion", host: "example.com", referrer: "https://example.com/en/apple-111111/"
nginx.conf:
location /suggest/ {
proxy_pass http://testserver.com:5555/suggestion;
proxy_set_header Authorization 'Basic xxx';
}
Em vez de enviar o pedido para o nosso testserver.com, o pedido vai para link
Alguém sabe de onde o endereço IPv6 está vindo ou o que está errado com o conf do nginx?
Obrigado em conselhos, Hans
Aqui está um exemplo real:
2015/12/28 14:11:03 [error] 38192#0: *114552633 connect() failed (111: Connection refused) while connecting to upstream, client: xx.xx.xx.xxx, server: pixabay.com, request: "POST /suggest/ HTTP/1.1", upstream: "http://[2a01:4f8:160:4450::2]:5555/pixabay/suggestion", host: "pixabay.com", referrer: "https://pixabay.com/fr/"
E o nginx.conf:
location /suggest/ {
proxy_pass http://pagewizz.com:5555/pixabay/suggestion;
proxy_set_header Authorization 'Basic xxx';
}
Estamos executando uma grande base de dados de imagens chamada Pixabay. Para a pesquisa, usamos o elasticsearch, que está sendo executado em outro servidor chamado Pagewizz (2a01: 4f8: 160: 4450 :: 2). Se alguém está etiquetando imagens, usamos elástico para obter sugestões. Eu não tenho idéia porque o endereço ipv6 do Pagewizz aparece nos logs de erro do nginx ...