Як виглядає SIP адреса




Як виглядає SIP адреса



Що таке IP-адреса Пояснюємо простими словами

I P-адреса - це унікальний номер, який надається комп'ютеру, підключеному до мережі. Він дозволяє відрізнити один пристрій від іншого. IP дозволяє визначити розташування комп'ютера в мережі, роблячи його доступним для інших пристроїв та серверів. Абревіатура IP утворена від Internet Protocol Address, назви основного інтернет-протоколу, яким повідомляються комп'ютери в мережі. IP-адреса може бути як стаціонарного, так і мобільного пристрою.

Як виглядає IP-адресу?

IP-адреса є послідовністю двійкових чисел, розділених точкою. Стандартна адреса IPv4 налічує 4 таких числа, кожне з яких складається з 8 двійкових знаків і називається октетом. Для зручності ці числа представляють у десятковому вигляді зі значеннями від 0 до 255.

Наприклад, IP-адреса 128.128.128.128 у двійковому вигляді виглядатиме як 10000000.10000000.10000000.10000000.

Нова версія IP-адреси - IPv6 - включає 8 чисел по 16 двійкові знаки кожне. Для зручності ці числа представляють у шістнадцятковому вигляді з цифрами від 0 до F (15).

IPv6-адреса aaaa.aaaa.aaaa.aaaa.aaaa.aaaa.aaaa.aaaa у двійковому вигляді виглядає наступним чином:

1010101010101010.1010101010101010.1010101010101010.1010101010101010.1010101010101010.1010101010101010.1010101010101010.1010101010101010

Адреси IPv6 повинні вирішити проблему витрати вільних IPv4-адрес. Але зараз вони не такі поширені. Згідно Google, частка IPv6 дорівнює 43.73%, а Росії їх всього 6.52%.

Структура та класи IPv4-адреси

Сучасна структура IP-адреси включає такі компоненти:

1. Номер мережі. Перші три числа адреси, що вказують розташування пристрою. Два пристрої із загальним номером мережі можуть працювати один з одним безпосередньо.Якщо ж перші три номери пристроїв різні, для їх з'єднання знадобиться маршрутизатор.

2. Номер хоста. Четверте число IP-адреси, що надається конкретному пристрою.

За класовою адресацією IP діляться на класи:

1. A, чи глобальний. Перше значення – номер мережі, друге, третє та четверте – номер хоста. Перший біт такої адреси завжди дорівнює 0.

2. B - Середній рівень. Два перших значення – номер мережі, третє та четверте – номер хоста. Перші два біти - 10.

3. С – малі мережі. Три перші значення – номер мережі, четверте – номер хоста. Перші три біти - 110.

4. D для групи Multicast. Початкові біти IP цієї групи - 1110.

E для резервних IP-адрес. Адреси цього класу починаються з бітів 11110.

З цієї класифікації залишилися лише класи D і E. Групи A, B і C фактично скасовано.

Разом з IP-адресою пристрою дається маска підмережі. Вона вказує на те, які частини IP можуть вказувати на мережу чи пристрій. Десяткова кількість 255 у масці підмережі вказує місце для номера мережі, 0 - На місце для номера пристрою. Також маску підмережі можна позначити через префікс, у якому буде вказано кількість бітів.

Приклад маски підмережі для IP рівня C виглядатиме так: 255.255.255.0. Число бітів зі значенням 1 - 24. Відповідно, префікс маски буде виглядати як /24.

Номер хоста в масці може відрізнятись від 0. Але в цьому випадку пристроїв, які можуть підключитися до IP, буде менше, наприклад, якщо маски мережі 255.255.255.100, то з цієї адреси можуть підключитися тільки 153 пристрої.

Види та структура IPv6-адрес

IPv6-адреси поділяються на такі групи:

1. Unicast. Ці адреси доставляють пакети на конкретний інтерфейс мережі.

2. Anycast. IPv6, що присвоюється групі мережевих інтерфейсів. Але пакет, що передається по Anycast, потрапляє на найдоступніший вузол.

3. Multicast. Адреси, що доставляють пакети від групи інтерфейсів кожного інтерфейсу групи.

Широкомовних адрес у системі IPv6 ні.

Unicast- і Anycast-адреси складаються з 64 бітів префікса та 64 біт ідентифікатора інтерфейсу. Multicast-IPv6 складаються з 8 біт префікса, 4 бита прапора та меж групи та 112 біт ID групи.

Хто розподіляє адреси?

IP, що використовуються в Інтернеті, спочатку розраховуються IANA, або адміністрацією адресного простору Інтернету. Потім вони розподіляються за RIR, або регіональним реєстраторам.

1. ARIN дає адреси у Північній Америці.

2. APNIC розподіляє IP в Азії та Тихоокеанському регіоні.

3. LACNIC наділяє IP країни Латинської Америки та Карибського регіону.

4. RIPE NCC розподіляє IP у Європі, Центральній Азії та Близькому Сході.

5. AfrNIC наділяє IP-адресами країни Африки.

RIR дають блоки адрес великих провайдерам, що виконують роль локальних реєстраторів.

Принцип роботи IP-адрес

Доступ в Інтернет або іншу мережу через IP здійснюється наступним чином:

1. Пристрій підключається до мережі.

2. Адміністратор мережі або інтернет-провайдер надає пристрою IP-адресу.

3. Комп'ютер відправляє та отримує дані від провайдера через отриманий IP-адресу. Інші сервери, пристрої та ресурси також знаходять комп'ютер по IP-адресою. Якщо IP-адреса динамічна, при відключенні від мережі пристрій її втрачає. Коли воно входить до мережі знову, провайдер дає йому новий IP-адресу.

Коли користувач надсилає запит на з'єднання з сайтом, він спочатку потрапляє на DNS-сервер, де перевіряється наявність сайту у базі даних. Якщо ресурс знаходиться у базі, DNS відправляє браузеру його IP-адресу, якою відбувається перехід. Потім браузер звертається до сайту за його доменним ім'ям.

Це спрощена схема роботи IP. Оскільки вільних IP-адрес майже не залишилося, провайдери підключаються до мережі за протоколом NAT, або Network Address Translation.

1. Пристрій отримує в мережі приватний IP-адресу та порт.

2. Потім воно з'єднується з маршрутизатором, який під час відправлення даних змінює локальний. IP на зовнішній.

3. При надходженні даних до пристрою маршрутизатор виконує зворотну роботу - змінює зовнішній IP на локальний.

Ця технологія забезпечує користувачам Інтернету певний рівень конфіденційності. Тим не менш, знаючи IP-адресу можна дізнатися:

1. Назва провайдера, який надав комп'ютеру інтернет-доступ.

2. Країну та місто, де знаходиться пристрій.

Які бувають IP-адреси

IP-адреси можна класифікувати за різними ознаками. Розглянемо їх докладніше.

За змінністю

Динамічна адреса. Він змінюється автоматично кожного разу, коли комп'ютер під'єднано до мережі або через певний час.

Провайдер має в своєму розпорядженні набор динамічних IP-адрес. На час сесії комп'ютера провайдер надає йому адресу. Коли сесія завершується, IP повертається в набір або дається іншому пристрою. Це дешевий та безпечний варіант IPале він не підійде для створення на ньому сайту або сервера.

Статичний. Дається один раз і не змінюється при відключенні від мережі. Така адреса надається серверам, сайтам та важливим веб-сайтам. Статичний IP витратний для провайдера та встановлюється переважно на замовлення користувача.

По приватності

Приватна. Цей тип адреси надається в локальній або домашній інтернет-мережі. Приватний IP допомагає розрізнити між собою, наприклад, телевізор, смартфон, розумна колонка.

Громадський. Основний IP домашньої мережі. Саме під ним виходять до Інтернету підключені до домашньої мережі пристрої.

Для веб-сайтів

Усі IP для веб-ресурсів – статичні, інакше знайти сайт в Інтернеті було б неможливо. Але вони різняться з того, скільки ресурсів користуються одним IP.

Загальні. На таких IP розміщується кілька ресурсів, часом різних тематик. Загальні IP надають хостинги у рамках бюджетних тарифів. Використання спільного IP має низку недоліків. Якщо один з його користувачів скористається сірими методами просування сайту, пошуковики забракують весь IP, і постраждають цілком сумлінні ресурси. При DDoS-атаці на один із ресурсів загального IP постраждають усі ресурси, які користуються адресою.

Виділені. Цією адресою користується лише один ресурс, і вплив інших ресурсів на нього не впливають. На виділений IP простіше отримати SSL-сертифікат, а також можна відкрити FTP-сервер, який забезпечить доступ до файлів.

Особливі

Ряд IP-адрес використовується не для присвоєння комп'ютерам та серверам, а для суто технічних функцій.

0.0.0.0. Немаршрутизована адреса, яка найчастіше означає "немає адресата" або "вставте адресу". Призначення такої адреси одному з пристроїв у мережі означає, що вона не може підключитися до мережі. Також ця адреса може використовуватися за умовчанням, доки пристрій не присвоєно IP-адресу мережі.

Маски підмережі 0.0.0.0. відповідає будь-якій адресі. На серверах ця адреса означає можливість зв'язку з будь-яким інтерфейсом.

Адреси localhost вказують комп'ютеру або хосту на самого себе, та їх діапазон від 127.0.0.0 до 127.255.255.255. За умовчанням цю роль виконує 127.0.0.0. Якщо мережа складається з одного комп'ютера, IP-адреса для Localhost буде 127.0.0.1.

за localhost можна отримати доступ до програм-серверів без модему, мережевої картки та інших засобів доступу до мережі.

192.168.0.1. Локальний IP пристроїв, які забезпечують доступ до Інтернету: роутерів, модемів. За цією адресою доступне меню установок цих пристроїв. Також для цих пристроїв використовуються адреси 192.168.1.1.

172.16.0.0. Цей IP використовується багатьма пристроями з доступом до мережі. Це ADSL-модеми, маршрутизатори, телевізори, ноутбуки, смартфони і т.д.

10.0.0.0. Ще один локальний IP для пристроїв із мережним доступом.

255.255.255.255. Обмежений широкомовний IP-адресу. Дані з цього IP приймають усі пристрої, підключені до мережі.

Простими словами про SIP-аккаунт

SIP – це один із різновидів IP-телефонії, протокол, який використовується для передачі сигналу через інтернет, дозволяючи дзвонити та приймати виклик абонентами з різних регіонів, а також обмінюватися мультимедійним контентом. СІП-протокол є найпоширенішим, він використовується в більшості хмарних АТС та популярних інтернет-сервісів для дзвінків, наприклад Skype.

У цій статті – все про SIP-обліковий запис: що це, в чому його переваги, де він застосовується.

Навіщо використовується SIP-аккаунт?

SIP-аккаунт — це набір облікових даних, який дозволяє користувачам здійснювати голосові та відеодзвінки через Інтернет за допомогою технології VoIP. По суті, це SIP-версія телефонного номера – унікальний ідентифікатор, за допомогою якого ви здійснюєте та приймаєте дзвінки через IP-телефонію.

SIP-аккаунт виглядає як адреса електронної пошти з ім'ям користувача та доменом. Наприклад, для абонентів New-Tel SIP-акаунт може бути таким: [email protected].

Ви можете використовувати SIP-аккаунт на різних сумісних пристроях, включаючи ноутбуки, планшети, смартфони та бізнес-телефони. Таке рішення забезпечує широкий спектр функцій:

  • Співрозмовники можуть спілкуватися один з одним навіть за поганого інтернету за рахунок того, що SIP-телефонія працює при швидкості від 256 Кбіт/с.
  • Через шлюзи між абонентами можна передавати найрізноманітніші мультимедійні файли: голос, повідомлення, відео, графічні файли та інше.
  • Абонент SIP-телефонії отримує єдиний номер, який діє в усьому світі. При цьому до нього можна підключити будь-яку необхідну кількість відділів. А за зміни локації номер залишається за підприємством.
  • Власник SIP-акаунту завжди залишається на зв'язку, оскільки номер закріплюється за унікальним доменом. Головне, щоб абонент мав постійне підключення до інтернету.
  • SIP-телефонія легко впроваджується у бізнес-процеси за рахунок її інтеграції з різними бізнес-системами: 1С, CRM, аналітики та інше. Власник номера бачить у своєму особистому кабінеті всі дзвінки, може аналізувати їх та на цій основі оптимізувати бізнес-стратегію.
  • SIP-телефонія – багатоканальна. Це зручне рішення для віддалених чи офісних кол-центрів, співробітники яких можуть одночасно приймати десятки вхідних дзвінків.

Реєстрація SIP-акаунту

Перше, що потрібно зробити, щоб почати користуватися всіма перевагами SIP-телефонії, - це створити SIP-аккаунт і встановити спеціальний додаток, так званий СІП-клієнт, на пристрій, підключений до Інтернету.Як такий пристрій може бути мобільний або програмний телефон, комп'ютер або планшет з ОС Android, Windows або iOS.

Обліковий запис SIP – це обліковий запис користувача в телефонній мережі SIP. Саме наявність цього облікового запису дає можливість абоненту здійснювати дзвінки без будь-яких географічних обмежень. Через неї відбувається авторизація абонента під час налаштування телефону.

Створити SIP-акаунт можна на різних сайтах-реєстраторах. Можна знайти послуги з безкоштовною реєстрацією або вибрати платний преміум-аккаунт з набором додаткових опцій. Після вибору сервісу потрібно зайти на сайт реєстратора, відкрити картку співробітника, перейти на вкладку «Картка» та натиснути посилання «Створити». Після цього з'явиться додаткова форма, куди потрібно ввести ім'я облікового запису, адресу сервера підключення та пароль.

Наприклад, така форма реєстрації на сайті New-Tel:

Форма реєстрації New-Tel

Ім'я користувача може включати літери та цифри, і в результаті воно буде частиною вашого SIP-акаунту. Далі можна вибрати номер, який відображатиметься у абонента під час вихідних дзвінків з вашого облікового запису. Зберігши налаштування та активувавши обліковий запис, ви зможете дзвонити та приймати вхідні дзвінки по SIP як звичайні дзвінки.

Деякі СІП-провайдери можуть вимагати додаткову інформацію для реєстрації облікового запису. Але найчастіше потрібно лише надати адресу діючої електронної пошти. Ця адреса буде використана для надсилання листа з підтвердженням реєстрації та посиланням на активацію облікового запису.

Після створення облікового запису потрібно встановити на телефоні або комп'ютері СІП-клієнт, який виконує функції софтфону та надає інтерфейс для спілкування.Оскільки СІП-стандарт є відкритим, на ринку є безліч додатків, які можна завантажити та використати безкоштовно. Найпопулярнішими з них є Zoiper, 3CX, X-lite, PortGo, Linphone та PhonerLite. Всі ці програми сумісні один з одним та з будь-якими серверами. У пристроях з ОС Android починаючи з 4-ї версії та СІП-телефонах такі програми встановлені за замовчуванням.

Налаштування SIP-акаунту

Конкретні налаштування SIP-акаунта залежать від того, до якого провайдера ви підключаєтеся, та від конфігурації особистого кабінету. Наприклад розглянемо, як налаштувати ваш SIP-аккаунт в кабінеті New-Tel.

Після того як ви пройшли авторизацію, ви потрапляєте на стартову сторінку:

Дякую!
Вашу заявку відправлено!

Тут потрібно вибрати розділ "Налаштування", де відображаються зовнішні номери та SIP-акаунти пристроїв.

Для початку налаштуємо вхідні дзвінки:

  • Виберіть «Основний режим».
  • Натисніть «Налаштувати обробку вхідних дзвінків».
  • Вкажіть необхідні параметри голосового меню, переадресації, розподілу дзвінків та інших опцій.

Для налаштування розподілу дзвінків:

  • Виберіть внутрішній номер.
  • Проставте час очікування, наприклад, 15 секунд.
  • Натисніть кнопку ОК.
  • Додайте наступний внутрішній номер.
  • Вкажіть час очікування, наприклад, 120 секунд.

Щоб залишатися з клієнтами на зв'язку у будь-який час, налаштуйте параметри зовнішнього номера. Для цього:

  • Відкрийте «Основний режим».
  • Створіть додатковий режим розподілу та задайте йому назву.
  • Перейдіть до установок розподілу між співробітниками.
  • Налаштуйте переадресацію на мобільний номер.
  • Виберіть "Автоматичне перемикання режимів".
  • Натисніть кнопку «Застосувати».
  • У налаштуваннях режиму розподілу позначте вихідні дні та час.
  • Натисніть кнопку «Застосувати».

SIP-аккаунт та IP-телефонія

Основний споживач технології SIP-телефонії – бізнес. При цьому застосовують її як стартапи, так і давні гравці ринку для здійснення відео- та аудіозв'язку. Найважливіша функція тут – журнал дзвінків для контролю роботи операторів та оцінки їхньої ефективності.

Бізнес обирає SIP-телефонію та за можливість значно скоротити витрати на зв'язок. Тарифи SIP-провайдерів зазвичай пропонують значно меншу вартість дзвінків, ніж у операторів мобільного зв'язку, - приблизно в 2-3 рази. При цьому, на відміну від аналогового зв'язку, якість цифрового зв'язку значно вища за рахунок численних кодеків видалення перешкод та посилення звуку.

Як користуватись SIP-телефонією, знають навіть у навчальних закладах. Викладачі використовують можливості інтернет-телефонії для віддалених лекцій в режимі онлайн. А під час мережевих розрахованих на багато користувачів ігор SIP-телефонія дозволяє учасникам віртуальних баталій обмінюватися аудіо- і відеоданими без втрати якості.

Використання СІП-телефонії дозволяє суттєво економити на послугах зв'язку. Ви зможете в середньому на 40% скоротити вартість внутрішніх дзвінків та заощадити близько 90% на міжнародних розмовах. При цьому якість зв'язку по СІП істотно вища за аналогову.

Крім економії, наявність SIP-акаунту дозволить вам залишатися на зв'язку у будь-якій точці світу, де є інтернет-підключення. Більше того, СІП-телефон підтримує всі функції віртуальної АТС, дозволяючи використовувати короткі внутрішні номери, записувати розмови і використовувати десятки інших додаткових функцій.

По суті, зареєструвавши SIP-аккаунт, ви отримуєте доступ до всіх можливостей сучасної IP-телефонії з мінімальними вкладеннями.Це просте і доступне рішення, яке робить зв'язок зручнішим, дешевшим і дозволяє використовувати, окрім голосових повідомлень, всі сучасні формати обміну даними.

Ставши користувачем SIP-акаунту, ви отримуєте ряд переваг:

  • безкоштовні дзвінки на інші СІП-телефони;
  • безкоштовні вхідні дзвінки;
  • низькі тарифи;
  • можливість збільшення кількості ліній;
  • можливість здійснювати відеодзвінки;
  • низькі вимоги до швидкості Інтернету (від 64 Кбіт/с);
  • можливість залишатися на зв'язку незалежно від місцезнаходження;
  • просте та швидке підключення послуги;
  • гнучка переадресація дзвінків на мобільні чи міські номери;
  • економія на роумінгу;
  • можливість приймати та здійснювати дзвінки з усіх пристроїв, підключених до Інтернету.

У СІП-акаунті користувачі можуть на свій розсуд підключати різні додаткові опції:

  • запис розмов;
  • голосове меню;
  • автовідповідач;
  • статистика дзвінків;
  • голосове вітання та ін.

Таким чином, зареєструвавши СІП-аккаунт та встановивши додаток на своєму телефоні, ви отримуєте доступ до всіх можливостей хмарної АТС. Великий вибір тарифних планів і програмних продуктів дозволить кожному вибрати найбільш вигідний і функціональний варіант підключення.

Зробіть свій бізнес ефективнішим, переходьте на бік IP-телефонії від New-Tel. Стабільний та надійний зв'язок за вигідними тарифами, можливість підключити будь-яку кількість міських номерів та номерів 8800, інтеграція з популярними CRM-сервісами, наскрізна аналітика, можливість зберігати запис телефонних розмов та багато іншого – все це телефонний зв'язок за протоколом IP.

Зробіть свій бізнес ефективнішим, переходьте на бік IP-телефонії від New-Tel.Стабільний та надійний зв'язок за вигідними тарифами, можливість підключити будь-яку кількість міських номерів та номерів 8800, інтеграція з популярними CRM-сервісами, наскрізна аналітика, можливість зберігати запис телефонних розмов та багато іншого.

Взаємодія клієнтів SIP. Частина 2

У попередній статті ми розглянули просту взаємодію SIP клієнтів без використання Proxy-сервера. Така взаємодія практично зустрічається надзвичайно рідко, але відмінно підходить для того, щоб зрозуміти основи SIP.

  1. Вибір транспортного протоколу та пошук Proxy;
  2. Робота через Proxy;
  3. Реєстрація на Proxy-сервері.

Вибір транспортного протоколу та пошук Proxy

Оскільки протокол SIP підтримує кілька транспортних протоколів (UDP, TCP, SCTP, TLS), необхідно якимось чином визначати, який протокол використовуватиметься. І тому існує кілька способів.

Перший спосіб передбачає явну вказівку транспорту SIP URI (крім TLS). Виглядає це так:

  1. Якщо SIP URI містить IP-адресу, для SIP URI використовується UDP, для SIPS (Secure SIP) – TCP.
  2. Якщо IP-адреса не укзаан, але укзаан порт, то SIP URI використовується UDP, для SIPS – TCP.
  3. Якщо відсутня IP-адреса і порт, але в DNS присутній відповідний NAPTR-запис, тоді "SIP + D2U" відповідає UDP, "SIP-D2T" вказує на TCP і "SIP-D2S" - на SCTP. NAPTR містить посилання на SRV-запис, який використовуватиметься для пошуку Proxy-сервера. Якщо NAPTR остустує, повинен бути виконаний запит на пошук SRV-запису.
  4. Результатом SRV запиту буде ім'я та порт Proxy-сервера.
  5. Якщо SRV-запис відсутній, виконується A або AAAA-запит. При цьому SIP URI використовується UDP, для SIPS – TCP.

Отже, ми з'ясували параметри Proxy-сервера Івана. Тепер пропоную розглянути використання Proxy у рамках SIP-діалогу.

Ремарка для тих, хто знає, що таке NAPTR. Я дізнався, що є такий тип DNS-запису тільки, коли писав цю статтю, так що не засмучуйтесь. Докладніше про NAPTR тут.

Взаємодія з використанням Proxy

Для чого нам потрібний SIP Proxy? Як я вже сказав, у прикладі з першої частини статті клієнти знали IP-адреси один одного і могли спілкуватися безпосередньо. У реальному житті клієнти найчастіше отримують адреси динамічно, тому немає сенсу «запам'ятовувати» той чи інший IP. Перше, що спадає на думку в даній ситуації – використовувати A-записи DNS і визначити реальну діючу адресу. Однак тут криється наступна проблема: IP-адреса ідентифікує конкретний пристрій, а не користувача на ньому. Особливістю взаємодії SIP є те, що обмін повідомлення відбувається не на рівні пристрій-пристрій, а на користувач-користувач. При цьому один користувач може одночасно використовувати кілька SIP-клієнтів: на мобільному телефоні, на робочому комп'ютері, домашньому комп'ютері та на SIP-телефоні. Як же бути?

Протокол SIP пропонує наступне рішення: створюється SIP Proxy і кожен користувач реєструє свої пристрої на цьому Proxy (точніше користувачі реєструються на сервері реєстрації, а Proxy має доступ до бази реєстрації, але для простоти вважатимемо, що це той самий сервер). Як це робиться, я покажу нижче. Поки що просто запам'ятайте, що Proxy знає, як саме знайти той чи інший клієнт користувача.

  1. SIP-клієнта Петра визначає адресу та протокол SIP Proxy Івана (як це робиться – див. вище)
  2. Клієнт надсилає на Proxy запит INVITE
  3. Proxy-сервер дивиться, на яких пристроях зареєструвався Іван та надсилає запит на всі ці пристрої
  4. Іван відповідає на дзвінок на одному з пристроїв та шле 200 OK на Proxy
  5. Proxy перенаправляє 200 OK Петру
  6. Петро отримує SIP-адресу Івана на конкретному пристрої з поля Contact в відповіді 200 ОК і надсилає відповідь безпосередньо, минаючи Prxoy
  7. Все подальше спілкування йде також безпосередньо

Для тих, хто вивчив першу частину статті, все має досить знайоме; додався лише проміжний Proxy-сервер. Відповідно, і обмін повідомленнями змінився незначно.

Перш ніж переступимо до детального розгляду, маленька ремарка. В рамках SIP поділяють два типи URI. Перший з них – повзувальний URI, також відомий як address of recorf (AOR). Запит, надісланий на цю адресу, передбачає пошук у базі даних Proxy та надсилання запиту одному або несольким пристроям. Другий – URI пристрою (а точніше – користувача на пристрої). URI пристрою зазвичай називається контакт і міститься, відповідно, у полі Contact SIP-повідомлення. AOR міститься в полях From і To.

Початок розмови

Отже, Петро посилає INVITE для Івана на Proxy-сервер:


Proxy-сервер перенаправляє запит всім SIP-клієнтам Івана. Для простоти припустимо, що Іван використовує лише один пристрій. Щоб SIP-клієнт розумів, що запит перенаправлено через Proxy, сервер додає своє заголовне поле via:

SIP-клієнт Івана шле відповідь 180 Ringing (Іван чує дзвінок). При цьому він додає tag у поле To та вказує свій контакт у полі Contact. Крім того, в першому полі via додався параметр received, цей параметр показує, з якої адреси клієнт Івана отримав запит (тобто адресу Proxy-сервера, як його бачить Іван). Це буває корисно знати для вирішення проблем, що виникають:

Proxy відповідно перенаправляє запит клієнту Петра. При цьому він прибирає свій via:

Після відправки 180 Ringing, як тільки Іван зніме слухавку, клієнт Івана відправляє на Prxoy відповідь 200 OK:

Proxy передає цю відповідь Петру, прибираючи при цьому via:

Тепер найцікавіше. Клієнт Петра відправляє повідомлення АСК безпосередньо клієнту Івана в обхід Proxy. Причому, якби Іван одночасно використав кілька клієнтів SIP, відповідь прийшла саме на ту, яку потрібно. Завдяки чому це можливо?

200 ОК відправляється з клієнта, на якому Іван зняв трубку. Більше того, у полі Contact відповіді 200 ОК міститься URI, що відповідає користувачу Івана на конкретному пристрої. Таким чином, клієнт Петра відправляє АСК саме на цей пристрій, після чого участь Proxy більше не потрібна:

Всі інші повідомлення, включаючи медіа-трафік, оминають Proxy.

Кінець розмови

Наприкінці розмови клієнт Івана відправляє BYE безпосередньо клієнту Петра:

Петро у відповідь шле підтвердження:


Тут все, як у першій частині статті.

Отже, ми розглянули взаємодію SIP-клієнтів за участю Prox-сервера. Залишилося одне питання: звідки Proxy дізнався адреси клієнтів Івана? За допомогою процедури реєстрації. Як це відбувається, я розповім нижче.

SIP-реєстрація

Реєстрація виглядає так:

Давайте докладніше розглянемо кожне повідомлення. Іван відправляє на сервер запит Register (для простоти вважаємо, що роль сервера реєстрації встановлена ​​на proxy.domain.ru). Найважливіше у цьому запиті – поле Contact. Це адреса Івана на конкретному пристрої:

У відповідь сервер надсилає 401 Unauthorized, тобто вимогу авторизації. Найважливіше поле у ​​відповіді - WWW-Authenticate. Не складно здогадатися, що realm це домен, а algorithm вказує, який хеш-алгоритм ми будемо використовувати. Інтерес викликає поле nonce:

Nonce - це скорочення від "number used once".Nonce - це одноразова випадкова послідовність, яку клієнт Івана cкомбінує з рядком пароля, після чого згенерує MD5-хеш від отриманого рядка і помістить результат у новий запит у полі WWW-Authenticate (насправді все складніше, але для простоти вважатимемо, що все саме так). Для цього слугує параметр response.

Навіщо потрібний nonce? Якби клієнт генерував MD5 від пароля і не використовував nonce, то хеш щоразу виходив би той самий. Зловмішник міг би перехопити такий хеш і використати для авторизації. Це було б так само небезпечно, як передавати пароль у відкритому вигляді.

Якщо використовувати nonce, MD5 щоразу береться від нового рядка і виходить різним. Тому навіть перехопивши хеш, зловмисник, швидше за все, не зможе його використовувати для авторизації.

До речі, зверніть увагу, що новий запит на реєстрацію має CSeq на одиницю більше:

Сервер також комбінує nonce з паролем Івана та отримує MD5-хеш. Після цього він порівнює свій хеш із хешом, отриманим від Івана. Якщо вони збігаються, сервер надсилає 200 ОК. Зверніть увагу, що в полі Contact додався параметр expires. У цьому випадку реєстрація зберігатиметься в базі сервера протягом 3600 секунд або однієї години:

Якщо Іван хоче продовжити реєстрацію, то він має надіслати ще один REGISTER протягом цієї години.

Що робити, якщо Іван використовує відразу кілька пристроїв із підтримкою SIP? Все дуже просто – потрібно надіслати запит на реєстрацію з кожного з них.

Після того, як у базі даного сервера реєстрації з'явиться відповідний запис, Proxy-сервер зможе перенаправляти запити на SIP-клієнти Івана.

Bonus для тих, кому цікаво

Ви могли помітити, що у відповідь на запит реєстрації сервер надсилає відповідь, що містить To-tag:

Зрозуміло, що при встановленні діалогу даний tag допомагає уникнути повторного отримання одного повідомлення. Для цього існує правило: якщо повідомлення не містить To-tag і UAS вже отримував повідомлення з таким же CSeq, From-tag та Call-ID, повідомлення відкидається. Для чого потрібен To-tag, якщо ми не встановлюємо діалог із сервером реєстрації. Найкраща відповідь, яку я зміг знайти — у RFC 3261 написано, що відповідь 200 ОК, яка надходить на запит без To-tag, повинна містити To-tag. Тобто це ні для чого не потрібно, але так прийнято.

Сподіваюся, робота протоколу SIP, після прочитання статті, стала для вас більш зрозумілою. Буду радий вашим коментарям.

Схожі статті

  • Який колір добре виглядає із сірим
  • Як виглядає роздратування після гоління
  • Як виглядає попелиця на трояндах
  • Як виглядає хлороз на листі томату
  • Опис журавлини як виглядає де росте коли дозріває щоб збирати
  • Як виглядає кнопка зливу на пральній машині
  • Як виглядає поліестерова тканина
  • Як виглядає веселка у реальному житті
  • Недавні статті

  • Як бродить зернова брага
  • Що робити якщо не засмагаєш на сонці чому засмага погано лягає на шкіру або перестає прилипати
  • Як швидко зняти гель лак без апарату
  • Як робиться Каті голови
  • Яка гребінець краще для об'єму
  • Чим роблять м'яку покрівлю
  • Чи можна залишати крем для обличчя на ніч
  • Де знаходиться датчик селектора
  • географія нашої діяльності
    вулиця Драгоманова, 27
    вул. Курчатова 1Б
    вул. Міцкевича 130
    вул. Лабунського, 1
    вул. Макарова-Пржевальського
    вул. Толстого 10
    вул. Грушевського 28
    вул. Перший промінь (Черняхівського)
    напишіть нам

    сообщение успешно отправлено
    x