По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
FHRP (Протокол резервирования первого перехода) - это группа протоколов способные обеспечить клиентов отказоустойчивым шлюзом. Что за первый переход такой?. У нас есть коммутируемая среда (SW1) и есть Internet . Internet это маршрутизируемая среда . И для того чтобы перейти из коммутируемой среды , в маршрутизируемую среду для того чтобы выйти в интернет , как раз эти роутеры(R1,R2,VR - Virtual Router) обеспечивают данный переход и для того ,чтобы обеспечить отказоустойчивость этого перехода , его нужно резервировать . А потому и называется протоколы резервирования первого перехода. И все протоколы группы FHRP будут работать в единой логике: R1 , R2 будут прикидываться VR и в случае отказа одного из маршрутизаторов, то его работу возьмет другой. Forwarding Router ( FR ) - это роутер ,который данный момент активен и маршрутизирует трафик . Standby Router ( SR ) - это роутер ,который стоит в резерве и ждет , когда накроется FR ,чтобы перехватите его работу на себя , в случае сбоя маршрутизатора. FHRPs - это группа ,а значит пришло время познакомить вас с этими протоколами. HSRP (Hot Standby Router Protocol) - Проприетарный протокол разработанный Cisco; VRRP (Virtual Router Redundancy Protocol) - Свободный протокол ,сделан на основе HSRP; GLBP (Gateway Load Balancing Protocol) - Проприетарный протоколCisco , обеспечивающий распределение нагрузки на несколько маршрутизаторов( шлюзов) используя 1 виртуальный адрес. CARP( Common Address Redundancy Protocol) - свободный , разработан как часть OpenBSD , портирован во FreeBSD. Итак начнём с HSRP Протокол HSRP рассчитан на 2 роутера, 3 это уже лишний и с этим уже справиться протокол GLBP Предположим ,что R1 это маршрутизатор выхода в интернет и для этого мы поднимем на нём Loopback 1 с адресом 200.200.200.200 и пропишем его в маршруте по умолчанию. Между маршрутизаторами будет настроен RIPv2 и будут анонсированы 2 классовые сети( network 10.0.0.0 и network 192.168.0.0) для простоты анонсирования маршрутов. R2,R1 настраивается также. А теперь по порядку , настроим HSRP: R1(config)# interface e 0/0 - переходим на интерфейс ethernet 0/0 (этот интерфейс смотрит в локальную сеть на коммутатор ) R1(config-if)# ip address 192.168.0.2 255.255.255.0 - задаем ip адрес для физического интерфейса R1(config-if)# standby 1 ip 192.168.0.254 - задаем виртуальный ip адрес (который будет основным шлюзом для свитчей, смотрящих на конфигурируемый роутер). У обоих роутеров он одинаковый R1(config-if)# stanby 1 priority 110 - устанавливаем приоритет данного роутера в 110 (по умолчанию приоритет 100) R1(config-if)# standby 1 preempt - задаем режим приемтинга R1(config-if)# standby 1 authentication md5 key-string MyPassword - задаем аутентификацию, если необходимо. Пароль будет передаваться с защитой алгоритмом хеширования md5, пароль будет MyPassword R1(config-if)# standby 1 timers 100 255 - регулировка таймеров hsrp, где 100 - hello интервал в секундах (как часто посылаются пакеты hello пакеты keep-alive) и 255 - hold interval в секундах (через какой промежуток времени признавать соседа недоступным) R1(config-if)# standby 1 preempt delay minimum 300 - настройка времени задержки (в секундах), через которое роутер будет становиться главным. Эта команда требуется для того,чтобы сначала отработали другие протоколы,прежде чем заработает HSRP . Пример: OSPF включенный на роутере в большой сети не успеет передать маршруты все ,а тут сразу заработает HSRP ,естественно он знать все маршруты не будет,а значить и стабильно гнать трафик тоже. Как раз время delay он будет использовать для того,чтобы дать OSPF передать все маршруты и после этого вкл HSRP. Сам VPC должен получить следующие настройки: IP : 192.168.0.10/24 GW: 192.168.0.254 Главное ,чтобы клиент был в одной подсети и в качестве шлюза был виртуальный IP адрес. TRACKING Также полезно вешать TRACK на интерфейсы ,так как HSRP работает только в сторону ,куда направлен интерфейс ,то он не сможет отработать,когда упадут линки ,смотрящие на роутеры выше.(в данном случае это R3) Router(config)# track 1 interface fa0/1 line-protocol - отслеживаем состояние интерфейса fa0/1, если он падает, то сработает объект отслеживания track 1. Router(config-if)# standby 1 track 1 decrement 15 - если сработает объект отслеживания track 1, то текущий приоритет будет понижен на 15 единиц. Router(config-if)# standby 1 track 1 fa0/1 20 - работает только в HSRP. Позволяет отслеживать интерфейс без дополнительного создания объекта отслеживания. R1,R2,R0 будут настраиваться одинаково, принцип сохраняется. А теперь нюансы HSRP При работе нескольких VLAN , HSRP может идти трафик не совсем рационально из-за протокола STP. Представим ,что R1 это root primary за 10 VLAN, а R2 это ACTIVE router в HSRP . Это значит ,что любой трафик за этот VLAN будет идти следующим образом:VPC - R2 - R1 - R3 вместо того,чтобы идти напрямую VPC - R1 - R3. (L2 трафик всегда ходит через root во избежание петель) Поэтому рекомендуют использовать HSRP version 2(по умолчанию вкл 1 максимум 255 процессов,а во 2 их 4095) и использовать наилучший приоритет для того роутера, который сейчас в сети root primary за текущий VLAN. И хорошей практикой будет если номер VLAN будет совпадать с номером процесса HSRP. ( № HSRP = VLAN ) 3 Роутера в HSRP не имеет смысла держать,так как он всё равно будет в состоянии Listen и включиться только тогда,если active пропадет, standby займет его место , и только тогда он перейдет в состоянии standby.(речь идет о 3 роутере) Тоже самое будет касаться 4,5 ...n роутеров. SLA Бывает и другая ситуация ,когда не сам линк от R1 падает ,а устройство находящиеся за ним,к примеру SW2 упал link до R3. Проблему способен решить сервис SLA - Service Level Agreement. Суть его проста,он ping сервис до провайдера и если он падает ,то отрабатывает track. R1(config)# ip sla 1 - создаем зонд R1(config-ip-sla)# icmp-echo 215.215.215.2 source-interface e0/2 - посылаем icmp echo ping на 215.215.215.2 R1(config-ip-sla-echo)# frequency 10 - посылаем icmp echo ping с частотой каждые 10 секунд R1(config)# ip sla schedule 1 start-time now life forever - задаем расписание работы ip sla. В данном случае зон будет запущен прямо сейчас, при этом время окончания не задано (навсегда) R1(config)# track 1 ip sla 1 reachability - устанавливаем объект отслеживания на доступность того хоста, на который посылаем icmp echo ping R1(config)# ip route 0.0.0.0 0.0.0.0 2.2.2.2 track 1 - направляем трафик по этому маршруту если объект трекинга track 1 работает (хост пингуется) R1(config)# ip route 0.0.0.0 0.0.0.0 3.3.3.3 10 - если не пингуется, направляем трафик в интернет по другому маршруту (Внимание! Здесь важно задать именно плохую метрику, например 10, иначе будут работать оба маршрута! (балансировка)) R1# show track 1 - показать состояние объекта отслеживания VRRP Настройка VRRP не сильно отличается от HSRP . Настраивается он также как и HSRP, только вместо standby используется vrrp. Router(config-if)# vrrp 1 ip 192.168.1.1 - включение vrrp. Проще пройтись по отличиям ,чем заново описывать все команды. У VRRP тоже только 2 состояния Master и Backup(HSRP active и standby) Preempt включен по умолчанию (HSRP он отключен) При падении линка VRRP проводит выборы роутера(HSRP имеет запасной). Главного выбирают по IP адресу, когда проводят выборы. Поддержка Аутентификации в VRRP отсутствует (RFC отсутствует),но в Cisco она реализована(HSRP по умолчанию) VRRP по умолчанию hello таймер равен 1 секунде , dead таймер равен 3(у HSRP 3 и 10 соответственно) Виртуальный адрес может совпадать с адресом интерфейса(HSRP такой адрес не даст прописать) Использует Multicast HSRP равен 224.0.0.2 ( version 1) 224.0.0.102 (version 2) ,а VRRP 224.0.0.18 Может отслеживать только объекты , а HSRP и интерфейсы , и объекты.(смотри раздел tracking) Диагностика Router# show standby (vrrp or glbp) - показать общую информацию по протоколу группы FHRP Router# show standby brief - показать информацию по протоколу группы FHRP в виде таблицы
img
Привет, дорогой читатель! На этапе траблшутинга системные администраторы прибегают к просмотру и анализу лог – файлов Asterisk. В статье поговорим про причины отбоя вызова (hangupcause) в Asterisk, как их найти в лог – файле и что они означают. Поиск Hangupcause Подключаемся к нашему серверу IP – АТС по SSH. Открываем консоль и вводим следующую команду: [root@asterisk ~]# grep -e '[CALLID].*HANGUPCAUSE' /var/log/asterisk/full Здесь CALLID - это идентификатор вызова. Найти его очень просто. В лог – файле введите номер звонящего/вызываемого абонента и найдете примерно вот такую запись (в примере поиск осуществляется по номеру 89123456789): [2017-02-08 18:58:03] VERBOSE[18823][C-00000009] pbx.c: Executing [recordcheck@sub-record-check:11] Goto("Local/89123456789@from-internal-00000007;2", "startrec") in new stack Находим запись выше. Здесь, [C-00000009] - является идентификатором вызова. После того, как Вы нашли hangupcause, его необходимо понять. Переходим к следующему шагу – интерпретация. Все причины отбоя вызова в Asterisk Ниже, в таблице, мы составили причины отбоя вызова и соответствующие для них коды SIP ответов с небольшим описанием: Код отбоя (hangupcause) Полученный SIP - ответ Описание 1 410 Unallocated (unassigned) - неназначенный номер. Данная ошибка указывает, что вызываемый номер назначения не может быть вызван, по причине отсутствия маршрута до него. Как правило, данную ошибку возвращает провайдер телефонных услуг. Например, при звонка зарубеж, данная ошибка может возвращаться из-за отсутствия маршрута к номеру назначения. 2 500 No route to specified transit network - ошибка индицирует о том, что оборудование, сгенерировавшее данную ошибку получило запрос запрос на маршрутизацию вызова через неизвестную ей транзитную сеть. Вполне возможно, что данная сеть в целом не существует. 3 404 No route to destination - чисто "сетевая" ошибка. Обозначает отсутствие коннективити (маршрутизации) между сетями инициатора вызова и вызываемого абонента. 4 500 Send special information tone - вызываемый абонент не может быть вызван по причинам "долгосрочного характера", и звонящий должен получить специальный звуковой тон. 5 500 Misdialled trunk prefix - сигнализирует о том, что к вызываемому номеру был подставлен ошибочный телефонный префикс. 6 500 Channel unacceptable - проблемы на канале связи. Как правило это сетевая проблема. 7 500 Call awarded and being delivered in an established channel - индикация того, что пользователь получил входящий вызов и что пользователь уже имеет аналогичный вызов 8 500 Prefix 0 dialed but not allowed - префикс в начале номер "0" не разрешен 9 500 Prefix 1 dialed but not allowed - префикс в начале номер "1" не разрешен 10 — Prefix 1 not dialed but required - префикс "1" подставлен в начало номера, но не является требованием 11 — More digits received than allowed, call is proceeding - в вызываемом номере передано больше цифр, чем позволено на оборудовании передающим данный код отбоя 16 BYE Normal call clearing - вызов был закончен естественным образом (кто - то из абонентов положил трубку) 17 486 User busy - индицирует, что вызываемый абонент не может принять вызов, так как находится в состоянии "Занят" (есть активный разговор) 18 480 No user responding - вызываемый абонент не ответил на сообщение о вызове (инициации) в течение определенного времени 19 480 T.301 expired: – User Alerted, No answer from user - аппарат вызываемого абонента звонил, но он не ответил на звонок 21 603 Call rejected - вызов отклонен 22 480 Number changed to number in diagnostic field - индицирует о том, что вызываемый номер более не существует. В сообщение так же может быть включен новый номер вызываемого абонента 23 — Reverse charging rejected - вариант, когда за звонок платит принимающая вызов сторона. Данное сообщение обозначает отклонение такого вызова. 24 — Call suspended - оборудование получило запрос на приостановку вызова 25 — Call resumed - вызов возобновлен (продолжение 24 отбоя) 26 500 Non-selected user clearing - пользователю не был назначен входящий вызов 27 404 Destination out of order - данное сообщение индицирует о том, что телефонная сигнализация не может быть доставлена через выбранный NIC (сетевой интерфейс). В данном случае, проблема скорее всего кроется на L1 или на L2 уровне (физический или канальный) 28 484 Invalid number format or incomplete address - неправильный формат вызываемого номера или номер указан не полностью 29 501 EKTS facility rejected by network - проблема на уровне платы - устройство отклонено на уровне сети 30 500 Response to STATUS ENQUIRY - сообщение ответ на запрос о состоянии 31 404 Normal, unspecified - эта причина отбоя используется в случае, если другие причины (более конкретные) не были применены 33 — Circuit out of order - построенный канал связи вышел из строя 34 503 No circuit/channel available - нет доступного для установления соединения канала связи 35 500 Destination unattainable - нет возможности доставить сообщение до получателя 36 500 Out of order - объект функционирует не корректно 37 500 Degraded service - уведомление о том, что сервис находится в некорректном состоянии 38 503 Network out of order - сетевое соединение функционирует не корректно (вероятная проблема на уровне L3) 39 500 Transit delay range cannot be achieved - требуемый диапазон задержки (время обработки, передачи) не может быть достигнут 40 500 Throughput range cannot be achieved - требуемый диапазон пропускной способности (передача сообщения) не может быть достигнута 41 503 Temporary failure - временная неработоспособность сервиса. "Временная" означает то, что пользователь может попробовать еще раз через некоторое время 42 503 Switching equipment congestion - в настоящее время, оборудование коммутации испытывает пиковые значения нагрузки и не может обработать запрос 43 500 Access information discarded - данная причина индицирует о том, что по запросу сеть (L3) не может доставить информацию о доступе к удаленному пользователю 44 503 Requested circuit channel not available - запрошенный канал связи недоступен 45 500 Preempted - данная причина указывает на то, что вызов был прерван 46 500 Precedence call blocked - означает, что вызываемый пользователь занят вызовов с более высоким приоритетом 47 503 Resource unavailable, unspecified - причина, отправляемая в том случае, если ни одна другая не была отправлена 49 500 Quality of service unavailable - использование QoS требование не доступно 50 500 Requested facility not subscribed - пользователь запросил услугу, которую он не может получить по причине отсутствия доступа к ней 51 — Reverse charging not allowed - вариант, когда за звонок платит принимающая вызов сторона не разрешен для данного пользователя 52 — Outgoing calls barred - исходящий вызов запрещен для абонента 53 500 Outgoing calls barred within CUG - данная причина означает, что несмотря то, что пользователь является членом закрытой группы юзеров (CUG - Closed User Groups) для совершения исходящего вызова, ему данная итерация запрещена 54 — Incoming calls barred - входящий вызов запрещен для абонента 55 603 Incoming calls barred within CUG - данная причина означает, что несмотря то, что пользователь является членом закрытой группы юзеров (CUG - Closed User Groups) для приема входящего вызова, ему данная итерация запрещена 56 — Call waiting not subscribed - пользователь не имеет права (не подписан) на услугу "Ожидание вызова" 57 501 Bearer capability not authorized - пользователь запросил расширение пропускной способности канала до оборудования, но не имеет права на подобные итерации 58 501 Bearer capability not presently available - пользователь запросил расширение пропускной способности канала до оборудования, но в данный момент данная функция не доступна 63 503 Service or option not available, unspecified - сообщение сообщает о недоступности услуги в том случае, если другие причины (более конкретные) не были отправлены пользователю 65 501 Bearer service not implemented - служба передачи (переноса) информации не реализована 66 500 Channel type not implemented - устройство, посылающее данную причину не поддерживает указанный типа канала связи 67 — Transit network selection not implemented - не удалось совершить выбор транзитной сети 68 — Message not implemented - данное сообщение не реализовано 69 500 Requested facility not implemented - эта причина указывает на то, что устройство, отсылающее эту причину не поддерживает запрашиваемые дополнительные услуги 70 500 Only restricted digital information bearer capability is available - данное сообщение указывает на то, что пользователь запросил неограниченный доступ к пропускной способности канала связи, но устройство поддерживает только с ограничениями 79 501 Service or option not implemented, unspecified - услуга или опция не реализована (когда другие причины не были отправлены) 81 500 Invalid call reference value - эта причина указывает на то, что устройство, отсылающее эту причину, получило сообщение с идентификатором вызова, который в настоящее время не используется на интерфейсе сети пользователя 82 500 Identified channel does not exist - эта причина указывает на то, что устройство, отсылающее эту причину, получило запрос на использование канала, который не активизирован на сетевом интерфейсе. Например, если пользователь использует в потоке Е1 (PRI) тайм – слоты с 1 по 12, а запросил использовать с 3 по 24 – будет сгенерирована данная причина 83 500 A suspended call exists, but this call identity does not - вызов существует, но отсутствуют идентификаторы для него 84 500 Call identity in use - оборудование получило запрос на приостановление вызова, содержащий идентификатор вызова, под которым вызов уже значится приостановленным 85 500 No call suspended - получен запрос на возобновление вызова с идентификатором звонка, который не числится в списке приостановленных 86 500 Call having the requested call identity has been cleared - получен запрос на возобновление вызова с идентификатором звонка, который был прерван в результате тайм - аута 87 603 Called user not member of CUG - вызываемый абонент не является членом закрытой группы юзеров (CUG - Closed User Groups) 88 404 Incompatible destination - система получила запрос на установление соединения с параметрами, которые не могут быть обслужены 89 — Non-existent abbreviated address entry - не существующий адрес 90 500 Destination address missing, and direct call not subscribed - адрес назначения не указан, а опция директивного вызова недоступна для пользователя 91 500 Invalid transit network selection (national use) - получен индикатор транзитной сети, который имеет неверный формат (в рамках рекомендации Q.931) 92 — Invalid facility parameter 93 Mandatory information element is missing - обязательный элемент информационного сообщения отсутствует 93 500 Message type non-existent or not implemented - получено устройством сообщение не может быть интерпретировано на оборудовании 95 404 Invalid message, unspecified - неправильное сообщение. Используется только тогда, когда другие (более конкретные сообщения) не были отправлены 96 500 Mandatory information element is missing - в полученном оборудованием сообщение отсутствует важное для его обработки поле 97 500 Message type non-existent or not implemented - тоже самое что и 93 код 98 500 Message not compatible with call state or message type non-existent or not implemented - сообщение не совместимо с текущим состоянием звонка или не может быть интерпретировано оборудованием 99 500 Information element nonexistent or not implemented - информационный элемент не существует или не может быть интерпретирован оборудованием 100 500 Invalid information element contents - элемент не может быть интерпретирован. Помимо этого, одно или более полей сообщения были закодировано алгоритмом, который не поддерживает оборудованием. 101 500 Message not compatible with call state - полученное сообщение не соответствует состоянию вызова 102 408 Recovery on timer expiry - процедура восстановления по причине тайм - аута параллельно с алгоритмами обработки ошибок 103 500 Parameter non-existent or not implemented – passed on - параметр не существует или не реализован на оборудовании 111 404 Protocol error, unspecified - ошибка, которая отправляется в случае, если более детальное сообщение не было отправлено 127 500 Internetworking, unspecified - на этапе установления соединения произошел сбой
img
Nginx - это популярный HTTP-веб-сервер с открытым исходным кодом. Программное обеспечение использует масштабируемую управляемую событиями асинхронную архитектуру, которая обрабатывает запросы по одному за раз. Помимо веб-сервера, он также работает в качестве обратного прокси-сервера, почтового прокси, HTTP-кэша и балансировщика нагрузки. Nginx является частью стека LEMP, набора программного обеспечения с открытым исходным кодом, используемого для разработки веб-приложений и веб-сайтов. LEMP является популярной альтернативой традиционному стеку LAMP. Единственная разница между ними состоит в том, что первый использует Nginx, а второй использует Apache в качестве своего веб-сервера. Мы уже рассказывали как установить Nginx на Windows. В этом руководстве вы узнаете, как установить Nginx на Linux. Установка Nginx Рассмотрим установку Nginx для разных дистрибутивов Linux. Установка Nginx на CentOS 8 Перед любой установкой всегда обновляйте локальный репозиторий, чтобы убедиться, что вы загружаете последнюю версию программного обеспечения. Используйте команду: sudo yum update Вы можете проверить пакет Nginx, прежде чем добавить его в свою систему. Запросите просмотр метаданных RPM, включенных в каждый пакет RPM: sudo yum info nginx Затем установите Nginx на CentOS 8 с помощью команды: sudo yum install nginx Установка Nginx на CentOS 7 Пакеты Nginx доступны в репозиториях EPEL. Если у вас не установлено хранилище EPEL, наберите: sudo yum install epel-release Затем установите Nginx при помощи команды: sudo yum install nginx Если вы устанавливаете пакет из EPEL в первый раз, то yum может предложить вам импортировать ключ GPEL EPEL: Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Importing GPG key 0x352C64E5: Userid : "Fedora EPEL (7) " Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5 Package : epel-release-7-9.noarch (@extras) From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Is this ok [y/N]: Тут вам нужно нажать y и затем Enter. Установка Nginx на Ubuntu и Debian Пакеты Nginx доступны в репозиториях Ubuntu и Debian по умолчанию. Поэтому для установки сначала обновим список пакетов: sudo apt update А затем установим сам Nginx: sudo apt install nginx Запуск nginx Запуск nginx осуществляется следующей командой: sudo systemctl start nginx Чтобы включать службу при загрузке системы, используйте: sudo systemctl enable nginx Если вы проверите статус сервиса, то в выводе должно быть указано, что Nginx активен - active (running): sudo systemctl status nginx Остановить можно Nginx с помощью команды: sudo systemctl stop nginx Перезапустить Nginx: sudo systemctl restart nginx Перезагрузить файлы конфигурации, не останавливая службу: sudo systemctl reload nginx Настройка firewall Nginx включает в себя служебные файлы firewalld, которые указывают, что служба использует порты 80 (HTTP) и 443 (HTTPS) для веб-трафика. Поэтому вам необходимо открыть и включить эти порты, чтобы разрешить постоянный доступ. Настройка firewall в CentOS Откройте порт HTTP и HTTPS с помощью команд: sudo firewall-cmd --permanent --zone=public --add-service=http --add-service=https sudo firewall-cmd --reload sudo firewall-cmd --list-services --zone=public Настройка firewall в Ubuntu и Debian Если вы используете UFW (Uncomplicated Firewall) для управления брандмауэром, вам необходимо открыть порты, включив профиль Nginx Full, который включает правила для обоих портов: sudo ufw allow 'Nginx Full' Если вы используете nftables, то используйте следующую команду: nft add rule inet filter input tcp dport {80, 443} ct state new,established counter accept Проверка доступа Используйте netstat, чтобы вывести список всех открытых портов и убедиться, что вы успешно открыли 80 и 443: netstat -tulpn Найдите IP-адрес и скопируйте его. Чтобы увидеть IP-адрес вашего сервера, введите в терминале следующую команду: ip addr Затем откройте веб-браузер и вставьте IP-адрес (или имя домена) в строку URL. Откроется страница приветствия Nginx, подтверждающая, что вы успешно установили и настроили сервер. Настройка Nginx Вам не нужно настраивать Nginx после установки. Однако будет полезно знать расположение файлов конфигурации и корневого каталога Nginx на случай, если вам нужно изменить конфигурацию. Если вы хотите изменить файл глобальной конфигурации, вы должны открыть его в текстовом редакторе и применить изменения. Каталог конфигурации Nginx: /etc/nginx Корневой каталог Nginx: /usr/share/nginx/html Основной файл конфигурации: /etc/nginx/nginx.conf Файлы логов Nginx (access.log и error.log): /var/log/nginx/ Теперь вы можете установить корневую директорию вашего домена. Вы можете сделать это в любом месте, которое вы хотите. Наиболее распространенные места включают в себя: /home/user_name/site_name /var/www/site_name /var/www/html/site_name /opt/site_name
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59