nginx usando remote_addr para obter ipv6

nginx usando remote_addr para obter ipv6

Já que não tenho um endereço IPv6 para trabalhar.

Se eu tivesse um bloco de servidor como este:

server{
    listen [::]:80 ipv6only=on;

    root /some/root;
    server_name some.name;
    index some_index.html;
    location / {
        return "$remote_addr";
    }
}

Isso retornaria o endereço ipv6? Presumo que sim, pois está forçando apenas o ipv6.

Responder1

Não, isso não acontece.

A diretiva de retorno do Nginx espera um código de status HTTP como argumento.

Mas você pode usar o módulo echo para esta finalidade:

server {
    listen [::]:80 ipv6only=on;
    server_name some.name;
    location / {
        echo "$remote_addr";
    }
}

informação relacionada