EdgeADC Build 4.2.8.1909
Руководство по администрированию EdgeADC
×
Menu

flightPATH

flightPATH - это технология управления трафиком, встроенная в ADC. flightPATH позволяет проверять трафик HTTP и HTTPS в режиме реального времени и выполнять действия в зависимости от условий.
Правила flightPATH должны применяться к VIP, если в правилах используются объекты IP.
Правило траектории полета состоит из четырех элементов:
1.     Details, где вы определяете имя flightPATH и службу, к которой он прикреплен.
2.     Условие(я), которое может быть определено, чтобы вызвать срабатывание правила.
3.     Оценка, позволяющая определять переменные, которые могут быть использованы в рамках Действий
4.     Действия, которые используются для управления тем, что должно произойти при выполнении условий
Подробности
В разделе подробностей отображаются доступные правила flightPATH. В этом разделе можно добавлять новые правила flightPATH и удалять определенные.
Добавление нового правила flightPATH
Поле
Описание
Имя FlightPATH
Это поле предназначено для имени правила flightPATH. Имя, которое вы здесь указываете, появляется в других частях ADC и на него ссылаются.
Применяется к VS
Этот столбец доступен только для чтения и показывает VIP, к которому применяется правило flightPATH.
Описание
Значение, представляющее описание, предоставленное для удобства чтения.
Шаги для добавления правила flightPATH
1.     Сначала нажмите кнопку Добавить новый, расположенную в разделе Подробности.
2.     Введите имя для вашего правила. Пример Auth2
3.     Введите описание вашего правила
4.     После применения правила к службе вы увидите, как в колонке Applied To автоматически заполняются IP-адрес и значение порта.
5.     Не забудьте нажать кнопку "Обновить", чтобы сохранить изменения, а если вы ошиблись, просто нажмите кнопку "Отменить", чтобы вернуться к предыдущему состоянию.
Состояние
Правило flightPATH может содержать любое количество условий. Условия работают по принципу AND, позволяя вам задать условие, при котором срабатывает действие. Если вы хотите использовать условие OR, создайте дополнительное правило flightPATH и примените его к VIP в правильном порядке.
Вы также можете использовать RegEx, выбрав Match RegEx в поле Check и значение RegEx в поле Value. Включение оценки RegEx значительно расширяет возможности flightPATH.
Создание нового условия flightPATH
Состояние
Мы предоставляем несколько условий, предварительно заданных в выпадающем списке, которые охватывают все предусмотренные сценарии. Когда будут добавлены новые условия, они будут доступны через обновления Jetpack.
Доступны следующие варианты:
ПОДРОБНЕЕ
ОПИСАНИЕ
ПРИМЕР
<форма>
HTML-формы используются для передачи данных на сервер
Пример "форма не имеет длины 0".
Местонахождение ГЭП
Сравнивает IP-адрес источника с кодами стран ISO 3166
ГЕО местоположение равно GB, ИЛИ ГЕО местоположение равно Германия
Хозяин
Хост, извлеченный из URL
www.mywebsite.com или 192.168.1.1
Язык
Язык извлекается из HTTP-заголовка language
Это условие приведет к появлению выпадающего списка со списком языков
Метод
Выпадающий список методов HTTP
Выпадающий список, включающий GET, POST и т.д.
IP-адрес происхождения
Если восходящий прокси поддерживает X-Forwarded-for (XFF), он будет использовать истинный адрес происхождения.
IP-адрес клиента. Он также может использовать несколько IP-адресов или подсетей.
10\.1\.2\.* это 10.1.2.0 /24 подсеть10\
.1\.2\.3|10\.1\.2\.4 Используйте | для нескольких IP-адресов
Путь
Путь к веб-сайту
/mywebsite/index.asp
ПОСТ
Метод запроса POST
Проверка данных, загружаемых на веб-сайт
Запрос
Имя и значение запроса, может принимать либо имя запроса, либо также значение
"Best=jetNEXUS", где соответствие - Best, а значение - edgeNEXUS
Строка запроса
Вся строка запроса после символа ?
 
Запрос куки
Имя файла cookie, запрашиваемого клиентом
MS-WSMAN=afYfn1CDqqCDqUD::
Заголовок запроса
Любой заголовок HTTP
Referrer, User-Agent, From, Date
Версия для запросов
Версия HTTP
HTTP/1.0 ИЛИ HTTP/1.1
Орган реагирования
Определяемая пользователем строка в теле ответа
Сервер UP
Код ответа
Код HTTP для ответа
200 OK, 304 Not Modified
Ответное печенье
Имя файла cookie, отправленного сервером
MS-WSMAN=afYfn1CDqqCDqUD::
Заголовок ответа
Любой заголовок HTTP
Referrer, User-Agent, From, Date
Версия ответа
Версия HTTP, отправленная сервером
HTTP/1.0 ИЛИ HTTP/1.1
Источник IP
Либо IP-адрес источника, IP-адрес прокси-сервера или другой агрегированный IP-адрес
ClientIP
, Proxy IP, Firewall IP. Можно также использовать несколько IP и подсетей. Точки необходимо экранировать, так как они являются RegEX. Пример 10\.1\.2\.3 - 10.1.2.3
 
Матч
Поле Match может быть выпадающим или текстовым значением и определяется в зависимости от значения в поле Condition. Например, если условие установлено на Host, поле Match недоступно. Если условие установлено на <form>, поле Match отображается как текстовое поле, а если условие POST, поле Match представляется как выпадающий список, содержащий соответствующие значения.
Доступны следующие варианты:
МАТЧ
ОПИСАНИЕ
ПРИМЕР
Принять
Типы содержимого, которые допустимы
Принять: текст/plain
Accept-Encoding
Допустимые кодировки
Accept-Encoding: <compress | gzip | deflate | sdch | identity>.
Accept-Language
Приемлемые языки для ответа
Язык приема: en-US
Accept-Ranges
Какие типы диапазонов частичного содержимого поддерживает данный сервер
Диапазон приема: байты
Авторизация
Учетные данные для аутентификации по протоколу HTTP
Авторизация: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Зарядка -
Содержит информацию о расходах, связанных с применением запрашиваемого метода
 
Content-Encoding
Тип используемого кодирования
Content-Encoding: gzip
Content-Length
Длина тела ответа в октетах (8-битных байтах)
Content-Length: 348
Content-Type
Тип mime тела запроса (используется с запросами POST и PUT).
Content-Type: application/x-www-form-urlencoded
Печенье
HTTP-куки, ранее отправленные сервером с помощью Set-Cookie (см. ниже).
Cookie: $Version=1; Skin=new;
Дата
Дата и время получения сообщения
Дата = "Дата" ":" HTTP-дата
ETag
Идентификатор для конкретной версии ресурса, часто дайджест сообщения.
ETag: "aed6bdb8e090cd1:0".
С сайта
Адрес электронной почты пользователя, делающего запрос
От: user@example.com
If-Modified-Since
Позволяет возвращать сообщение 304 Not Modified, если содержимое не изменилось
If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT
Last-Modified
Дата последнего изменения для запрашиваемого объекта, в формате RFC 2822
Last-Modified: Tue, 15 Nov 1994 12:45:26 GMT
Pragma
Реализация: Специфические заголовки, которые могут иметь различные эффекты в любой точке цепочки запрос-ответ.
Pragma: no-cache
Реферрер
Адрес предыдущей веб-страницы, с которой была получена ссылка на текущую запрашиваемую страницу
Реферер: HTTP://www.edgenexus.io
Сервер
Имя для сервера
Сервер: Apache/2.4.1 (Unix)
Set-Cookie
HTTP-куки
Set-Cookie: UserID=JohnDoe; Max-Age=3600; Version=1
User-Agent
Строка агента пользователя
User-Agent: Mozilla/5.0 (совместимый; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Варьировать
Сообщает нижестоящим прокси-серверам, как сопоставить заголовки будущих запросов, чтобы решить,
можно ли
использовать кэшированный ответ вместо того, чтобы запрашивать новый ответ
у исходного сервера.
Vary: User-Agent
X-Powered-By
Указывает технологию (например, ASP.NET, PHP, JBoss), поддерживающую веб-приложение
X-Powered-By: PHP/5.4.0
 
Чувства
Поле Sense - это выпадающее булево поле, которое содержит варианты Does или Doesn't.
Проверьте
Поле Проверка позволяет установить контрольные значения для условия.
Доступны следующие варианты: Содержать, Конец, Равный, Существующий, Имеет длину, Соответствует RegEx, Соответствует списку, Начало, Превышает длину
ПРОВЕРЬТЕ
ОПИСАНИЕ
ПРИМЕР
Существовать
Здесь не важна детальность условия, только то, что оно существует/не существует
Хозяин - существует
Начало
Строка начинается со значения
Путь - Does - Start - /secure
Конец
Строка заканчивается значением
Путь - Делает - Конец - .jpg
Содержать
Строка содержит значение
Заголовок запроса - Принимать - Есть - Содержит - изображение
Равный
Строка равна значению
Host - Does - Equal - www.edgenexus.io
Иметь длину
Строка имеет длину, равную значению
Хозяин - Имеет - Длину - 16
www.edgenexus.io = ИСТИНА
www.edgenexus.com = FALSE
Соответствие RegEx
Позволяет ввести полное регулярное выражение, совместимое с Perl
Origin IP - Does - Match Regex - 10\...* | 11\...*
 
Шаги для добавления условия
Добавить новое условие flightPATH очень просто. Пример показан выше.
1.     Нажмите кнопку Добавить новый в области Условие.
2.     Выберите условие из выпадающего списка. В качестве примера возьмем Host. Вы также можете ввести текст в поле, и ADC отобразит значение в выпадающем списке.
3.     Выберите чувство. Например, Does
4.     Выберите проверку. Например, Contain
5.     Выберите значение. Например, mycompany.com
Приведенный выше пример показывает, что есть два условия, оба из которых должны быть ИСТИНОЙ, чтобы правило было выполнено
·     Первое - проверка того, что запрашиваемый объект является изображением
·     Второй проверяет, является ли хост в URL www.imagepool.com.
Оценка
Возможность добавления определяемых переменных - это очень важная возможность. Обычные АЦП предлагают эту возможность с помощью сценариев или опций командной строки, которые не являются идеальными для всех. АЦП позволяет вам определить любое количество переменных с помощью простого в использовании графического интерфейса, как показано и описано ниже.
Определение переменной flightPATH состоит из четырех записей, которые необходимо сделать.
·     Переменная - это имя переменной
·     Источник - выпадающий список возможных точек источника
·     Деталь - выбор значений из выпадающего списка или ручной ввод.
·     Значение - значение, которое хранит переменная, может быть буквенно-цифровым значением или RegEx для тонкой настройки.
Встроенные переменные:
Встроенные переменные уже жестко закодированы, поэтому вам не нужно создавать для них запись оценки.
Вы можете использовать любую из переменных, перечисленных ниже в разделе "Действие".
Объяснение каждой переменной находится в таблице "Условия" выше.
·     Метод = $method$
·     Path = $path$
·     Querystring = $querystring$
·     Sourceip = $sourceip$
·     Код ответа (текст также включает "200 OK") = $resp$
·     Host = $host$
·     Версия = $version$
·     Клиентский порт = $clientport$
·     Clientip = $clientip$
·     Геолокация = $geolocation$"
ДЕЙСТВИЕ
ЦЕЛЬ
Действие = Перенаправление 302
Цель = HTTPs://$host$/404.html
Действие = Журнал
Target = Клиент из $sourceip$:$sourceport$ только что сделал запрос $path$ page
 
Объяснение:
·     Клиент, обращающийся к несуществующей странице, как правило, получает в браузере страницу "Ошибка 404".
·     Вместо этого пользователь перенаправляется на исходное имя хоста, которое он использовал, но неверный путь заменяется на 404.html
·     В Syslog добавляется запись: "Клиент с 154.3.22.14:3454 только что запросил страницу wrong.html".
Действие
Следующим этапом процесса является добавление действия, связанного с правилом и условием flightPATH.
В этом примере мы хотим переписать часть пути URL, чтобы отразить URL, набранный пользователем.
·     Нажмите Добавить новый
·     Выберите Rewrite Path в раскрывающемся меню Action
·     В поле Target введите $path$/myimages
·     Нажмите Обновить
Это действие добавит /myimages к пути, так что окончательный URL станет www.imagepool.com/myimages.
Применение правила flightPATH
Применение любого правила flightPATH осуществляется на вкладке flightPATH каждого VIP/VS.
·     Перейдите в раздел Services > IP Services и выберите VIP, которому вы хотите назначить правило flightPATH.
·     Вы увидите список реальных серверов, показанный ниже
·     Перейдите на вкладку flightPATH
·     Выберите правило flightPATH, которое вы настроили, или одно из предварительно созданных правил. При необходимости можно выбрать несколько правил flightPATH.
·     Перетащите выбранный набор в раздел Applied flightPATHs или нажмите кнопку со стрелкой >>.
·     Правило будет перемещено в правую часть и автоматически применено.