nginx error (connect() failed, 61 "Connection refused", but everything works)

Gerben Wierda gerben.wierda at rna.nl
Wed Aug 15 12:49:56 UTC 2018


> On 15 Aug 2018, at 14:05, Sergey Kandaurov <pluknet at nginx.com> wrote:
> 
> 
>> On 15 Aug 2018, at 13:02, Gerben Wierda <gerben.wierda at rna.nl> wrote:
> 
> [..]
> 
>> But nginx reports (apparently once per session):
>>   2018/08/15 11:34:48 [error] 242#0: *881 kevent() reported that connect() failed (61: Connection refused) while connecting to upstream, client: 192.168.2.67, server: MYHOST, request: “GET /gerbentest/?delimiter=%2F&max-keys=1000&prefix=duplicati-ifdb6b7ac174b4e5094b04e7321d10c6b.dindex.zip.aes HTTP/1.1”, upstream: “http://[::1]:9003/gerbentest/?delimiter=%2F&max-keys=1000&prefix=duplicati-ifdb6b7ac174b4e5094b04e7321d10c6b.dindex.zip.aes”, host: “MYHOST:9000”
> 
> Note [::1]:9003 in upstream, which is likely the address nobody listens.

Ha, yes, now I see, the address is the IPv6 address for localhost. Silly me, I though in the network stack 127.0.0.1 and [::1] worked more or less as aliases for the same port, but apparently not. So, while minio is listening on 127.0.0.1:9003 it is not listening on [::1]:9003

> I’d like to find out why this happens. Can someone help me find the cause of these errors? The config for the minio servers is:
>> 
>> server {
>>    listen              9000 ssl;
>>    server_name         MYHOST;
>>    ssl_certificate     minio_certificate_chained.crt;
>>    ssl_certificate_key minio_certificate.key;
>>    ssl_protocols       TLSv1.2;
>>    proxy_buffering     off;
>>    client_max_body_size 1000m;
>>    location / {
>>        proxy_set_header Host $http_host;
>>        if ($http_authorization ~* "^AWS4-HMAC-SHA256 Credential=REMOVED") {
>>            proxy_pass http://localhost:9001;
>>        }
> 
> If a domain name resolves to several addresses,
> which is apparently the case for "localhost”,
> all of them will be used in a round-robin fashion.
> 
> See for details:
> http://nginx.org/r/proxy_pass <http://nginx.org/r/proxy_pass>

If I use dig or nslookup to resolve localhost, I get just 127.0.0.1. But my /etc/hosts contains both IPv4 and IPv6 for localhost and nginx round-robins over both apparently. Using 127.0.0.1 instead of localhost is the correct solution, then.

G


> 
> -- 
> Sergey Kandaurov
> 
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20180815/0ad4a17e/attachment.html>


More information about the nginx mailing list