По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Одним из важных компонентов установления соединения по протоколу SIP является протокол Session Description Protocol, или сокращенно SDP. О протоколе SDP впервые заговорили в 1998 году в рамках опубликованного RFC2327. Спустя 8 лет, в 2006 году протокол претерпел некоторые изменения, которые были отображены в RFC4566. Протокол SDP используется для установления соединения и согласования параметров передачи и приема аудио или видео потоков между оконечными устройствами. Наиболее важными параметрами обмена являются IP – адреса, номера портов и кодеки. Давайте разбираться? Пример SDP При установлении сессии SDP параметры передаются в рамках SIP – запросов. Давайте взглянем на один из таких запросов. В данном случае распарсим SIP INVITE, который прилетело на нашу IP – АТС Asterisk с помощью утилиты sngrep: INVITE sip:74996491913@192.168.x.xxx:5061;transport=UDP SIP/2.0 Via: SIP/2.0/UDP 80.xx.yy.zz:5060;branch=z9hG4bK-524287-1-MThkZjMzNzMyXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;rport Via: SIP/2.0/UDP 80.xx.yy.zz:5077;branch=z9hG4bK-XXXXXXXXXXXXXXXX;rport=5077 Max-Forwards: 69 Record-Route: <sip:80.xx.yy.zz:5060;lr;transport=UDP> Contact: <sip:80.xx.yy.zz:5077> To: <sip:74996491913@80.xx.yy.zz> From: <sip:7925XXXXXXX@80.xx.yy.zz>;tag=qdpxhe2avyyjcqfn.o Call-ID: fb9909e8fYYYYYYYYYYYYYYYYYYYYYY CSeq: 479 INVITE Expires: 300 Allow: INVITE, ACK, BYE, CANCEL, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS, UPDATE Content-Disposition: session Content-Type: application/sdp User-Agent: Sippy P-Asserted-Identity: <sip:7925XXXXXXX@80.xx.yy.zz> Remote-Party-ID: <sip:7925XXXXXXX@80.xx.yy.zz>;party=calling h323-conf-id: 4133864240-4217115111-2706418710-XXXXXXXXX Portasip-3264-action: offer 1 cisco-GUID: 4133864240-4217115111-2706418710-XXXXXXXXX Content-Length: 278 v=0 o=Sippy 1011212504475793896 1 IN IP4 80.xx.yy.zz s=- c=IN IP4 80.xx.yy.zz t=0 0 m=audio 57028 RTP/AVP 0 8 18 101 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:18 G729/8000 a=fmtp:18 annexb=yes a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-15 a=sendrecv В приведенном примере можно увидеть, что основная часть SIP – сообщения отделена от SDP сегмента пустой строкой. Помимо прочего, поле Content-Type, что сообщение сопоставимо с SDP параметрами. Про SDP поля Каждый из параметров SDP сообщения можно отнести к одной из следующих категорий: Имя сессии; Время, в течении которого сессия активна; Параметры медиа; Информация о пропускной способности; Контактная информация; Поговорим об основных параметрах. Они всегда имеют следующее обозначение: <поле> = <значение>. Поле всегда обозначается 1 буквой. Поле Значение Формат v= версия протокола v=0 o= инициатор сессии и соответствующие идентификаторы o=<имя_пользователя> <идентификатор_сессии> <версия> <тип_сети> <тип_адреса> <адрес>. В нашем примере поле o=Sippy 1011212504475793896 1 IN IP4 80.xx.yy.zz (IN - тип сети, интернет, IP4 - тип адреса, IPv4; s= имя сессии в нашем примере прочерк ("-"), имя сессии не указано; c= информация о подключении; Синтаксис таков: c=<тип_сети> <тип_адреса> <адрес>. В нашем примере IN IP4 80.xx.yy.zz. Параметры IN/IP4 объяснены выше. t= время активности сессии Синтаксис поля таков: t=<начальное_время> <конечное_время>. Это обязательное поле, но важно отметить, что оно весьма субъективно, так как невозможно предсказать точное время начала и окончания. В нашем примере t=0 0 m= тип передачи медиа данных, формат и адресация m=<тип_медиа> <порт> <транспорт> <формат_передачи>. Давайте разберемся - у нас m=audio 57028 RTP/AVP 0 8 18 101, это означает передачу аудио (может быть значение video, или передача обоих типов), порт передачи обозначен как 57028, транспорт, указанный как RTP/AVP, означает передачу по протоколу RTP в рамках стандарта Audio and Video Conferences with Minimal Control, который описан в RFC3551. После, первый 0 означает протокол G.711 uLaw, 8 означает G.711 ALaw, 18 означает G.729. То есть условно говоря, нам предложено предпочтение кодеков сначала G.711 uLaw, затем G.711 ALaw, и третьим приоритетом G.729. 101 означает поддержку динамического типа данных, например DTMF. a= параметры сессии a=<параметр> или a=<параметр><значение>. SDP сессия может содержать несколько дополнительных атрибутов передачи. Более подробно мы рассмотрим далее. Помимо указанных параметров, зачастую встречаются такие как k=, в рамках которого описывается метод шифрования, или i=, содержащий дополнительную информацию о сессии. Поговорим про параметры поля a=: Параметр Синтаксис и описание rtpmap a=rtpmap:<тип> <название_кодировки>/<частота_дискретизации> [/<параметры_кодирования>]. Данный параметр подсказывает имена кодеков, частоту и прочие параметры кодирования для данных, обозначенных в параметре m=. Например, у нас a=rtpmap:0 PCMU/8000, означает использование G.711 с импульсно - кодовой модуляцией по U - закону с частотой дискретизации 8000 Гц. sendrecv a=sendrecv Данный параметр указывает на то, что мы собираемся отправлять и получать медиа - данные. Например, возможно опция отправки (sendonly), только получение (recvonly) и отключения медиа (inactive); ptime a=ptime:<длительность_пакета> Продолжительность RTP - пакет (в миллисекундах). Условно говоря, какой длительности фрагмент голоса переносит один RTP - пакет; fmtp a=fmtp:<формат> <специальные_параметры> Параметр описывает дополнительные параметры сессии, например, такие как режим подавления тишины (VAD) и прочие;
img
В сегодняшней статье рассмотрим сценарий с настройкой отказоустойчивости на маршрутизаторе Cisco с использованием двух интернет провайдеров. При случае аварии у вашего интернет оператора отказоустойчивость с использованием двух провайдеров является очень хорошей идеей, более того – иногда без этого не обойтись. Однако, в таком сценарии часто необходимо использовать протокол маршрутизации BGP, который довольно нелегок в настройке и предъявляет высокие требования к оборудованию. В большинстве случаев, вам необходимы две выделенных IPv4 подсети – но учтите, что покупка IPv4 блока является довольно дорогостоящей затеей. Однако, есть альтернативное и более бюджетное решение – если вам не нужна целая подсеть от провайдера, у вас может быть основной и запасной WAN каналы и использовать NAT для обоих линков с автоматическим фэйловером. Данный сценарий будет работать только для сетей, у которых есть исходящий трафик. Описание сценария и настройка В примере ниже мы продемонстрируем стандартную топологию – данное решение задачи будет работать во многих сценариях. Вы все еще можете использовать BGP соединение для каждого провайдера, который анонсирует дефолтный маршрут, однако, как правило, провайдеры делают это за отдельную плату. В данной топологии мы будем использовать два плавающих статических маршрутах. На топологии ниже у нас есть два WAN соединения (ISP1 – основной линк и ISP2 – запасной линк). Нам просто необходимо предоставить доступ в интернет для нашей внутренней подсети. Все настройки в данной статье были выполнены на маршрутизаторе Cisco 891-K9 с двумя WAN портами и IOS версии c880data-universalk9-mz.153-3.M2.bin Настройка маршрутизатора Сначала настраиваем интерфейсы: interface GigabitEthernet0 description Internet_ISP1_Main ip address 10.10.10.10 255.255.255.0 no ip proxy-arp ip nat outside //включаем NAT на первом интерфейсе interface FastEthernet8 description Internet_ISP2_Back-up ip address 100.100.100.100 255.255.255.0 no ip proxy-arp ip nat outside //включаем NAT на втором интерфейсе interface Vlan1 description Local_Area_Network ip address 192.168.1.1 255.255.255.0 ip nat inside //весь сгенерированный трафик будет NATирован Затем настраиваем ACL (лист контроля доступа) в соответствии с нашей внутренней подсетью: ip access-list extended NAT_LAN permit ip 192.168.1.0 0.0.0.255 any Переходим к настройке маршрутных карт, которые будут выбирать какой трафик НАТировать на каждом интерфейсе: route-map NAT_ISP1_Main permit 10 match ip address NAT_LAN //совпадение для настроенного прежде ACL с внутренней подсетью match interface GigabitEthernet0 //совпадение для первого WAN интерфейса ! route-map NAT_ISP2_Back-up permit 10 match ip address NAT_LAN //совпадение для настроенного прежде ACL с внутренней подсетью network match interface FastEthernet8 //совпадение для второго WAN интерфейса Настраиваем отслеживание и SLA для замены канала в случае аварии: ip sla 1 icmp-echo 8.8.8.8 source-interface GigabitEthernet0 //пингуем DNS Гугла используя первый интерфейс frequency 30 //пинги отправляются раз в 30 секунд ip sla schedule 1 life forever start-time now //SLA респондер включен track 1 ip sla 1 //“объект” для отслеживания создан с помощью IPSLA1 Добавляем маршруты по умолчанию: ip route 0.0.0.0 0.0.0.0 10.10.10.1 track 1 ip route 0.0.0.0 0.0.0.0 100.100.100.1 30 Пока объект track 1 «поднят», первый маршрут будет указан в таблице маршрутизации. Если данный объект «упадет», то маршрут будет заменен на второй маршрут по умолчанию с метрикой 30. Как заключительный шаг – включаем NAT: ip nat inside source route-map NAT_ISP1_Main interface GigabitEthernet0 overload ip nat inside source route-map NAT_ISP2_Back-up interface FastEthernet8 overload
img
Файловые системы и UUID имеют особую взаимосвязь в системах Linux. Что это за очень длинные идентификаторы и как проследить связи между ними и разделами диска? Файл /etc/fstab - очень важный файл в системах Linux. Он содержит информацию, которая позволяет системе подключаться к разделам диска и определять, где они должны быть смонтированы в файловой системе. Хотя этот файл играл важную роль на протяжении многих лет, его формат изменился с введением UUID и, в некоторых системах, более надежного типа файловой системы. Вот пример файла /etc/fstab в системе Fedora: Каждая строка в файле (кроме комментариев) представляет файловую систему и имеет шесть полей. Описывает раздел диска Определяет точку монтирования Показывает тип файловой системы Предоставляет варианты монтирования Определяет, может ли файловая система быть выгружена (0 = нет) с помощью команды dump (не часто) Определяет, должна ли проверка файловой системы выполняться во время загрузки (0 = нет) Файловая система btrfs - это современная файловая система с копированием при записи (copy-on-write- CoW) для Linux, которая предоставляет расширенные функции, а также уделяет особое внимание отказоустойчивости, восстановлению и простому администрированию. Файл /etc/fstab, показанный выше, необычен тем, что новая ОС была только недавно установлена на /dev/sda, а папка /home из системы перед обновлением (на отдельном диске) была затем перемонтирована после того, как первая ссылка на /home была закомментирована. Что такое UUID? Те длинные идентификаторы устройств, которые вы видите в файле /etc/fstab и которые помечены UUID (универсальный уникальный идентификатор), имеют длину 128 бит (32 шестнадцатеричных символа) и расположены в последовательности символов 8-4-4-4-12. Один из способов увидеть, как UUID соединяются с именами устройств (например, /dev/sda1), - это использовать команду blkid. Вы также можете проверить файл by-uuid, чтобы просмотреть взаимосвязь: Устройство 76E8-CACF, смонтированное как /dev/sdc1, - это временно используемый USB-накопитель. Вы можете получить представление о том, как Linux генерирует UUID, выполнив команду uuidgen. Проверьте, есть ли он в вашей системе, набрав команду which uuidgen. Эти идентификаторы для всех практических целей уникальны. Когда вы введете команду uuidgen, вы получите любой из более чем 3.40 ? 1038 возможных ответов. Использование lsblk Еще один удобный способ просмотра файловых систем - это команда lsblk, которая дает четкое представление о том, как файловые системы связаны, а также о точках монтирования, размерах устройств и основных/второстепенных номерах устройств. Эта команда упрощает визуализацию разделов на каждом диске.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59