По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Введение Однажды в организации, где я работаю, случился Asterisk Случился не без моего участия, а если быть точным, то я и был главным виновником, и как следствие - главным исполнителем. Напасть была локальной, но достаточно быстро получила широкое распространение, хотя, в отдельных уголках приходилось нести прогресс в массы с применением тяжелой артиллерии и напалма. В итоге Asterisk`ом было охвачено порядка полутора тысяч абонентов. Процесс настройки абонента изначально выглядел следующим образом: Включил телефон, обновил прошивку. Пока он перезагружается, завел абонента на Asterisk (создал запись для регистрации SIP-клиента). Далее, самый очевидный способ настройки телефона - web-интерфейс; набрал в адресной строке браузера IP-адрес телефона, авторизовался, настроил два десятка параметров и готово. На всё ушло 2-3 минуты. Следующий абонент - повторяем. На втором десятке абонентов начало надоедать, появилось желание как-нибудь упростить процесс. Заглянул в настройки: экспорт и импорт конфигурации присутствует; сохранил конфигурацию телефона в файл, заглянул в него - обычный текстовый файл, в котором перечислены параметры с их значениями. Нашел параметры, значения которых менял в web-интерфейсе, причем большинство из этих параметров, хоть и отличается от дефолтных, но одинаково для всех настраиваемых в рамках данной организации телефонов. Таким образом, имея эталонный файл конфигурации и редактируя в нем всего 5-6 строк, я получал конфигурации для остальных телефонов, которые "заливал" в аппараты всё через тот же web-интерфейс. Спустя какое-то время количество абонентов заметно выросло, компания продолжала развиваться, сотрудники мигрировали между подразделениями, увольнялись, появлялись новые, некоторые телефоны выходили из строя, и возня с файлами стала постепенно отнимать много времени и раздражала с каждым днем всё больше. Тут я вспомнил про пункт меню из web-интерфейса, в котором были написаны многообещающие слова "Auto Provision". Обратимся за определением к производителям телефонов. У Dlink или Fanvil мы получим следующее: Auto Provisioning используется для реализации удаленной/автоматической инсталляции, развертывания конфигурационных и некоторых других связанных файлов. Snom дает нам практически такое же: Auto Provisioning может использоваться для предоставления общих и специфических параметров конфигурации на телефоны и для актуализации прошивки. Вроде бы всё устраивает, значит, будем для наших целей отталкиваться от этих определений. Вариантов автоматической настройки предусмотрено несколько, и без долгих терзаний, как наиболее понятный и доступный был выбран следующий: Развертывание конфигурации с tftp сервера, адрес которого телефон будет получать по DHCP в Option 66. Разберемся вкратце, что есть что. TFTP - простой протокол передачи файлов (Trivial File Transfer Protocol). В отличие от FTP основан на транспортном протоколе UDP и в нем отсутствует возможность аутентификации (однако, возможна фильтрация по IP-адресу). Одно из основных преимуществ TFTP - простота реализации клиента, поэтому он достаточно широко используется в частности для загрузки обновлений и конфигураций сетевых устройств. DHCP - протокол динамической настройки узла (Dynamic Host Configuration Protocol); сетевой протокол, позволяющий сетевым устройствам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP. Не вдаваясь глубоко в подробности, схема обмена сообщениями DHCP при получении параметров выглядит следующим образом: DHCPDISCOVER: клиент (в нашем случае, телефон) передает это сообщение broadcast, и использует его для поиска DHCP-серверов в своей канальной среде. В одном из полей этого пакета, в поле options, клиент передает список необходимых ему опций, наиболее распространенными из которых являются: (1) - Subnet Mask (3) - Router (6) - Domain Name Server (15) - Domain Name именно в этом поле клиент сообщает о том, что ему нужен адрес tftp сервера для загрузки конфигурационного и/или других связанных файлов. Номер опции, которая его содержит - 66 (у cisco есть аналогичная опция 150, основное отличие которой в том, что она может содержать адреса нескольких tftp серверов). DHCPOFFER: cервер отвечает на запрос клиента. Сервер может передать это сообщение как broadcast так и unicast (зависит от значений полей полученных от клиента). В этом сообщении сервер предлагает клиенту параметры, которые он может отдать в текущей конфигурации. Если в сегменте сети клиента несколько DHCP серверов, то получив запрос, они все отправляют OFFER-ы. После того, как клиент выбрал, OFFER какого из DHCP серверов принять, он отправляет следующий пакет: DHCPREQUEST: казалось бы, если клиент определился, какой DHCP сервер "пришелся ему по душе", можно передать unicast-запрос этому серверу; однако предается broadcast, чтобы уведомить остальные DHCP серверы о своём выборе (добавляется опция 54, указывающая адрес выбранного DHCP-сервера), и они могли освободить зарезервированные OFFER-ы. DHCPACK: cервер отправляет подтверждение клиенту. После этого клиент настраивает свой сетевой интерфейс, используя предоставленные параметры и опции. В различных ситуациях могут еще возникать DHCPDECLINE, DHCPNAK, DHCPRELEASE, DHCPINFORM, но их рассмотрение в рамки данной статьи не входит. Для получения исчерпывающей информации о работе DHCP можно обратиться к RFC 2131: https://tools.ietf.org/html/rfc2131 Про опции 66 и 150 можно почитать здесь: https://wiki.merionet.ru/ip-telephoniya/67/dhcp-opciya-150-i-66/ https://blog.router-switch.com/2013/03/dhcp-option-150-dhcp-option-66/ Про настройку DHCP сервера и Option 66 на Mikrotik можно почитать здесь: https://wiki.merionet.ru/seti/5/nastrojka-dhcp-servera-na-mikrotik/ Чтобы передать телефону адрес tftp сервера, с которого он может получить конфигурационный файл, на DHCP сервере в параметрах области задаем Option 66, в которой указываем hostname либо IP адрес нашего tftp сервера. Настройки по-умолчанию в большинстве телефонов подразумевают получение IP-адреса по DHCP и запрос Option 66. В итоге, телефон получает IP, получает адрес tftp сервера и пытается "стянуть" оттуда файл своей конфигурации. Согласно документации Dlink, загрузка файла конфигурации происходит следующим образом: Устанавливается соединение с сервером. Проверяется наличие файла с соответствующим именем: - в первую очередь проверяется файл с именем соответствующим аппаратной платформе; - во вторую - соответствующий MAC адресу устройства; - в третью - соответствующий ID устройства; - файл с произвольным именем проверяется либо в последнюю очередь (DHCP option, UpnP) либо в первую, если он явно указан в конфигурации телефона. Проверяется версия конфигурационного файла. Если версия выше, чем текущая на телефоне, файл конфигурации применяется. Как уже говорилось ранее, файл конфигурации представляет собой текстовый документ определенного вида: Первая строка: <<VOIP CONFIG FILE>>Version:2.0002 Для того, чтобы конфигурация была применена, версия файла должна быть выше, нежели текущая на телефоне, инкрементировать требуется последний разряд версии. По-умолчанию версия конфигурации 2.0002 Пример: Текущая версия конфигурации 2.0002 на одном телефоне и 2.0004 на еще двух. Для того чтобы конфигурация применилась только на один телефон в первой строке файла конфигурации ставим <<VOIP CONFIG FILE>>Version:2.0004 для того чтобы обновить конфигурацию на всех телефонах ставим в первой строке <<VOIP CONFIG FILE>>Version:2.0005 Разделы: <GLOBAL CONFIG MODULE - содержит данные о сетевых настройках, серверах DNS, SNTP... <LAN CONFIG MODULE> - содержит данные о настройках LAN, режимах работы LAN <TELE CONFIG MODULE> - настройки расширенных функций телефонной части (Call Feature) <DSP CONFIG MODULE> - настройка кодеков <SIP CONFIG MODULE> - настройки SIP, серверы, регистрация etc... <PPPoE CONFIG MODULE> - настройки PPPoE <MMI CONFIG MODUL>E - настройки доступа и WEB интерфейса <QOS CONFIG MODULE> - qos и vlan <DHCP CONFIG MODULE> - настройки внутреннего DHCP <NAT CONFIG MODULE> - настройки NAT и ALG <PHONE CONFIG MODULE> - настройки телефонной части, в этом же разделе настраивается remote phonebook и extension key. <SCREEN KEY CONFIG MODULE> - настройка программных клавиш (для версии F3) <AUTOUPDATE CONFIG MODULE> - настройки Autoprovision <VPN CONFIG MODULE> - настройки VPN <TR069 CONFIG MODULE> - настройки TR069 Заканчивается файл строкой <<END OF FILE>> Для обновления какой-либо опции конфигурации телефона, чтобы файл конфигурации был принят телефоном достаточно наличие следующих полей: <<VOIP CONFIG FILE>> Version:2.0002 <Название необходимого раздела> Название опции: значение <<END OF FILE>> Например, для обновления имени хоста телефона необходимо создать следующий файл конфигурации: <<VOIP CONFIG FILE>>Version:2.0003 <GLOBAL CONFIG MODULE> Host Name :ReceptionPhone <<END OF FILE>> Все остальные элементы являются необязательными. Итак, овал нарисован. Остались сущие мелочи - реализовать инструмент для создания конфигураций и дальнейшего управления ими. Займемся этим в следующей публикации.
img
Строка User-Agent (UA) - это информация, включенная в заголовок HTTP, действующая от имени пользователя. Когда вы подключаетесь к веб-сайту из браузера, UA сообщает веб-сайту, из какого браузера поступает запрос, его номер версии и операционную систему. Сервер может по-разному реагировать на определенных пользовательских агентов. Следовательно, вам может потребоваться изменить строку UA. В этом руководстве вы узнаете, как установить или изменить пользовательский агент с помощью curl. Curl User Agent Когда вы используете curl для отправки HTTP-запроса, он отправляет информацию пользовательского агента в формате curl/version.number. Последняя стабильная версия на момент написания - 7.72. 0. Следовательно, строка UA в HTTP-запросе будет: curl/7.72.0. Есть несколько способов установить или изменить пользовательский агент с помощью команды curl. Изменить User-Agent с помощью curl Чтобы изменить пользовательский агент curl на другой браузер, добавьте параметр -A с нужной строкой пользовательского агента: curl -A "user-agent-name-here" [URL] Чтобы отправить запрос на веб-страницу example.com путем эмуляции пользовательского агента Firefox 81, вы должны запустить: curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" https://example.com/" Вы также можете использовать параметр --user-agent со следующим синтаксисом команды: curl --user-agent "user-agent-name-here" url В качестве альтернативы запустите параметр командной строки -H, который принимает один параметр дополнительного заголовка для включения в запрос curl: curl -H "User-Agent: user-Agent-Name-Here" Итог Теперь вы должны знать, как изменить пользовательский агент с помощью curl и установить в нем нужный браузер. Это позволяет обойти возможные блокировки или изменения содержимого, которые могут появиться из-за использования curl.
img
Cygwin - это Linux-подобная среда для систем на базе Windows. Он состоит из эмулятора и набора инструментов, которые обеспечивают возможность работы на Linux в среде Windows. Cygwin состоит из DLL cygwin1.dll, которая действует как уровень эмуляции, обеспечивающий функциональность системного вызова POSIX через Windows. С Cygwin пользователи имеют доступ к стандартным утилитам UNIX, которые могут использоваться либо из предоставленной bash-оболочки, либо через командную строку Windows. Кроме того, она предоставляет программистам поддержку в использовании Win32 API вместе с Cygwin API, позволяя переносить утилиты UNIX в Windows без особых изменений исходного кода. Преимущества Cygwin по сравнению с командной строкой/WSL Существует ряд преимуществ использования оболочки Cygwin по сравнению с командной строкой Windows. Ниже перечислены некоторые из основных: Предоставляет оболочку UNIX для Windows, обеспечивая доступ к целому ряду утилит от UNIX/Linux до Windows. Нет необходимости устанавливать полноценную ОС Linux или настраивать виртуальную машину, когда ресурсов, доступных через Cygwin, может быть достаточно. Оптимальное использование ресурсов и системные требования для работы в Windows, поскольку среда эмулируется и работает поверх Windows. Идеально подходит для тестирования/разработки, когда требуется использовать утилиты UNIX/Linux в Windows. Совместим со старыми ОС Windows, такими как Windows 7 и т.д., тогда как среда WSL, предлагаемая Windows, поддерживается только в более новых версиях. Как скачать Чтобы загрузить последнюю версию Cygwin, перейдите по этой ссылке на ее официальный сайт. Можно загрузить версию, под установленную версию Windows и архитектуры системы. 32-разрядную версию можно скачать тут, а 64-разрядную - тут. Установка Запустите скачанный файл с предыдущего шага. Подтвердите все запросы и предупреждения, отображаемые на экране компонентом UAC Windows. После прохождения этого квеста, будет запущена программа установки, как показано ниже. Нажмите далее. Появится запрос на выбор источника загрузки. В большинстве случаев параметр по умолчанию «Install from Internet» (Установить из Интернета) подходит и ничего изменять не приходится. Если у вас есть локальный загруженный репозиторий или вы просто хотите загрузить и установить Cygwin позже, выберите один из других доступных вариантов. Для продолжения нажмите «Далее». В следующем окне предлагается указать «Root Directory» для установки, а также указать, будет ли она установлена для всех пользователей «All Users» или только для вас «Just Me». Если довольны значениями по умолчанию, то нажмите кнопку «Далее», чтобы продолжить установку. Чтобы загрузить файлы пакета, программа установки попросит вас указать «Локальный каталог пакетов». По умолчанию указывается папка «Загрузки». Если требуется указать другое расположение, укажите путь к нему и нажмите кнопку «Далее», чтобы продолжить настройку. В большинстве случаев для загрузки пакетов следует использовать параметр «Using System Proxy Settings». Если вы не хотите использовать прокси-сервер и использовать прямое подключение к Интернету, выберите параметр «Direct Connection», также есть возможность указать пользовательские параметры прокси-сервера, если таковые существуют. Для продолжения установки нажмите «Далее». Затем программа предложит выбрать зеркало, откуда Cygwin загрузит файлы пакета. Чтобы обеспечить более высокую скорость загрузки, лучше выбрать зеркало, которое географически расположено ближе. Если вы не знаете что выбрать, выберите любое зеркало из списка и нажмите «Далее», чтобы продолжить. Cygwin предоставляет множество утилит на базе UNIX/Linux, работающих под управлением Windows. Не все пакеты устанавливаются по умолчанию. Устанавливается только минимальный набор важных пакетов. На этом шаге можно настроить Cygwin, выбрав/убрав различные категорий пакетов. Помните, что добавить или удалить пакеты в Cygwin можно и позже. Если у вас есть конкретный список важных пакетов для вашей работы, вы можете выбрать их сейчас и продолжить, нажав "Далее". На следующем экране отображается список выбранных пакетов с запросом на просмотр и подтверждение. Нажмите «Далее» для подтверждения и продолжения. Выбранные пакеты начнут загружаться, и это может занять некоторое время в зависимости от скорости выбранного зеркала загрузки и количества выбранных пакетов. После загрузки всех пакетов программа продолжит установку пакетов. После завершения установки появится возможность создания значков на рабочем столе и в меню «Пуск» для упрощения доступа. По завершении нажмите кнопку «Готово», чтобы закончить работу мастера установки. Теперь можно запустить Cygwin, через поиск в меню «Пуск», как показано выше, или дважды щелкнув значок на рабочем столе (если он был создан во время установки). Оболочка Cygwin поддерживает обычно используемые команды UNIX/Linux. Если какая-либо команда не работает, можно повторно запустить программу установки и выбрать отсутствующий пакет, если он доступен в репозитории Cygwin (пример - Ansible), и установить его. Установленная команда теперь должна стать доступной как обычная команда в CLI оболочки Cygwin. Заключение Cygwin - полезная утилита, обеспечивающая оболочку UNIX/Linux, эмулированную в среде Windows. Он облегчает перенос определенных приложений в Windows и позволяет разрабатывать и использовать скрипты на основе Linux в Windows для различных задач. Его установка так же проста, как и любая программа на базе Windows с настройкой на основе графического интерфейса пользователя. Дополнительную информацию о Cygwin можно найти здесь. Подробные инструкции по использованию можно найти в разделе часто задаваемых вопросов и руководстве пользователя.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59