Назад | Перейти на главную страницу

nginx с использованием remote_addr для получения ipv6

Поскольку у меня нет IPv6-адреса для работы.

Если бы у меня был такой серверный блок:

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

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

Вернет ли это адрес ipv6? Я предполагаю, что да, так как он заставляет ipv6only.

Нет, это не так.

Директива возврата Nginx ожидает в качестве аргумента код состояния HTTP.

Но для этой цели можно использовать модуль echo:

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