Рейтинг:1

Является ли этот сценарий возможной проблемой/ошибкой с WINRM и IIS с сайтом, привязанным исключительно к петлевому адресу?

флаг cc

Я считаю, что обнаружил очень странную, узкую проблему, связанную с проблемой взаимодействия с IIS и WINRM, выполняемой Powershell в Windows 10.

У меня есть устройство, на котором сайт IIS привязан исключительно к локальному адресу 127.0.0.1.При такой настройке использование «localhost» в адресной строке браузера не работает; соединение будет либо отклонено, либо сброшено. Доступ к сайту возможен только по адресу 127.0.0.1 (явно). Эта проблема решается добавлением 127.0.0.1 в список iplisten с помощью команды «netsh http add iplisten». После этого сайт, привязанный к локальному хосту, заработает. Все идет нормально.

Но вот где это становится своеобразным. В тот момент, когда адрес локального хоста добавляется в список iplisten, удаленные команды через Powershell (invoke-command --> winrm) перестают работать. На устройстве test-winrm против его публичный IP-адрес теперь не работает. «winrm quickconfig» указывает, что устройство уже настроено для удаленного доступа и работает правильно. Но нет удаленные команды работают, все сообщают, что «пункт назначения недоступен». Запрос слушателей на целевом устройстве показывает все соответствующие определенные конечные точки и конфигурацию для RM, чтобы она соответствовала ожиданиям — все выглядит так. должен работай. Брандмауэров, блокирующих доступ, нет.

Решение? Удаление 127.0.0.1 из списка iplisten на целевом устройстве мгновенно устраняет проблему, и команды powershell/remote начинают работать. Но тогда мы возвращаемся к исходной проблеме; "localhost" в браузере не работает. В качестве обходного пути я могу создать фальшивый «псевдоним» DNS на хостах, указывающих на 127.0.0.1, но я действительно предпочел бы не связываться с хостами, если это возможно.

Мне кажется, что на самом деле это сбой / ошибка в минимальном сетевом разрешении на целевом устройстве; добавление адреса 127.0.0.1 в явный список iplisten не должно прерывать удаленные подключения WinRM через совершенно другой адрес. Казалось бы, это, ненароком, маршрутизация все HTTP-трафик к IIS, и когда ему отправляется удаленная команда, IIS, очевидно, получает ее «первой», не имеет для нее привязки (через порт 5985), понятия не имеет, что с ней делать, и отбрасывает ее, вызывая удаленную команда на провал.На самом деле мне кажется, что IIS никогда не должен его видеть; но добавление петлевого адреса в список iplisten направляет такой трафик именно таким образом.

Есть ли что-то, что я упускаю или не понимаю в том, как маршрутизируется трафик, или какой-то аспект этой настройки, который я просто упустил из виду? ЕСЛИ есть какой-то дополнительный шаг, который я пропустил, я был бы признателен за направление для его решения.

Lex Li avatar
флаг vn
Вы можете быть удивлены запуском `ping localhost` в командной строке (без вашего обходного пути в файле hosts). Это объясняет, почему «использование «localhost» в адресной строке браузера не работает». Опять же, никогда не предполагайте, что локальный хост должен быть разрешен как «127.0.0.1», так как в течение очень долгого времени это уже не так.

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

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