Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описываются следующие понятия, связанные с IP-адресами приложений-функций:
- Поиск IP-адресов, используемых в настоящее время приложением-функцией.
- Условия, которые вызывают изменение IP-адресов приложения-функции.
- Ограничение IP-адресов, которые могут получить доступ к приложению-функции.
- Определение выделенных IP-адресов для приложения-функции.
IP-адреса связаны с приложениями-функциями, а не с отдельными функциями. Входящие HTTP-запросы не могут использовать входящий IP-адрес для вызова отдельных функций; они должны использовать доменное имя по умолчанию (functionappname.azurewebsites.net) или имя личного домена.
Входящий IP-адрес приложения-функции
Каждое приложение-функция запускается с использованием одного входящего IP-адреса. Когда приложение-функция запускается в плане потребления или премиум-плане, может быть добавлено больше входящих IP-адресов, поскольку происходит масштабирование на основе событий. Чтобы найти входящий IP-адрес или адреса, используемые приложением, используйте nslookup
программу с локального компьютера, как показано в следующем примере:
nslookup <APP_NAME>.azurewebsites.net
В этом примере замените <APP_NAME>
на имя вашего приложения-функции. Если ваше приложение использует имя личного домена, используйте nslookup
вместо этого.
Исходящие IP-адреса функционального приложения
Каждое приложение-функция имеет набор доступных исходящих IP-адресов. Любое исходящее соединение из функции, например, к базе данных, использует один из доступных исходящих IP-адресов в качестве начального IP-адреса. Вы не можете заранее узнать, какой IP-адрес использует заданное подключение. По этой причине служба back-end должна открыть свой брандмауэр для всех исходящих IP-адресов функционального приложения.
Подсказка
Для некоторых функций уровня платформы, таких как ссылки на Key Vault, IP-адрес источника может не быть одним из исходящих IP-адресов, и вы не должны настраивать целевой ресурс для использования этих конкретных адресов. Мы рекомендуем вместо этого использовать интеграцию виртуальной сети, так как платформа направляет трафик к целевому ресурсу через ту сеть.
Вот как можно найти исходящие IP-адреса, доступные для приложения-функции.
- Войдите в обозреватель ресурсов Azure.
- Выберите подписки {ваша подписка} >>>Microsoft.Web Sites>.
- На панели JSON найдите сайт со свойством
id
, заканчивающимся именем приложения-функции. - См.
outboundIpAddresses
иpossibleOutboundIpAddresses
.
outboundIpAddresses
набор в настоящее время доступен функциональному приложению. Набор possibleOutboundIpAddresses
включает IP-адреса, доступные только в том случае, если приложение-функция масштабируется до других ценовых категорий.
Замечание
При масштабировании приложения-функции, работающего в плане потребления или плане "Премиум ", может быть назначен новый диапазон исходящих IP-адресов. При использовании любого из таких планов вы не можете полагаться на сообщаемые исходящие IP-адреса для создания полного списка разрешений. Чтобы включить все потенциальные исходящие адреса, используемые во время динамического масштабирования, необходимо добавить весь центр обработки данных в список разрешений.
Исходящие IP-адреса центра обработки данных
Если необходимо добавить исходящие IP-адреса, используемые приложениями-функциями в список разрешений, можно добавить центр обработки данных приложений-функций (регион Azure) в список разрешений. Вы можете скачать JSON-файл, который перечисляет IP-адреса для всех центров обработки данных Azure. Затем найдите фрагмент JSON, который относится к региону, в котором выполняется приложение-функция.
Например, следующий фрагмент JSON — это то, что может выглядеть список разрешений для Западной Европы:
{
"name": "AzureCloud.westeurope",
"id": "AzureCloud.westeurope",
"properties": {
"changeNumber": 9,
"region": "westeurope",
"platform": "Azure",
"systemService": "",
"addressPrefixes": [
"13.69.0.0/17",
"13.73.128.0/18",
... Some IP addresses not shown here
"213.199.180.192/27",
"213.199.183.0/24"
]
}
}
Для получения информации о том, когда обновляется этот файл и когда изменяются IP-адреса, разверните раздел "Подробности" на странице Центра загрузок.
Изменения входящего IP-адреса
Входящий IP-адрес может измениться при выполнении следующих изменений:
- удалите приложение-функцию и создадите его заново в другой группе ресурсов;
- удалите последнее приложение-функцию с некоторым сочетанием группы ресурсов и региона и создадите его заново;
- Удалите привязку TLS, например во время продления сертификата.
Когда приложение-функция выполняется в плане потребления или в плане Premium, входящий IP-адрес также может измениться, даже если вы не сделали никаких действий, таких как здесь.
Изменения исходящего IP-адреса
Относительная стабильность исходящего IP-адреса зависит от плана размещения.
Планы потребления и уровня "Премиум"
Из-за автоматического масштабирования исходящий IP-адрес может изменяться в любое время при выполнении плана потребления или в плане "Премиум".
Если вам нужно контролировать исходящий IP-адрес приложения-функции, например, когда необходимо добавить его в список разрешений, рассмотрите возможность реализации шлюза NAT виртуальной сети во время работы в плане размещения Premium. Это также можно сделать, используя выделенный план (App Service).
Выделенные планы
Если приложение-функция работает в планах выделенной службы приложений, набор доступных исходящих IP-адресов для приложения-функции может измениться при выполнении следующих действий:
- Выполните любое действие, которое может изменить входящий IP-адрес.
- Измените ценовую категорию выделенного плана (служба приложений). Список всех возможных исходящих IP-адресов, которые ваше приложение может использовать для всех ценовых категорий, находится в свойстве
possibleOutboundIPAddresses
. См. также раздел Поиск исходящих IP-адресов.
Принудительное изменение исходящего IP-адреса
Используйте следующую процедуру, чтобы намеренно изменить исходящий IP-адрес в плане выделенного (службы приложений).
Масштабируйте план службы приложений, повышая или понижая его между ценовыми категориями "Стандартный" и "Премиум v2".
Подождите 10 минут.
Вернитесь к тому месту, откуда начали.
Ограничения IP-адресов
Вы можете настроить список IP-адресов, которые нужно разрешить или запретить доступ к приложению-функции. Дополнительную информацию см. в разделе Ограничения доступа к службам Azure App Service.
Выделенные IP-адреса
Существует несколько стратегий для изучения, когда приложению-функции требуются статические выделенные IP-адреса.
Шлюз NAT виртуальной сети для исходящего статического IP-адреса
Вы можете управлять IP-адресом исходящего трафика ваших функций, используя шлюз NAT виртуальной сети, чтобы направить трафик через статический общедоступный IP-адрес. Эту топологию можно использовать при использовании плана "Премиум" или в выделенном плане размещения. Дополнительные сведения см. в руководстве по управлению исходящим IP-адресом функций Azure с помощью шлюза NAT виртуальной сети Azure.
Среды службы приложений
Для полного контроля над IP-адресами, входящими и исходящими, рекомендуется использовать среды службы приложений ( изолированный уровень планов службы приложений). Дополнительные сведения см. в разделе "Среда службы приложений".
Чтобы узнать, работает ли приложение-функция в среде службы приложений:
- Войдите на портал Azure.
- Перейдите к приложению-функции.
- Выберите вкладку Обзор.
- Уровень плана службы приложений отображается в разделе "План службы приложений" или "Ценовая категория". Ценовая категория "Среда службы приложений" изолирована.
Среда служб приложений sku
Isolated
.
Дальнейшие шаги
Распространенной причиной изменений IP-адресов является изменение масштаба приложения-функции. Дополнительные сведения о масштабировании приложений-функций.