По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Для присоединения к другим телефонным станциям, в SoftX3000 создаются транковые группы разных типов. Для начала рассмотрим порядок создания SIP-транка, который чаще всего используется для подключения небольших АТС предприятий УПАТС. Для начала следует определиться с правилами нумерации транков и сопутствующих записей внутри нашей АТС. Например, пусть SIP-транки будут иметь нумерацию с 1 по 100, транки ОКС-7 со 101 п 199. В рамках одного транка все команды и записи удобно будет вести с одним номером, чтобы было проще ориентироваться в настройках позже. ADD OFC этой командой создаем направление. Здесь параметры имеют следующее назначение: Office direction number порядковый номер направления. На этот номер будем ссылаться в других команда и таблицах. Office direction name название направления. Для удобства идентификации можно указать любое название. Peer office type тип удаленной станции, может принимать значения: PBX - УПАТС СС местная сельская АТС CMPX местная городская и сельская АТС NATT междугородная АТС INTT международная АТС Peer office level - уровень противоположной станции по отношению к текущей. Значения: HIGH выше текущей станции SAME одного уровня LOW ниже текущей ADD SRT создаем подмаршрут, который будет привязан непосредственно к транку. Можно создать несколько подмаршрутов и объединить их в один маршрут: при проблемах с первым подмаршрутом в списке станция будет пытаться использовать следующий. Параметры команды: Sub-route number порядковый номер подмаршрута. Можно установить любой свободный номер, но предпочтительнее, чтобы он совпадал с номером OFC, заданный в предыдущей команде. Office direction number номер OFC, который задан в предыдущей команде. Sub-route name название подмаршрута любое удобное название. ADD RT создаем маршрут, в котором указываем один или несколько подмаршрутов, созданных предыдущей командой. Если указано несколько подмаршрутов, станция будет пытаться использовать первый в списке, если он не доступен, то следующий по списку. Параметры команды: Route number порядковый номер маршрута. Любое число, но, по договоренности, устанавливаем то же значение, что и в командах ранее. Route name произвольное название. 1 st sub-route первый подмаршрут. Указываем номер подмаршрута, созданного в предыдущей команде. Остальные параметры необходимы, если создано несколько подмаршрутов и необходимо настроить параметры выбора между ними. ADD RTANA правило выбора маршрута. Эта таблица определяет по какому маршруту будет направлен вызов, основываясь на многочисленных параметрах вызова, среди которых: категория абонента, тип А-номера, дополнительный атрибут абонента прочие. Параметры команды: Route selection code код выбора маршрута. На этот код ссылается запись в таблице префиксов CNACLD Route selection source code этот код является одним из параметров callsrc. Caller category категория абонента, задается при создании абонента в командах ADD VSBR или ADD MSBR. Caller category категория абонента, устанавливается в командах ADD VSBR или ADD MSBR в параметре Subscriber type. Так же можно применить данное свойство для транзитных вызовов, задав категорию в команде ADD CNACLR. Service attribute указывает, какие типы вызовов могут использовать данный маршрут (INTT - международные, NATT - междугородные, CITY - местные, ALL - любые) Caller access если необходимо, чтобы маршрут могли выбрать только абоненты ISDN, выбрать ISDN, если только не ISDN-абоненты, то NONISDN. Transmission capability тип поддерживаемого трафика (голос, данные, видео и прочее) Time index временной индекс. Если в станции используется маршрутизация по временным меткам. Если не используется, устанавливается значение по-умолчанию 0. Route number номер маршрута, который задан в команде ADD RT. Signaling as prior приоритет выбора подмаршрута в соответствии с типом сигнализации. Nature of callee address indicator тип вызываемого номера (International, National, Subscriber, ALL) Customized caller type дополнительный параметр абонента, который задается в командах ADD VSBR или ADD MSBR (Customized subscriber type) Called number Plan identity план нумерации вызываемого номера. Чтобы вызов прошел по данному маршруту, должны совпасть все условия. Чтобы какое-то условие игнорировалось при выборе маршрута, необходимо установить значение в ALL или значение по-умолчанию. Применение Пример 1 Допустим, у нас есть направление OFC=1, на которое ссылается подмаршрут SRT=1, на который, в свою очередь, ссылается маршрут RT=1. Допустим, это присоединение УПАТС, и все вызовы на это направление с любых источников должны проходить без ограничений. В таком случае создадим правило RTANA со следующими параметрами: В данном случае: Route selection code = 1 код выбора маршрута, который нужно указать в команде ADD CNACLD Route number указание на созданный ранее маршрут RT=1 Route selection source code параметр, задаваемый в callsrc. Значение остальных параметров установлены так, что при их любом значении вызов будет смаршрутизирован. Пример 2 Допустим, направление из предыдущего примера является выходом на оператора междугородной связи и доступ к нему могут получать лишь те абоненты, которые заключили с ним договор. Эти абоненты имеют отличительный признак - Customized subscriber type=8. В таком случае устанавливаем в параметре Customized caller type значение CUST8, и абоненты, у которых этот параметр отличается от CUST8 не смогут использовать данный маршрут. По такому же принципу работает ограничение и по другим параметрам. Пример 3 Если ограничивающие параметры не применимы для вызова (например, Customized subscriber type невозможно задать для вызовов, приходящих с другого транка), то и ограничения данных вызовов не произойдет. Чтобы ограничить транзитные вызовы со входящих транков, необходимо создать дополнительный callsource и задать в нем произвольный Route selection source code, отличный от значения по-умолчанию: Теперь, если мы назначим входящем транку созданный callsrc, то сможем применять Route selection source code для маршрутизации, указывая его в команде RTANA. Пример 4 Так же мы можем создать несколько правил RTANA с одним и тем же Route selection code, но разными параметрами, как в примере ниже: Здесь приведено правило RTANA для звонков на междугородные направления, а выбора маршрута осуществляется в зависимости от различных параметров вызова (в частности, Caller category и Customize subscriber type). ADD SIPTG создает транк-группу, в которой задается количество каналов, код источника вызова (для входящих вызовов), и номер подмаршрута, к которому привязана транк-группа. Trunk group number порядковый номер транк-группы Call source code код источника вызова, используется для маршрутизации входящих вызовов Sub-route number номер подмаршрута, указываем созданный ранее подмаршрут Maximum caller number restriction максимальное количество вызовов в транке. При достижении этого количества вызовов в транке, все последующие вызовы отбрасываются. Stop call restriction при снижении количества вызовов до числа, указанного в этой команде, ограничение вызовов, сработавшее по предыдущему параметру, снимается ADD SIPIPPAIR задает параметры непосредственного стыка с противоположным оборудованием (ip-адрес удаленной станции, локальный порт для приема сигнализации) Trunk group number порядковый номер транк-группы, указываем номер из предыдущей команды IFMI module number номер модуля IFMI в системе, можно узнать, дав команду LST BRD Local server port порт приема сигнализации SIP Remote URI 1 ip-адрес противоположной станции. Если sip-транк настраивается через SBC, здесь указывается loopback-интерфейс, который назначен транку.` ADD CNACLD этой командой задается префикс выхода на созданную транк-группу. Local DN set номер Local DN set, в которой будет находится префикс набора. Как правило, в станции только один Local DN set, указываем его номер Call prefix префикс набора, по которому вызовы будут направляться в созданное нами направление Service attribute тип исходящего вызова, принимает значения: LCO (Intra-officce) внутренние вызовы станции, LC (Local), LCT (Local toll) местные, NTT (National toll) междугородные (федеральные), ITT (International toll) международные, EMC экстренные вызовы. Route selection code код выбора маршрута, номер, указанный в команде RTANA. Minimum number length минимальная длина номера по данному префиксу Maximum number length максимальная длина номера по данному префиксу Charging selection code код источника тарификации. Настройка SIP -транка в пограничном контроллере сессий Huawei SE 2200 Общие правила настройки sip-транка в SBC Interface LoopBack 1 интерфейс, который указываем в SoftX3000 как противоположную станцию description test - trunk справочное название интерфейса ip address 192.168.33.1 255.255.255.255 адрес созданного интерфейса Interface LoopBack 2 интерфейс, который указываем в противоположной станции как адрес SoftX3000 description test - trunk справочное название интерфейса ip address 192.168.44.1 255.255.255.255 адрес созданного интерфейса acl number 3011 создаем список доступа rule 0 permit ip source 192168.55.1 0 разрешаем трафик от адреса противоположной станции rule 5 permit ip source 192.168.22.0 0.0.0.255 разрешаем трафик от SoftX3000 и сопутствующего оборудования (в этой сети, вероятно, так же будет UMG и прочее оборудование в составе SoftX3000) rule 10 deny ip запретить все прочие адреса Выше обозначенная группа команд необходима для обеспечения безопасности, на нашей сети используются другие методы и эти команды не используются и не проверялись автором. Здесь они приведены для полной информации о правильной последовательности настройки. sbc wellknowport clientaddr 192.168.33.1 sip 5060 разрешаем прием сигнализации SIP по порту 5060 на адресе 192.168.33.1 (от SoftX3000) sbc wellknowport clientaddr 192.168.44.1 sip 5060 разрешаем прием сигнализации SIP по порту 5060 на адресе 192.168.44.1 (от противоположной станции) sbc wellknowport softxaddr 192.168.22.1 sip 5060 обозначаем адрес SoftX3000. (Если SBC уже настроен ранее и работает, данная команда уже, вероятно, есть в конфигурации) sbc mapgroup intercom - ip 1001 создаем mapgroup в сторону SoftX3000 description == test - trunk == - справочное название clientaddr 192.168.44.1 адрес в сторону противоположной станции match acl 3011 проверка адресов согласно списка acl 3011 serveraddr 192.168.33.1 адрес в сторону SoftX softxaddr 192.168.22.1 - адрес SoftX3000 media - clientaddr 192.168.44.1 адрес в сторону противоположной станции media - serveraddr 192.168.33.1 адрес в сторону SoftX enable команда на активацию mapgroup sbc mapgroup intercom - ip 1002 создаем mapgroup в сторону противоположной станции description ==test-trunk== clientaddr 192.168.33.1 адрес в сторону SoftX match acl 3011 - проверка адресов согласно списка acl 3011 serveraddr 192.168.44.1 адрес в сторону противоположной станции softxaddr 192.168.55.1 - адрес противоположной станции media - clientaddr 192.168.33.1 адрес в сторону SoftX media - serveraddr 192.168.44.1 адрес в сторону противоположной станции enable команда на активацию mapgroup
img
Работа SR (Segment Routing) в MPLS и SR в IPv6 аналогична во всех отношениях, за исключением того, как передается и обрабатывается стек меток. Заголовки SR в IPv6 переносятся в поле метки потока, показанном на рисунке 8. В реализации IPv6 SR стек меток SR переносится в заголовке маршрутизации заголовка пакета IPv6. Информация в этом заголовке предназначена специально для предоставления информации об узлах, через которые "этот пакет" должен проходить при маршрутизации по сети, поэтому он служит той же цели, что и стек меток SR. В случае реализации SR IPv6 каждая метка имеет длину 128 бит, поэтому в качестве SID можно использовать некоторый локальный IPv6-адрес. Один интересный момент заключается в том, что спецификации IPv6 указывают, что заголовок IPv6 не должен изменяться маршрутизатором при обработке пакета (более подробную информацию см. В RFC8200). Вместо того, чтобы выталкивать (pop), проталкивать (push) и менять местами метки, SR IPv6 полагается на то, что каждый узел на пути имеет указатель на текущую метку в обрабатываемом стеке. Метки маршрутизации сегментов сигнализации SR технически является механизмом маршрутизации источника, потому что источник выбирает путь через сеть-хотя маршрутизация источника в SR может быть гораздо более свободной, чем традиционная маршрутизация источника. Для каждой метки в стеке существует два возможных способа обработки пакета узлом вдоль пути: Метка содержит подробные инструкции о том, как пакет должен обрабатываться на этом устройстве: POP или CONTINUE сегмента (метки) и обработать пакет соответствующим образом. Метка не содержит явных инструкций о том, как пакет должен обрабатываться на этом устройстве: использовать информацию о локальной маршрутизации для пересылки пакета и CONTINUE сегмента. Ни в том, ни в другом случае узел обработки не должен знать обо всем пути для коммутации пакета: он либо просто следует по указанному пути метки, либо обрабатывает пакет на основе чисто локальной информации. Благодаря этой парадигме передача сигналов SR проста. Необходимы два типа сигнализации. Локальный узел, префикс и SID смежности, назначенные узлу в сети, должны быть объявлены каждым узлом в сети. Эта передача сигналов в основном осуществляется в протоколов маршрутизации. Например, протокол от промежуточной системы к промежуточной системе (IS-IS) расширен черновым вариантом расширений (Intermediate System to Intermediate System- IS-IS) для Segment Routing1 для переноса SID префиксов с использованием значения длины подтипа (sub-TLV), как показано на рисунке 9. Также для стандартизации предлагаются расширения к другим протоколам маршрутизации и уровня управления. Поскольку расчет пути в SR основан на источнике, нет необходимости переносить путь в протоколе распределенной маршрутизации. Единственная реальная необходимость - предоставить каждому узлу в сети информацию, необходимую для переноса информации об узле SR, префиксе и смежности. В случае, когда пути SR вычисляются централизованным устройством или контроллером, должен быть способ объявить путь метки, который будет использоваться для достижения определенного назначения. Были предложены расширения для Border Gateway Protocol (BGP) в политике маршрутизации объявленных сегментов в BGP,2 и в протоколе Path Computation Element Protocol (PCEP) в расширениях PCEP для Segment Routing.3 Эти два вида объявления отделены друг от друга, поскольку единственным узлом в сети, который должен либо вычислить, либо наложить список сегментов, является головной узел туннеля или точка, где трафик входит в путь сегмента.
img
Если вы когда-то пользовались какой-нибудь серверной версией Linux, то скорее всего сталкивались с командой curl. Эта мощная утилита системы Linux позволяет скачивать и загружать файлы на сервер и поддерживает более 20 протоколов. Раньше мы писали про первые 15 примеров cURL в Linux. Статья зашла - это продолжение :) cURL идеальная команда для взаимодействия с веб-сайтом или API, отправления запросов и получения ответов на терминал или с выводом в файл. Иногда она используется как часть сложного скрипта для передачи полученных данных другим функциям на дальнейшую обработку. Наряду с получением файлов из сервера, cURL так же используется для закачки части вебсайта. Несмотря на то, что она довольно хорошо справляется с работой, но всё же wget лучше наточен под такую работу. В конце материала мы рассмотрим несколько отличий и сходств этих двух утилит, но а пока расскажем как пользоваться утилитой curl. Скачивание файла Самая базовая команда, которую можно дать утилите cURL это скачать сайт или файл. По умолчанию, cURL использует протокол HTTP, но мы можем задать любой другой. Чтобы открыть исходный код сайта просто нужно ввести команду: $ curl http://www.google.com Когда мы вводим указанную команду, окно терминала заполняется HTML и другим кодом, используемым для создания веб страницы, но от такого вывода мало пользы. Изменим команду так, чтобы вывод перенаправлялся в HTML файл, чтобы затем можно было просмотреть содержимое. $ curl www.likegeeks.com --output likegeeks.html Теперь файл можно открыть любым браузером. Если нужно скачать какой-то файл, то команда остается та же. Только нужно добавить опцию output, как мы и сделали ранее. Если не сделать команда вернёт бинарный код файла, что может привести к сбою. Ниже показано что мы видим при попытке загрузить Word документ размером 500Кб. Файл начинает закачиваться, и мы видим текущий статус закачки. Когда загрузка завершится файл будет расположен по пути, указанной во время запуска команды. Если такового не было указано, то файл будет расположен в текущей директории. Также, вы, наверное, заметили ключ L в команде. При загрузке файла этот ключ необходим, но о его назначении поговорим чуть позже. Отслеживание редиректа Если после выполнения команды ничего не вернулось это значит, что на сайте есть редирект (переадресация) на другую ссылку, но cURL не понимает этого. Это можно исправить, указав ключ L при вводе команды. Во время подготовки материала мы заметили, что данный ключ нужен в подавляющем большинстве случаев. Так что возьмите себе эту фишку на вооружение. Остановка и продолжение скачивания Если во время закачки файла что-то пошло не так или же качаете большой файл, но ввиду каких-то причин не хотите делать это за одну сессию, cURL предоставляет возможность остановки и продолжения закачки. Чтобы остановить процесс вручную, нужно нажать комбинацию CTRL+C, которая используется для остановки почти всех процессов, запущенных в терминале. Итак, загрузка была начата, но мы прервали её комбинацией клавиш, а теперь нам нужно продолжить закачку. Для этого вводим следующую команду. $ curl -C - example.com/some-file.zip --output MyFile.zip Ключ C говорит утилите cURL продолжить закачку, но обратите внимание, что сразу после ключа указан дефис. Этот дефис указывает команде перед продолжением просмотреть уже закачанную часть, чтобы понять с какого места нужно продолжать загрузку. Закачка продолжилась и успешно завершилась. Указание времени выполнения команды Если нужно чтобы прервать выполнение команды cURL по истечении указанного времени, мы можем указать таймер выполнения команды. Это особо полезно так как некоторые операции выполняются бесконечно, что может привести к зависанию системы. Чтобы избежать этого можно указать максимальный период в секундах, по истечении которого cURL прервёт выполнение команды. Вышесказанное реализуется следующим образом: $ curl -m 60 example.com Также есть возможность указать в течении какого времени держать соединение активным. Это позволит избежать бесконечных попыток соединения с узлом, который не доступен. Эта опция тоже в качестве аргумента принимает значение в секундах. А команда выглядит так: $ curl --connect-timeout 60 example.com Указание логина и пароля Утилита cURL позволяет указывать имя пользователя и пароль при подключении. Чаще всего это нужно при аутентификации на FTP сервере. Для этого используется ключ u. Синтаксис команды указан ниже: $ curl -u username:password ftp://example.com Данную опцию можно использовать с любым протоколом, но FTP является самым распространённым для простой передачи файлов. Если нужно скачать файл указанный на скриншоте ниже запускаем ту же команду, только указываем полный путь к нужному документу. $ curl -u username:password ftp://example.com/readme.txt Использование прокси cURL можно указать, чтобы подключение выполнялось через прокси сервер. По умолчанию, она использует HTTP прокси, но можно указать и другие. Чтобы направить трафик через прокси используется ключ x. $ curl -x 192.168.1.1:8080 http://example.com Данная команда обязует cURL подключиться к прокси по адресу 192.168.1.1 на порту 8080 перед обращением на example.com Прокси можно использовать и с другими протоколами. Ниже показан пример использования прокси сервера для получения файла с фтп сервера. $ curl -x 192.168.1.1:8080 ftp://example.com/readme.txt cURL поддерживает много типов прокси и соответствующих ключей, но охватить их всех в одном руководстве сложно. Для более подробной информации о туннелировании, SOCKS прокси, аутентификации и т.п. можете прочитать man по команде cURL. Загрузка больших файлов по частям Мы уже показывали как можно остановить и запустить закачку, но что если мы хотим скачать файл большого размера по частям? cURL имеет и такую возможность. Чтобы реализовать это достаточно указать ключ -range и размер загружаемой части. Размер должен быть указан в байтах. Чтобы скачать последнюю версию Ubuntu частями по 100 МБ нужно прописать следующую команду: $ curl --range 0-99999999 http://releases.ubuntu.com/18.04/ubuntu-18.04.3-desktop-amd64.iso ubuntu-part1 Во вторая команде нужно указать с какого байта начинать загрузку. И так пока не скачается весь файл. $ curl --range 100000000-199999999 http://releases.ubuntu.com/18.04/ubuntu-18.04.3-desktop-amd64.iso ubuntu-part2 Затем просто нужно собрать воедино скачанные части: $ cat ubuntu-part? > ubuntu-18.04.3-desktop-amd64.iso Аутентификация по сертификату Для подключения к сайту использованием сертификата вместо обычной аутентификации можно указать опцию cert и путь к сертификату. $ curl --cert path/to/cert.crt:password ftp://example.com cURL поддерживает большое количество форматов сертификатов и имеет очень много опций для работы с ними: -cacert, cert-status, -cert-type, и т.д. Для списка всех ключей посмотрите man. Тихий режим Если вас раздражают разные сообщения об ошибках во время работы с cURL, то можно запустить её в тихом режиме. Для этого используется ключ s. Но, чтобы увидеть результат выполнения команды вывод нужно перенаправить в файл. Для сохранения файла в текущей директории просто нужно указать ключ O. $ curl -s -O http://example.com Как альтернатива, команду можно запустить с опцией --output и указать название и путь к месту сохранения файла. $ curl -s http://example.com --output index.html Получение заголовков cURL позволяет легко получать заголовков какого-либо сайта. Для этого достаточно запустить команду с ключом I. $ curl -I example.com Если запустить команду с ключами I и L совместно, то cURL выведёт заголовки даже если на сайте стоит переадресация. Множественные заголовки Команде cURL можно передать и заголовки. Для этого есть ключ H. Для передачи нескольких заголовков перед каждым из них нужно поставить данный ключ. $ curl -H 'Connection: keep-alive' -H 'Accept-Charset: utf-8 ' http://example.com POST Закачка файла на сервер POST самый распространённый метод получения данных на веб-сайтах. Например, когда заполняете форму на сайте, скорее всего данные из форм передаются серверу методом пост. Чтобы отправить сайту данные этим методом нужно использовать ключ d. $ curl -d 'name=geek&location=usa' http://example.com Чтобы загрузить файл вместо текста нужно ввести следующую команду $ curl -d @filename http://example.com Используйте ключ d столько раз, сколько данных или файлов нужно отправить на сайт. Чтобы загрузить файл через протокол FTP используйте ключ T $ curl -T myfile.txt ftp://example.com/some/directory/ Отправка почты Отправка почты это один из видов загрузки данных на почтовый сервер. Так как cURL может загружать файлы, то мы можем использовать ее и для отправки почты. Есть много вариантов сделать это, но здесь мы рассмотрим, как посылать почты через SMTP сервер. $ curl smtp://mail.example.com --mail-from me@example.com --mail-rcpt john@domain.com --upload-file email.txt Учтите, что файл e-mail должен быть отформатирован нужным образом. Что-то вроде этого: $ cat email.txt From: Web Administrator <me@example.com> To: John Doe <john@domain.com> Subject: An example email Date: Sat, 7 Dec 2019 02:10:15 John, Hope you have a great weekend. -Admin Как всегда, за подробной информацией можете обратиться к man. Чтение почты Для получения почты используется IMAP и POP3 и сurl поддерживает оба протокола. Зайдем на почту используя протокол IMAP: $ curl -u username:password imap://mail.example.com Данная команда выведет список доступных почтовых ящиков, но не покажет их содержание. Чтобы прочитать письмо нужно указать UID письма аргументов для опции X. $ curl -u username:password imap://mail.example.com -X 'UID FETCH 1234' Разница между cURL и wget Иногда пользователей путаются между curl и wget, так как обе они могут получать информацию с сервера. Но это единственное сходство между ними. В этом материале мы показали возможности curl. wget дает другие возможности. wget лучшая утилита для скачивания файлов, а также у него есть возможность делать это рекурсивно, переходя по всем ссылкам и директория и скачать сайт полностью. Таким образом, если вам нужно скачать все исходные файлы сайта используйте wget. Если же используется протокол отличный от HTTP или HTTPS, или нужно закачать файл на сервер, выберите curl. cURL удобен для скачивания одиночных файлов, хотя и wget неплохо справляется с данной задачей.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59