[Документация Yandex Cloud](../index.md) > [Yandex Application Load Balancer](index.md) > Вопросы и ответы про Application Load Balancer

# Вопросы и ответы про Application Load Balancer

* [Как записывать IP-адреса клиентов в логи веб-сервера?](#client-ip)
* [Почему при переключении между доменами возникает ошибка `no_route`?](#no-route)
* [Почему после применения конфигурации Ingress не появляется маршрут?](#ingress-route)

## Как записывать IP-адреса клиентов в логи веб-сервера? {#client-ip}

Application Load Balancer передает IP-адрес источника HTTP-запроса в заголовке `X-Forwarded-For`. Чтобы сохранять его в логах веб-сервера на бэкенде, нужно добавить этот заголовок в формат записи логов.

{% list tabs %}

- Nginx

    В секции `http` задается формат с переменной `$http_x_forwarded_for`, а в директиве `access_log` — имя этого формата:

    ```nginx
    log_format alb '$remote_addr - $remote_user [$time_local] "$request" '
                   '$status $body_bytes_sent "$http_referer" '
                   '"$http_user_agent" "$http_x_forwarded_for"';
    access_log /var/log/nginx/access.log alb;
    ```

    Если в секциях `server` или `location` уже задана директива `access_log`, для нее также нужен формат `alb`.

- Apache HTTP Server

    В директиве `LogFormat` заголовок обозначается как `%{X-Forwarded-For}i`. Этот формат используется в `CustomLog`:

    ```apache
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{X-Forwarded-For}i\"" alb
    CustomLog "logs/access_log" alb
    ```

{% endlist %}

Пути к файлам логов зависят от конфигурации веб-сервера. После применения конфигурации и перезагрузки веб-сервера заголовок будет записываться в логи запросов. Если запрос проходит через промежуточные прокси, заголовок может содержать несколько IP-адресов.

В Yandex Network Load Balancer исходный IP-адрес сохраняется по умолчанию. Для сервиса Kubernetes типа `LoadBalancer` сохранение адреса на бэкенде настраивается параметром `externalTrafficPolicy: Local`. Подробнее в [инструкции по созданию сетевого балансировщика](../managed-kubernetes/operations/create-load-balancer.md#create-lb).

## Почему при переключении между доменами возникает ошибка `no_route`? {#no-route}

Ошибка `no_route` означает, что запрос не соответствует ни одному маршруту в HTTP-роутерах балансировщика.

Если домены разрешаются в один IP-адрес и покрываются одним TLS-сертификатом, браузер может переиспользовать соединение при переходе к другому домену. Обработчик SNI при этом не выбирается заново, и запрос может попасть в другой HTTP-роутер. Варианты настройки сертификатов и виртуальных хостов описаны в разделе [Обработчик](concepts/application-load-balancer.md#listener).

## Почему после применения конфигурации Ingress не появляется маршрут? {#ingress-route}

Причину можно определить по логам Ingress-контроллера Application Load Balancer. Проверка создания балансировщика и выбор пода контроллера описаны в [инструкции по применению конфигурации](operations/k8s-ingress-controller-apply.md#apply).

Превышение квоты на статические публичные IP-адреса может помешать созданию балансировщика с публичным адресом. Это одна из возможных причин: ошибки также могут быть связаны с конфигурацией ресурсов. [Увеличение квоты](../quota-manager/operations/set-quotas.md) требуется только в том случае, если ее превышение подтверждено в логах.