Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Правила для исходящего трафика позволяют явно определять SNAT (преобразование сетевых адресов источника) для общедоступного стандартного балансировщика нагрузки. Эта конфигурация позволяет использовать общедоступные IP-адреса вашего балансировщика нагрузки для обеспечения исходящего подключения к Интернету для бэкэнд-экземпляров.
Эта конфигурация обеспечивает:
- маскировку IP-адресов;
- Упрощение списков разрешений.
- Уменьшает число общедоступных IP-ресурсов, необходимых для развертывания.
Правила для исходящего трафика позволяют полностью декларативно управлять исходящим подключением к Интернету. Правила для исходящего трафика позволяют масштабировать и настраивать эту функцию для конкретных нужд.
Исходящие правила применяются только если у бэкенд-виртуальной машины нет публичного IP-адреса на уровне экземпляра (ILPIP).
Примечание.
Для масштабируемого исходящего соединения и снижения риска исчерпания SNAT-портов используйте Azure NAT Gateway. Среди альтернатив — правила исходящего трафика Load Balancer и публичные IP-адреса уровня экземпляра.
С помощью правил для исходящего трафика можно задать поведение исходящего трафика SNAT.
Правила для исходящего трафика позволяют управлять следующим:
-
Какие виртуальные машины сопоставляются с какими общедоступными IP-адресами.
- При этом используются два правила: для серверного пула 1 используется оба синих IP-адреса, а для серверного пула 2 используется желтый префикс IP-адреса.
-
Как выделяются исходящие порты SNAT.
- Если внутренний пул 2 является единственным пулом, выполняющим исходящие подключения, предоставьте все порты SNAT серверному пулу 2 и ни одного — серверному пулу 1.
-
Протоколы, для которых требуется обеспечить исходящее преобразование.
- Если серверному пулу 2 требуются UDP-порты для исходящего трафика, а серверному пулу 1 требуется протокол TCP, присвойте портам TCP значение 1, а порту UDP значение 2.
-
Какую продолжительность использовать для тайм-аута простоя исходящего подключения (от 4 до 120 минут).
- Если существуют длительные подключения, поддерживаемые keepalive-пакетами, следует резервировать неактивные порты для таких подключений на срок до 120 минут. Предполагается, что устаревшие подключения отброшены, а порты освобождаются в течение 4 минут для новых подключений.
-
Отправлять ли сброс TCP при завершении времени ожидания.
- Если истекло время ожидания простаивающих подключений, нужно ли отправлять TCP RST клиенту и серверу, чтобы они знали, что поток завершён?
Внимание
Если серверный пул настраивается по IP-адресу, он будет вести себя как базовый балансировщик нагрузки с включенным исходящим трафиком по умолчанию. Для безопасной по умолчанию конфигурации и приложений с большим объемом исходящего трафика настройте серверный пул по сетевой карте.
Определение правила для исходящего трафика
Исходящие правила используют тот же синтаксис, что и правила балансировки нагрузки и входящих правил NAT: фронтенд, параметры и бэкенд-пул.
Исходящее правило устанавливает исходящий NAT для всех виртуальных машин в пуле бэкенда, переводя их трафик на фронтенд. Параметры дают подробный контроль над исходящим алгоритмом NAT.
Параметры обеспечивают тонкую настройку алгоритма NAT для исходящего трафика.
Масштабирование NAT для исходящего трафика с несколькими IP-адресами
Каждый дополнительный IP-адрес на фронтенде даёт балансировщику нагрузки ещё 64 000 эфемерных портов для использования в качестве SNAT-портов. Балансировщик нагрузки использует IP-адреса в зависимости от доступных портов. Он переключается на следующий IP, когда текущий IP не может поддерживать больше соединений.
Используйте несколько IP-адресов для планирования крупномасштабных сценариев. Используйте исходящие правила для предотвращения исчерпания SNAT, как описано в Поддержке и устранении неполадок для Azure Load Balancer.
Можно также использовать префикс общедоступного IP-адреса непосредственно с правилом для исходящего трафика.
Публичный IP-префикс увеличивает масштабирование вашего развертывания. Добавьте префикс в список разрешенных потоков, поступающих из ваших ресурсов Azure. В балансировщике нагрузки можно настроить внешнюю IP-конфигурацию с указанием префикса общедоступного IP-адреса.
Балансировщик нагрузки управляет публичным IP-префиксом. Правило исходящего сообщения автоматически использует другие публичные IP-адреса в префиксе, когда текущий IP не может совершать дополнительные исходящие соединения.
Каждый из IP-адресов в пределах префикса общедоступного IP-адреса предоставляет дополнительно 64 000 эфемерных портов на каждый IP-адрес для использования подсистемой балансировки нагрузки в качестве портов SNAT.
Тайм-аут простоя исходящего потока и сброс TCP
Правила исходящего трафика включают параметр для управления тайм-аутом простоя исходящего трафика, чтобы настроить его в соответствии с потребностями вашего приложения. По умолчанию время ожидания простоя для исходящих соединений составляет 4 минуты. Дополнительные сведения см. в разделе Настройка тайм-аута простоя.
По умолчанию балансировщик нагрузки бесшумно прекращает поток, когда выходящий тайм-аут простоя. Параметр enableTCPReset обеспечивает предсказуемое поведение приложения и контроль над ним. Этот параметр определяет, следует ли отправлять двунаправленный TCP Reset (TCP RST) при срабатывании тайм-аута простоя для исходящего соединения.
Ознакомьтесь с разделом Сброс TCP по истечении тайм-аута простоя для получения подробной информации, включая доступность в разных регионах.
Явная защита исходящих подключений и управление ими
Правила балансировки нагрузки обеспечивают автоматическое программирование NAT для исходящего трафика. В некоторых сценариях есть преимущество или требование отключить автоматическое программирование NAT для исходящего трафика с помощью правила балансировки нагрузки. Такое отключение с помощью правила позволяет управлять поведением или уточнять его.
Этот параметр можно использовать двумя способами:
Предотвращение использования исходящего IP-адреса для SNAT. Отключите исходящие SNAT-подключения в правиле балансировки нагрузки.
Настройте параметры SNAT исходящего трафика для IP-адреса, используемого одновременно для входящего и исходящего трафика. Автоматический NAT для исходящего трафика должен быть отключен, чтобы предоставить возможность правилу управлять исходящим трафиком. Чтобы изменить назначение порта адреса SNAT, также используемого для входящего трафика, параметр
disableOutboundSnatдолжен иметь значение true.
Операция настройки правила исходящего трафика завершается ошибкой при попытке переопределить IP-адрес, используемый для входящего трафика. Сначала отключите исходящий NAT правила балансировки нагрузки.
Внимание
Виртуальная машина не будет иметь исходящее подключение, если вы установите этот параметр в значение true и не создадите правило для определения исходящего подключения. Некоторые операции виртуальной машины или приложения могут зависеть от наличия исходящего подключения. Ознакомьтесь с зависимостями сценария и проанализируйте влияние этого изменения.
Иногда создание виртуальной машиной исходящих потоков может быть нежелательным. Кроме того, может понадобиться ограничить пункты назначения, которым доступен прием исходящих потоков, или пункты назначения, инициирующие входящие потоки. Используйте группы безопасности сети, чтобы управлять пунктами назначений, доступными для виртуальной машины. Используйте группы безопасности сети для управления тем, какие общедоступные назначения инициируют входящие потоки.
При использовании NSG для виртуальной машины с балансировкой нагрузки обратите внимание на теги службы и правила безопасности по умолчанию.
Убедитесь, что виртуальная машина может получать запросы проверки работоспособности из Azure Load Balancer.
Если NSG блокирует такие запросы от тега по умолчанию AZURE_LOADBALANCER, проба работоспособности виртуальной машины завершается сбоем, а машина помечается как недоступная. Подсистема балансировки нагрузки прекращает отправку новых потоков на эту виртуальную машину.
Сценарии правил исходящего трафика Azure Load Balancer
- Настройте исходящие подключения к определенному набору общедоступных IP-адресов или префиксов.
- Изменение распределения портов SNAT
- Включите только исходящий трафик.
- Исходящий NAT только для виртуальных машин (без входящего трафика).
- Исходящий NAT для внутреннего стандартного балансировщика нагрузки.
- Включите оба протокола TCP и UDP для исходящего NAT с общедоступным балансировщиком нагрузки уровня стандарт.
Сценарий 1. Привязка исходящих подключений к определенному набору общедоступных IP-адресов или префиксу
Используйте этот сценарий, чтобы привязать исходящие подключения к набору общедоступных IP-адресов. Добавьте общедоступные IP-адреса или префиксы в список разрешений или блокировок на основе происхождения.
Этот общедоступный IP-адрес или префикс может совпадать с тем, который используется правилом балансировки нагрузки.
Чтобы использовать другой общедоступный IP-адрес или префикс, отличный от используемого правилом балансировки нагрузки, выполните следующие действия.
- Создайте публичный IP-префикс или публичный IP-адрес.
- Создайте публичный стандартный балансировщик нагрузки.
- Создайте внешний интерфейс, ссылающийся на префикс общедоступного IP-адреса или общедоступный IP-адрес, который хотите использовать.
- Повторно используйте серверный пул или создайте его и разместите в этом пуле общедоступной подсистемы балансировки нагрузки виртуальные машины.
- Настройте правило для исходящего трафика на общедоступный балансировщик нагрузки, чтобы включить исходящий NAT для виртуальных машин, использующих фронтенд. Не рекомендуется использовать правило балансировки нагрузки для исходящего трафика. Отключите SNAT для исходящего трафика в правиле балансировки нагрузки.
Сценарий 2. Изменение выделения SNAT-портов
Вы можете использовать правила для исходящего трафика, чтобы настроить автоматическое распределение SNAT-портов на основе размера серверного пула.
Если вы испытываете нехватку SNAT, увеличьте количество предоставленных портов SNAT с 1024 по умолчанию.
Каждый общедоступный IP-адрес предоставляет до 64 000 эфемерных портов. Число виртуальных машин в серверном пуле определяет количество портов, передаваемых на каждую виртуальную машину. Одна виртуальная машина во внутреннем пуле имеет доступ к максимум 64 000 портов. Для двух виртуальных машин с помощью правила для исходящего трафика может быть предоставлено максимум 32 000 портов SNAT (2 x 32 000 = 64 000).
Для настройки портов SNAT, заданных по умолчанию, можно использовать правила для исходящего трафика. Вы предоставляете большее или меньшее количество портов, чем предусмотрено выделением портов SNAT по умолчанию. Каждый общедоступный IP-адрес из внешнего интерфейса правила исходящего трафика предоставляет до 64 000 временных портов для использования в качестве портов SNAT.
Подсистема балансировки нагрузки предоставляет количество портов SNAT, кратное 8. Если вы предоставляете значение, которое не делится на 8, операция конфигурации будет отклонена. Каждое правило балансировки нагрузки и правило NAT для входящего трафика используют диапазон из восьми портов. Если правило NAT для балансировки нагрузки или входящего трафика использует тот же диапазон 8, что и другой, дополнительные порты не используются.
Если вы попытаетесь предоставить больше портов SNAT, чем доступно на основе количества общедоступных IP-адресов, операция настройки будет отклонена. Например, если предоставить по 10 000 портов на каждую виртуальную машину, а семь виртуальных машин в серверном пуле будут совместно использовать один общедоступный IP-адрес, конфигурация будет отклонена. Семь, умноженное на 10 000, превышает предельное число портов, равное 64 000. Для реализации этого сценария добавьте больше общедоступных IP-адресов во внешний интерфейс правила для исходящего трафика.
Вернитесь к выделению порта по умолчанию, задав 0 в качестве числа портов. Дополнительные сведения о выделении портов SNAT по умолчанию см. в разделе Таблица распределения портов SNAT.
Сценарий 3. Включение только исходящего трафика
Можно использовать общедоступную подсистему балансировки нагрузки в ценовой категории "Стандартный", чтобы обеспечить NAT исходящего трафика для группы виртуальных машин. В этом случае используется только правило для исходящего трафика, без дополнительных правил.
Примечание.
Azure NAT Gateway может предоставлять исходящее подключение для виртуальных машин без необходимости подсистемы балансировки нагрузки. Дополнительные сведения см. в разделе Что такое Azure NAT Gateway?.
Сценарий 4. NAT для исходящего трафика только для виртуальных машин (без входящего трафика)
Примечание.
Azure NAT Gateway может предоставлять исходящее подключение для виртуальных машин без необходимости подсистемы балансировки нагрузки. Дополнительные сведения см. в разделе Что такое Azure NAT Gateway?.
В этом сценарии: правила исходящего трафика Azure Load Balancer и виртуальная сеть NAT доступны для исходящего трафика из виртуальной сети.
- Создайте общедоступный IP-адрес или префикс.
- Создайте общедоступный стандартный балансировщик нагрузки.
- Создайте интерфейс, связанный с общедоступным IP-адресом или префиксом, выделенным для исходящего трафика.
- Создайте серверный пул для виртуальных машин.
- Разместите виртуальные машины в серверном пуле.
- Настройте правило для исходящего трафика, чтобы разрешить NAT для исходящего трафика.
Используйте префикс или общедоступный IP-адрес для масштабирования портов SNAT. Добавьте источник исходящих подключений в список разрешений или блокировок.
Сценарий 5: Исходящий NAT для внутреннего стандартного балансировщика нагрузки
Примечание.
Azure NAT Gateway может обеспечить исходящее подключение для виртуальных машин, использующих внутренний стандартный балансировщик нагрузки. Дополнительные сведения см. в разделе Что такое Azure NAT Gateway?.
Внутренний балансировщик нагрузки уровня Standard не имеет исходящего доступа, пока вы явно не включите его с помощью общедоступных IP-адресов уровня экземпляра, виртуальная сеть NAT или путем связывания элементов внутреннего пула с конфигурацией балансировщика нагрузки только для исходящего трафика.
Дополнительные сведения см. в разделе Конфигурация подсистемы балансировки нагрузки только для исходящих подключений.
Сценарий 6: Включить оба протокола TCP и UDP для исходящего NAT с помощью общедоступного балансировщика нагрузки
Используя публичный стандартный балансировщик нагрузки, автоматический исходящий NAT соответствует транспортному протоколу правила балансировки нагрузки.
- Отключите исходящий SNAT в правиле балансировки нагрузки.
- Настройте правило для исходящего трафика в той же подсистеме балансировки нагрузки.
- Повторно используйте серверный пул, уже использованный вашими ВМ.
- Укажите для протокола значение "Все" как часть правила для исходящего трафика.
Когда вы используете только правила входящего NAT, исходящий NAT не предоставляется.
- Поместите виртуальные машины в серверный пул.
- Определите одну или несколько фронтенд-конфигураций IP с публичными IP-адресами или публичным IP-префиксом.
- Настройте правило для исходящего трафика в той же подсистеме балансировки нагрузки.
- Укажите для протокола значение "Все" как часть правила для исходящего трафика.
Ограничения правил исходящего трафика Azure Load Balancer
- Максимальное количество используемых эфемерных портов на один интерфейсный IP-адрес составляет 64 000.
- Диапазон настраиваемого времени ожидания перед переходом исходящих подключений в режим простоя составляет 4–120 минут (240–7200 секунд).
- Подсистема балансировки нагрузки не поддерживает ICMP для исходящего NAT, единственными поддерживаемыми протоколами являются TCP и UDP.
- Правила исходящего трафика можно применять только к основной конфигурации IPv4 сетевого адаптера. Невозможно создать правило исходящего трафика для дополнительных конфигураций IPv4 виртуальной машины или NVA. Поддерживается несколько сетевых карт.
- Правила исходящего трафика для вторичной IP-конфигурации поддерживаются только для IPv6.
- Все виртуальные машины в группе доступности должны быть добавлены во внутренний пул для исходящих подключений.
- Все виртуальные машины в масштабируемом наборе виртуальных машин должны быть добавлены во внутренний пул для исходящих подключений.
Следующие шаги
- Дополнительные сведения о Azure Load Balancer (цен. категория "Стандартный")
- Ознакомьтесь с нашими часто задаваемыми вопросами о Azure Load Balancer