Обработка сигналов реального времени в кластерах
В этом разделе объясняется, каким образом в кластерной среде CommuniGate Pro:
Задачи реального времени (такие, как PBX-задачи и плечи звонков XIMSS) взаимодействуют друг с другом, с сессиями XIMSS и с сигналами реального времени.
Сигналы реального времени создаются и получают доступ к данным пользователя.
обрабатываются транзакции SIP.
обрабатываются медиапотоки RTP.
Задачи реального времени
PBX-задачи в CommuniGate Pro взаимодействуют при помощи отправки событий в описатели задач. Описатель задачи — это объект-ссылка, описывающий PBX-задачу, сессию или сигналы реального времени. В кластерной среде CommuniGate Pro описатель задачи содержит также адрес сервера — члена кластера, на котором обрабатывается PBX-задача, сессия или сигнал.
Когда событие должно быть передано другому члену кластера, оно доставляется при помощи внтутрикластерного протокола CLI/API. Получатель события может ответить, используя описатель задачи отправителя; в этом случае снова будет задействован внутрикластерный протокол CLI/API для доставки события-ответа.
PBX-задачи обычно задействуют медиаканалы. Чтобы обеспечить возможность обмена медиа с внешними участникам, задачи PBX должны запускаться только на тех членах кластера, которые имеют непосредственный доступ к Интернет.
Плечи звонков XIMSS
Когда сессия XIMSS инициирует звонок, она создаёт объект «плечо звонка». Эти «плечи звонков» управляют медиаканалами XIMSS пользователя, и они должны быть в состоянии обмениваться медиа данными с внешними участниками, поэтому они должны запускаться только на тех членах кластера, которые имеют непосредственный доступ к Интернет.
Когда компонент «сигнал» направляет входящий звонок в сессию XIMSS, он создаёт объект «плечо звонка» на том же члене кластера, который обрабатывает сигнал с запросом на входящий звонок. Объект «плечо звонка» затем «присоединяется» к сессии XIMSS (запущенной на каком-либо бэкенд-сервере, который может быть другим членом кластера).
Если сессия XIMSS и её плечо звонка запущено на другом члене кластера, то они взаимодействуют через специальные события, доставляемые при помощи внутрикластерного протокола CLI/API.
Сигналы
Обработка сигналов реального времени требует обращения к DNS-клиенту, создания запросов SIP and XMPP.
Когда кластер настроен так, что только фронтенды имеют соединения с публичной сетью, некоторые услуги могут осуществляться только через фронтенды.
Даже когда приложения реального времени и плечи звонков настроены для обработки только на фронтенд-серверах, сигналы реального времени могут генерироваться ми на других членах кластера: сессии XIMSS и XMPP, автоматические правила и другие компоненты могут отправлять мгновенные сообщения, наборы событий могут создавать сигналы уведомлений и так далее.
Когда сигнал реального времени обрабатывается на фронтенд-сервере, он использует внутрикластерный протокол CLI/API для получения данных пользователя (например, регистрации SIP) или для выполнения запрошенных действий (по доставки запроса SUBSCRIBE или XMPP IQ, или для начала звонка).
Настройка обработки сигналов и плеч звонков
Для настройки создания плечей звонков откройте через веб-интерфейс администратора в области «установки» страницу «общее» и нажмите на ссылку «кластеры»:
Создание плеч звонков
Эта настройка указывает, каким образом плечи звонков должны обрабатываться этим членом кластера.
Локально
Запросы на создание задачи реального времени или плеча звонка выполняются на том же сервере (это обычный, односерверный режим обработки).
Локально для других
Задачи реального времени и плечи звонков создаются на том же сервере.
Контроллер динамического кластера информируется о том, что этот сервер может создавать задачи реального времени и плечи звонков для других членов кластера.
Контроллер динамического кластера собирает и распространяет информацию обо всех активных членах кластера, у которых выбрана эта опция.
Удалённо
Запросы на создание задач реального времени и плеч звонков передаются для выполнения тому члену кластера, у которого эта настройка имеет значение «локально для других».
Автоматически
аналогично:
Локально
если этот сервер не входит в динамический кластер.
Локально для других
если это — фронтенд-сервер динамического кластера.
Удалённо
если это — бэкенд-сервер динамического кластера.
Обработка сигналов
Эта настройка указывает, каким образом сигналы реального времени должны обрабатываться этим членом кластера. Значения этой настройки имеют тот же смысл, что и для настройки «создание плеч звонков».
SIP
Возможности SIP-Farm® CommuniGate Pro позволяют нескольким членам кластера обрабатывать пакеты с SIP-запросами, распределяемыми для них случайным образом балансировщиком нагрузки.
Настройте балансировщик нагрузки на распределение входящих SIP UDP-пакетов (по умолчанию, порт номер 5060) на порты SIP выбранных членов кластера, входящих в SIP-ферму.
Если в кластере есть фронтенд-серверы, то все или некоторые из них могут использоваться как члены SIP-фермы.
Настройте членов SIP-фермы: через веб-интерфейс администратора откройте в области «установки» страницу «общее» и нажмите на ссылку «кластеры»:
SIP-ферма
Эта настройка указывает, как этот член фермы должны обрабатывать запросы SIP.
Участник
Если выбрана опция «участник», то член кластера участвует в SIP-ферме. Он обрабатывает новые запросы локально или перенаправляет их другим членам SIP-фермы, используя специальные алгоритмы распределения трафика в SIP-ферме.
Выключено
Если выбрана опция «выключено», то этот член кластера не является участником SIP-фермы; он будет обрабатывать входящие запросы SIP локально.
Передавать
Если выбрана опция «передавать», то этот член кластера не является участником SIP-фермы; но, когда ему необходимо будет отправить запрос SIP, он будет ретранслировать его через любые доступные члены SIP-фермы.
Выберите эту опцию для тех бэкенд-серверов, которые не имеют прямого доступа в Интернет и, следовательно, не могут напрямую отправлять запросы SIP.
Автоматически
если этот сервер не входит в динамический кластер, то так же, как «выключено»
если этот сервер является Frontend-ом динамического кластера, то так же, как «участник»
если это — бэкенд-сервер динамического кластера, то так же, как «передавать»; если есть другие члены динамического кластера настроенные как «участник», если нет — так же, как «выключено»
Обратите внимание: SIP-запрос может быть явно направлен указанному члену кластера (так обрабатывается большинство запросов внутри установленных диалогов). Эти запросы всегда перенаправляются на указанного члена кластера и обрабатываются им независимо от установок в настройках SIP-фермы.
Кластер CommuniGate Pro учитывает информацию обо всех своих серверах, у которых опция SIP-ферма установлена в значение «участник». Входящие UDP-пакеты и TCP-соединения распределяются по этим серверам при помощи обычных балансировщиков нагрузки.
Получающий сервер определяет, должен ли полученный пакет обрабатываться на конкретном сервере фермы: он проверяет, не содержит ли пакет ответ или подтверждением (ACK) существующей транзакции и не направляется ли он на узел, созданный на конкретном сервере. В этом случае пакет ретранслируется правильному члену кластера:
Пакеты, не направленные конкретным членам кластера при помощи алгоритмов SIP-фермы CommuniGate Pro, распределяются по всем доступным в настоящее время членам фермы.
Для обработки сигнала членам кластера может потребоваться получение определённой информации пользователя (регистрация, настройки и т.п.). Если член кластера не может открыть пользователя (из-за того, что этот член кластера является фронтенд-сервером или по причине того, что пользователь открыт другим бэкенд-сервером), то он использует внутрикластерный интерфейс командной строки CLI/API для получения информации от соответствующего бэкенд-сервера.
Для реализации SIP-фермы могут использоваться различные конфигурации сети и балансировщиков нагрузки:
Балансировщик нагрузки — NAT с одним IP
Этот метод используется для небольших внедрений кластеров в ситуациях, когда фронтенд-серверы не имеют прямого доступа к Интернет, и трансляцию сетевых адресов для них выполняет сам балансировщик нагрузки.
Сначала выберите «виртуальный» IP-адрес (VIP) — это единственный адрес, который будут «видеть» пользователи SIP вашего кластера:
назначьте VIP-адрес балансировщику нагрузки
выберите имя в DNS для «SIP-услуг» (такое, как *sip.*mysystem.com) и создайте для этого имени в DNS A- или AAAA- записи, указывающие на VIP-адрес.
создайте DNS SIP SRV запись для всех доменов кластера, указывающую на доменное имя, выбранное для «SIP-услуг».
откройте в веб-интерфейсе администратора CommuniGate Pro в разделе «установки» страницу «сеть» и укажите VIP-адрес как общекластерный IP-адрес WAN; оставьте поле общесерверного IP-адреса WAN пустым.
Фронтенд-серверы имеют IP-адреса F1,F2, F3, ...
Настройте балансировщик нагрузки на обработку входящих UDP-пакетов, получаемых на этот VIP-адрес и порт номер 5060:
входящие пакеты должна равномерно распределяться на адреса фронтенд-серверов F1, F2, F3, везде на порт 5060.
Балансировщик нагрузки не должен использовать никакую специфическую для SIP-логику обработки таких пакетов; если ваш балансировщик нагрузки имеет какие-либо специфические опции для обработки SIP-трафика, то убедитесь, что они выключены. Некоторые балансировщики нагрузки по умолчанию обрабатывают порт 5060 с учётом специфики SIP: уточните этот момент у производителя вашего балансировщика нагрузки.
входящие пакеты не должны создавать «сессию» в балансировщике нагрузки, то есть, он не должен хранить информацию об UDP-пакете после того, как пакет был направлен на какой-либо фронтенд-сервер.
Специфические для SIP-техники, реализованные в некоторых балансировщиках нагрузки, позволяют им отправлять «связанные» между собой запросы на один сервер. Обычно такие техники основываются на поле запроса Call-ID и очень часто работают некорректно. Технология SIP-фермы, используемая в CommuniGate Pro, гарантирует правильную обработку запросов, если запрос или пакет с ответом получены любым из членов SIP-фермы. Следовательно, CommuniGate Pro не требует использования в балансировщике нагрузки специфических для SIP техник.
Многие балансировщики нагрузки, даже если они и не используют никакую специфичную SIP-технику, создают «привязку к сессии» для входящих UDP-запросов, точно также, как они обрабатывают входящие TCP-соединения.
Таблица привязки для произвольного порта балансировщика нагрузки v (и VIP-адреса балансировщик нагрузки) содержит пару из IP-адреса и порта:
X:x <-> F1:f
Где X:x является IP-адресом удалённого (отправляющего) устройства, а F1:f является IP-адресом и номером порта фронтенд-сервера, на которые направляется входящий пакет.
Когда удалённое устройство пересылает запрос, эта запись в таблице позволяет балансировщику нагрузки отправлять запрос на тот же фронтенд-сервер (обратите внимание, что это не требуется для SIP-фермы CommuniGate Pro).
Эти балансировщики нагрузки обычно создают «привязку к сессии» также и для исходящих UDP-запросов: когда пакет отправляется с адреса / порта какого-либо фронтенд-сервера F2:f на какой-нибудь удалённый адрес / порт Y:y, в таблице привязки балансировщика нагрузки создаётся запись:
Y:y <-> F2:f
Когда удалённое устройство отправляет пакет с ответом, эта запись в таблице позволяет балансировщику нагрузки отправить ответ на «правильный» фронтенд-сервер (обратите внимание, что это не требуется для SIP-фермы CommuniGate Pro).
SIP-ферма CommuniGate Pro распределяет пакеты SIP-запросов, ретранслируя их между фронтенд-серверами в соответствии с алгоритмами работы SIP-фермы; такие алгоритмы перенаправляют пакеты с ответами SIP на фронтенд-сервер, отправивший соответствующий SIP-запрос.
Эти возможности SIP-фермы CommuniGate Pro делают бесполезным использование таблицы «привязки сессии» балансировщика нагрузки (при использовании SIP UDP)
«Привязка к сессии» балансировщика нагрузки должна быть выключена (для SIP UDP), потому что это не только создаёт излишнюю нагрузку, но и зачастую портит адрес исходящего SIP-пакета:
Когда балансировщик нагрузки получает пакет с SIP-запросом от адреса X:x и ретранслирует его на адрес / порт фронтенд-сервера F1:5060, то SIP-ферма может ретранслировать этот запрос далее на какой-либо другой фронтенд-сервер (на адрес / порт F2:5060), где и будет создана транзакция SIP-сервера и обработан запрос.
Ответы SIP будут генерироваться на этом фронтенд-сервере, и пакеты с ответами SIP будут отправляться на X:x с адреса / порта F2:5060 (через балансировщик нагрузки).
Если балансировщик нагрузки не использует «привязку к сессии», то он должен просто изменить адрес источника пакета с F2:5060 на VIP:5060 и направить пакет на адрес X:x.
Если балансировщик нагрузки использует «привязку к сессии» для UDP, то он ожидает увидеть пакет с откликом только с адреса F1:5060; затем он, изменив адрес источника пакета с откликом с F1:5060 на VIP:5060, отправит его на X:x.
Пакеты от других серверов (которые не имеют «привязки к сессии») обрабатываются как «исходящие пакеты», и балансировщик нагрузки для них строит новую «привязку к сессии» (смотрите выше). В нашем случае, когда балансировщик нагрузки отправляет запрос от X:x на F1:5060, а ответ получает с F2:5060, он создаст вторую «привязку к сессии»:
X:x <-> F1:5060X:x <-> F2:5060
Для большинства балансировщиков нагрузки это приведёт к конфликтам «привязки к сессии», и для разрешения таких конфликтов балансировщик нагрузки будет использовать техники NAT и изменять не только адрес источника исходящего пакета, но также и порт источника и, таким образом, пакет на X:x будет отправляться с адресом источника не VIP:5060, а VIP:5061 (или любым другим портом, используемым балансировщиком нагрузки для NAT). Многие SIP-устройства, и почти все SIP-устройства, находящиеся за межсетевыми экранами, не будут принимать ответы с адреса / порта VIP:5061, если они ранее отправляли запросы на адрес / порт VIP:5060.
Чтобы избежать появления вышеописанных проблем, уточните у производителя вашего балансировщика нагрузки что балансировщик нагрузки действительно не использует «привязку к сессии» для UDP-порта 5060.
Балансировщик нагрузки — NAT с несколькими IP
В этой конфигурации фронтенд-серверы имеют прямой доступ к Интернет (у них есть IP-адреса, напрямую «видимые» из Интернет).
Балансировщик нагрузки перенаправляет запросы на эти реальные F1, F2, F3... адреса фронтенд-серверов.
Балансировщик нагрузки должен быть реализован как коммутатор, так, чтобы исходящий с фронтенд-серверов трафик проходил через балансировщик нагрузки.
Балансировщик нагрузки должен изменять источник IP-адресов всех исходящих SIP UDP-пакетов, приходящих от фронтенд-серверов (от Fn:5060) на VIP:5060.
Балансировщики нагрузки с «привязкой к сессии» UDP будут иметь такие же проблемы, как описано выше.
Балансировщик нагрузки DSR
DSR (Direct Server Response, прямой ответ сервера) является наиболее предпочтительным методом балансировки нагрузки при крупных установках.
Для использования DSR метода создайте «псевдоним» для сетевого интерфейса «внутренней петли» (loopback network interface) каждого фронтенд-сервера. Стандартным адресом для внутренней петли является 127.0.0.1; создайте для неё псевдоним с VIP-адресом и маской сети 255.255.255.255:
Solaris
ifconfig lo0:1 plumb ifconfig lo0:1 VIP netmask 255.255.255.255 up
Чтобы сделать эту конфигурацию постоянной, создайте файл /etc/hostname.lo0:1 с VIP-адресом в нём.
Linux
ifconfig lo:0 VIP netmask 255.255.255.255 up
Чтобы сделать эту конфигурацию постоянной, создайте файл /etc/sysconfig/network-scripts/ifcfg-lo:0:
DEVICE=lo IPADDR=VIP NETMASK=255.255.255.255 ONBOOT=yes
Убедитесь, что ядро настроено так, что оно не рассылает ARP для этого lo интерфейса (так что VIP-адреса не связаны ни с каким фронтенд-сервером в arp-таблицах). В зависимости от версии ядра Linux, следующие в файл /etc/sysctl.conf должны быть добавлены следующие команды:
# ARP: reply only if the target IP address is # a local address configured on the incoming interface net.ipv4.conf.all.arp_ignore = 1 # # When an arp request is received on eth0, only respond # if that address is configured on eth0. net.ipv4.conf.eth0.arp_ignore = 1 # # Enable configuration of arp_announce option net.ipv4.conf.all.arp_announce = 2 # When making an ARP request sent through eth0, always use an address # that is configured on eth0 as the source address of the ARP request. net.ipv4.conf.eth0.arp_announce = 2 # # Repeat for eth1, eth2 (if exist) #net.ipv4.conf.eth1.arp_ignore = 1 #net.ipv4.conf.eth1.arp_announce = 2 #net.ipv4.conf.eth2.arp_ignore = 1 #net.ipv4.conf.eth2.arp_announce = 2
FreeBSD
Чтобы сделать эти изменения в конфигурации постоянными, добавьте следующую строку в файл /etc/rc.conf:
ifconfig_lo0_alias0="inet VIP netmask 255.255.255.255"
Другие ОС
Уточните у производителя ОС
Если создаётся «псевдоним», то фронтенд-серверы не отвечают на «arp» запросы на этот VIP-адрес и все пакеты, направляемые на VIP-адрес, будут перенаправлены на балансировщик нагрузки.
Если балансировщик нагрузки использует DSR-метод, то он не изменяет IP-адрес назначения (VIP) у входящих пакетов. Вместо этого, балансировщик нагрузки перенаправляет пакеты при помощи адреса физического уровня сети (MAC) выбранного фронтенд-сервера.
По причине того, что у фронтенд-сервера на одном из его сетевых интерфейсов задан VIP-адрес (на интерфейсе внутренней петли), он принимает эти пакеты как локальные и передаёт их приложению, «слушающее» указанные TCP или UDP-порт.
Из-за того, что у фронтенд-сервера на одном из его сетевых интерфейсов задан VIP-адрес, ответы и другие исходящие пакеты могут быть отправлены с использованием VIP-адреса в качестве адреса источника. Если эти пакеты проходят через балансировщик нагрузки (а они могут не проходить через него), то он не должен их изменять никаким образом.
Обратите внимание: из-за того, что для перенаправления входящих пакетов используются MAC-адреса, балансировщик нагрузки и все фронтенд-сервера должны входить в один сегмент сети; между балансировщиком нагрузки и фронтенд-серверами не должно быть маршрутизатора.
Обратите внимание: при создании сетевого «псевдонима», откройте через веб-интерфейс администратора CommuniGate Pro в разделе «общее» страницу «информация» и нажмите на кнопку «обновить», чтобы сервер мог обнаружить добавленный IP-адрес.
DSR-метод прозрачен для всех сервисов, работающих через TCP (включая SIP через TCP/TLS) и для него не требуются никакие дополнительные настройки сервера CommuniGate Pro: когда на локальный VIP-адрес принимается TCP-соединение, исходящие пакеты для такого соединения будут всегда иметь в качестве адреса источника тот же самый VIP-адрес.
Чтобы использовать DSR-метод для SIP UDP, конфигурация фронтенд-серверов CommuniGate Pro должна быть изменена:
через веб-интерфейс администратора откройте раздел «установки». В разделе Real-Time откройте страницу «SIP», затем откройте страницу «транспорт»,
нажмите на ссылку «UDP-приёмник», чтобы открыть страницу приёмника
по умолчанию приёмник SIP UDP имеет один сокет: он принимает «все адреса» на порту 5060,
измените настройку, изменив значение «все адреса» на значение VIP (адрес VIP должен быть доступен для выбора из меню),
нажмите на кнопку «модифицировать»,
создайте дополнительный сокет для получения входящих пакетов на порт 5060, «все адреса» и нажмите на кнопку «модифицировать»,
Теперь у вас есть два сокета — первый для VIP:5060, а второй для все адреса:5060; при необходимости фронтенд-сервер может использовать первый сокет для отправки пакетов с VIP-адресом в качестве адреса источника.
Повторите эти изменения в настройке для всех фронтенд-серверов.
RTP-медиа
Каждый медиапоток, терминируемый CommuniGate Pro (поток, ретранслируемый при помощи медиапрокси или поток, обрабатываемый в канале медиамиксера) связывается с конкретным членом кластера. Балансировщик нагрузки должен гарантировать, что все входящие медиапакеты доставляются надлежащему члену кластера.
Метод с одним IP
Метод «с одним IP» целесообразно применять при небольших и средних установках.
Члены кластера имеют внутренние адреса L1, L1, L3 и т.д.
Балансировщик нагрузки имеет внешний адрес G0.
Сетевые настройки каждого члена кластера изменяются таким образом, чтобы медиапорты, используемые каждым членом, были различны: порты 10000-19999 у члена L1, порты 20000-29999 у члена L2, порты 30000-39999 у члена L2 и т.д.
Все пакеты, приходящие на адрес G0 на стандартный порт (5060 для SIP) распределяются по адресам L1, L2, L3, на эти же порты.
Все пакеты, приходящие на адрес G0 на медиапорты распространяются в соответствии с диапазоном портов:
пакеты, приходящие на порты 10000-19999 направляются на адрес L1 (без изменения номеров портов)
пакеты, приходящие на порты 20000-29999 направляются на адрес L2 (без изменения номеров портов)
пакеты, приходящие на порты 30000-39999 направляются на адрес L3 (без изменения номеров портов)
Настойка общесерверного адреса WAN IP должна быть пустой у всех членов кластера.
Настройка общекластерного адреса WAN IP должна быть установлена в адрес G0.
Этот метод не должен использоваться при больших установках (за исключением случаев, когда сервер не терминирует медиа вообще или терминирует очень в небольших количествах): он позволяет вам разместить только 64000 портов для всех медиапотоков кластера (каждый AVP-поток забирает 2 порта, так что общее число аудио потоков ограничено 32000, а если используется видео (вместе с аудио), то такой кластер не сможет обслуживать более чем 16000 одновременных аудио- / видеосессий.
Балансировщик нагрузки с несколькими IP без NAT
Метод «с несколькими IP» полезен в случае крупных установок. Каждый фронтенд-сервер имеет свой собственный IP-адрес и при создании на фронтенд-сервере медиаканала или медиапрокси, этот уникальный IP-адрес используется для прямой коммуникации между сервером и клиентским устройством (или удалённым сервером).
Сетевые настройки каждого члена кластера могут использовать одинаковые диапазоны медиапортов, и, таким образом, число одновременных потоков не ограничивается 64000 портами.
В простейшем случае все фронтенд-серверы имеют «реальные» IP-адреса, то есть они соединены непосредственно с Интернет.
Если балансировщик нагрузки использует DSR-метод (смотрите выше), то он не должен заботится о пакетах, отправляемых не с VIP-адресов фронтенд-серверов: эти пакеты должны либо проходить мимо балансировщика нагрузки, либо он не должен модифицировать их и должен доставлять «как есть».
Если балансировщик нагрузки использует «нормальный» метод, то он должен быть настроен на обработку только тех портов, по которым производится «балансировка нагрузки»; пакеты, поступающие от / на «других портов» (такие, как порты из диапазона медиапортов) должны передаваться балансировщиком нагрузки без каких бы то ни было модификаций.
Метод с несколькими IP с NAT
Можно использовать метод с несколькими IP даже если фронтенд-серверы не имеют «реальных» IP-адресов, а используют адреса «локального типа» L1, L1, L3 и т.д.
Настройте балансировщик нагрузки на использование реальных адресов G1, G2, G3, ... — в дополнение к VIP IP-адресу, используемому для доступа к сервисам CommuniGate Pro.
Настройте балансировщик нагрузки на «отображение» его внешнего IP-адреса G1 на адрес фронтенд-сервера L1, так, чтобы все пакеты, приходящие на IP адрес G1, порт g (G1:g) направлялись на фронтенд-сервер с адресом L1 и тот же самый порт g (L1:g). Балансировщик нагрузки может изменять пакеты для адреса назначения на L1 или оставлять их как есть (G1); когда балансировщик нагрузки получает пакет от адреса L1, порт l (L1:l) и этот порт не используется в операциях, по которым балансируется нагрузка (SMTP, POP, IMAP, SIP и т.д), то балансировщик нагрузки должен перенаправлять этот пакет наружу, заменяя адрес источника L1 на G1: L1:l->G1:l.
Настройте балансировщик нагрузки аналогичным образом на «отображение» его внешних IP-адресов G2, G3, ... на другие IP-адреса фронтенд-серверов L2, L3, ...
В разделе «установки» в веб-интерфейсе администратора произведите соответствующие настройки фронтенд-серверов CommuniGate Pro. Откройте страницы «сеть», и укажите там «отображаемые» IP-адреса как общесерверные WAN IP-адреса: G1 для фронтенд-сервера, имеющего IP-адрес L1, G2 для фронтенд-сервера, имеющего IP-адрес L2 и т.д.