Используете адрес 10.0.128.25 для AlwaysOn для ограничений IP в службе приложений Azure?

В журналах веб-сервера (с использованием az cli) я вижу запросы Get с пользовательским агентом AlwaysOn и IP-адресом 10.0.128.25.

Можно ли надежно использовать этот IP-адрес для установки ограничения разрешенного IP-адреса?

Этот IP-адрес не задокументирован в https://docs.microsoft.com/en-us/azure/app-service/app-service-ip-addresses который, кажется, охватывает обнаружение общедоступных IP-адресов, поэтому я опасаюсь использования Это?

В журналах я также вижу IPv6::1, указывающий на localhost, поэтому я думаю, что 10.0.128.25 также является localhost?

2018-08-30 10:48:19 EXAMPLESITE GET / X-ARR-LOG-ID=ExampleLogId 80 - ::1 AlwaysOn ARRAffinity=ExampleArrAffinityId - EXAMPLESITE.azurewebsites.net 200 0 0 2942 695 108
2018-08-30 10:48:54 ~1EXAMPLESITE GET / - 80 - 10.0.128.25 AlwaysOn - - examplesite.azurewebsites.net 200 0 64 0 457 46463

Я попытался использовать консоль службы приложений и консоль Kudu PowerShell, чтобы узнать, является ли это IP-адресом экземпляра, но я не могу узнать больше, поскольку ipconfig и Get-NetIPAddress не работают в песочнице.

Я предполагаю, что 127.0.0.1 не будет работать, даже если бы это была та же самая машина, поскольку IIS интерпретирует это как другой IP?

На двух планах обслуживания приложений, которые я уже пробовал, это тот же IP-адрес.

1 ответ

Для каждого веб-приложения службы приложений есть два сайта: 1 - ваше обычное веб-приложение, а второй - сайт SCM (на котором работает Kudu). Каждый получает пинг, поэтому вы видите два сайта (имя ~1 - SCM).

Все веб-приложения Azure (а также мобильные приложения / службы, веб-задания и функции) работают в безопасной среде, называемой песочницей. Каждое приложение запускается в своей собственной изолированной программной среде, изолируя его выполнение от других экземпляров на том же компьютере, а также обеспечивая дополнительную степень безопасности и конфиденциальности, которые в противном случае были бы недоступны.

Да, попытки подключения к локальным адресам (например, localhost, 127.0.0.1) и собственному IP-адресу компьютера не будут выполнены, за исключением случаев, когда другой процесс в той же песочнице создал прослушивающий сокет на порту назначения. Отклоненные попытки подключения, такие как в следующем примере, который пытается подключиться к 127.0.0.1:80, из.NET приведут к следующему исключению: Сведения об исключении: System.Net.Sockets.SocketException: была сделана попытка получить доступ к сокету в способ, запрещенный его правами доступа 127.0.0.1:80 Приложения не могут подключаться к частному IP-адресу. Экземпляры могут перемещаться, вы можете ознакомиться с этой веткой обсуждения, в которой рассказывается о работе с внутренним IP-адресом: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/182f3673-18fc-4ade-90bf-22111f566f85/need-internal-ip-address-of-nodes-withing-a-web-app?forum=windowsazurewebsitespreview

Другие вопросы по тегам