Рейтинг:1

Nginx — нельзя использовать доменное имя mDNS на вышестоящем сервере

флаг br

Минимальный пример

Машины A и B, где B использует mDNS с доменным именем б.местный и установите службу ssh на порт 2222. A и B не включают брандмауэр.

В машине А nginx.conf:

транслировать {
    восходящий b-ssh {
        сервер b.local:2222;
    }
    сервер {
        слушать 2222;
        слушать [::]:2222;
        прокси_пасс b-ssh;
    }
}

Когда используешь нгинкс -т чтобы проверить эту конфигурацию на машине A, произошла ошибка:

[emerg] хост не найден в восходящем потоке "b.local:2222"

Однако на машине А с помощью ssh -p 2222 b.local работает нормально(-4 или же -6 тоже проверено)

Возможно полезная информация

В моем реальном примере машина A — это Windows 11, которая отключает все брандмауэры; машина B - это WSL2 ubuntu 21.10 внутри машины A, которая использует службу mDNS avahi-daemon.

В боковой машине А nginx.conf, я также устанавливаю проход прокси-сервера HTTP:

http {
    сервер {
        слушать 8929;
        слушать [::]:8929;
        место расположения / {
            прокси_пароль http://b.local:8929;
        }
    }
}

и это работает хорошо, хотя здесь используется доменное имя mDNS.

Если я заменю доменное имя mDNS на его реальный IP-адрес на вышестоящем сервере, прокси-сервер SSH сработает.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.