SIP для чайников. copyleft by Аlien

Изображение пользователя Xenomorph.

SIP - свободный стандарт IP-телефонии. Широко используется как коммерческими VoIP операторами, так и бесплатными сервисами типа Google Voice, Voxalot, Ekiga.net, Sipnet.ru итд., поддерживается множеством софт/хард телефонов и адаптеров, поддерживает видеотелефонию. В отличии от скайпа является утвержденным, общепризнанным и открытым сигнальным протоколом систем VoIP.

В SIP нет единого глобального узла управления и регистрации. существует множество различных сервис провайдеров - регистраторов. Можно провести аналогию с еmail, или что еще точнее, jabber серверами.
Кроме того, любой пользователь или организация может запустить свой собственный сервер.

Любой SIP адрес (sip uri) состоит из логина пользователя и адреса сервера и имеет вид login@address, например "12345@coolsipvoip.com". В принципе в логине допускаются и буквы, но я бы советовал ограничиться только цифрами, чтобы потом не возникло проблем с набором такого номера с телефонов без алфавитной клавиатуры. Можно иметь неограниченное кол-во SIP аккаунтов на одном или разных серверах, для разных целей.
Поскольку SIP - открытый стандарт, существует множество программных или аппаратных SIP клиентов, все они совместимы друг с другом и с любыми серверами. Для установления связи клиентам не обязательно находиться на одном и том же сервере. При этом, во время разговора они будут автоматически соединены между собой напрямую.

Для присоединения к SIP-телефонии нужно выбрать регистратора и клиент. Начинающим можно порекомендовать sipnet.ru или comtube.ru. Пользователям Windows Сипнет предлагает свой софтфон с предустановками. Он может работать только с этим регистратором, но его почти не надо настраивать. Еще один популярный софтфон для этой ОС - X-lite.
Для *Nix систем неплохой вариант - Ekiga или SFLphone с теми же регистраторами. (Ekiga доступна также для Windows)

▶ Не используйте предлагаемый в Ekiga регистратор ekiga.net. Oн был протестирован и обнаружил проблемы с входящими звонками. Откажитесь от него при первом запуске, затем в менеджере аккаунтов выберите "добавить учетную запись SIP".

Разные регистраторы могут предоставлять разный набор услуг и удобств. Некоторые больше ориентированы на звонки в телефонную сеть (PSTN termination), некоторые - на различные онлайн сервисы. Выберите то что вам больше всего подходит или пользуйтесь сразу несколькими, в SIP это вполне нормальная практика. Географическое положение регистратора большого значения не имеет, поскольку медиатрафик между клиентами в большинстве случаев всё равно будет идти напрямую.
Регистрация как правило бесплатна, ни к чему не обязывает и производится прямо с сайта, после чего вы получаете номер, пароль, данные для подключения (или скачиваете программу с предустановками) и можете сразу пользоваться вашим SIP аккаунтом. Звонки внутри сети, в другие сети и из них, из обычной телефонной сети через шлюзы - бесплатны. Вам не нужно указывать при регистрации никаких платежных средств, если вы не предполагаете звонить на обычные городские/сотовые номера, содержать персональный прямой номер доступа или пользоваться какими-то другими экзотическими услугами.

При ручной настройке основные параметры это ваш номер (логин), адрес сервера для подключения и пароль. Часто указывается еще STUN сервер. Не пренебрегайте им, в некоторых случаях работа без него невозможна.[1]

После успешного подключения вам захочется протестировать работу вашего клиента. Почти все регистраторы имеют служебные номера для проверки, список которых есть у них на сайте. В данном случае самым полезным является "эхотест" или автоответчики с записью и последующим воспроизведением. Часто такие номера работают только внутри сети, но есть и открытые, доступные отовсюду, например:

00000@sipnet.ru - автоответчик с записью/воспроизведением
100000@ipshka.com - эхотест
301@ideasip.com - эхотест

▶ Если вы используете софтфон и не слышите себя в эхотесте, убедитесь что в микшере включена запись с микрофона. Попробуйте записать свой голос в wav в любой подходящей программе. О других возможных проблемах - в конце статьи.

Другие интересные SIP номера:

000@sipnet.ru - последние новости "Эха Москвы"
102@sipnet.ru - курс доллара и евро, Россия
100005@ipshka.com - прогноз погоды, Киев.
17853950049@sipbroker.com - тестовый номер Kansas State University
9999@qxip.net - музыка ("QuasarmusiQ")
8463@proxy.ideasip.com - говорящие часы (US/Eastern Time)

Еще один часто встречающийся в SIP сервис - конференс-линии. При звонке на такую линию вы можете создать свою виртуальную комнату со своим номером и пин-кодом или присоединиться к уже созданной. Таким образом могут общаться 3 и более участников. Иногда такие линии имеют вход и с обычной телефонной сети, так можно присоединиться к беседе с любого телефона.

Рассказывая про SIP, невозможно не рассказать про SIP Broker.
SIP Broker это некоммерческая организация, предоставляющая различные сервисы и удобства пользователям и регистраторам SIP voip. С его помощью можно звонить практически на любой SIP номер с огромного количества входных телефонных номеров в разных странах мира. Также он предоставляет цифровые коды доступа в более чем 2000 SIP-сетей для набора с обычного телефона, без необходимости вводить hostname (правая часть SIP адреса). Это актуально для звонков с аппаратного абонентского оборудования, не имеющего компьютерной клавиатуры. Например, мы едем в Германию и оттуда хотим иметь возможность звонить домой на наш SIP номер (пусть это будет 7555755@sipnet.ru) с любого местного телефона по местному номеру. В справочнике сип брокера[2] находим код sipnet.ru - ∗419. Далее в списке pstn номеров[3] находим нужные входные телефоны. В Германии просто звоним по одному из номеров, после ответа донабираем ∗419 7555755 и говорим с домом. Если какого-то SIP регистратора еще нет в списках сип брокера (что случается крайне редко), его можно добавить самому прямо с сайта и тут же получить код. Также с помощью этого сервиса можно создавать алиасы (например, для легкого запоминания) уже существующих SIP-адресов, звонить на бесплатные (toll-free) номера в некоторых странах и другие интересные вещи. Владельцам SIP-серверов предлагается простой способ интеграции, позволяющий всем пользователям данного сервера автоматически иметь доступ ко всем услугам сип брокера.

Возможно кому-то будет полезна информация о том, что в некоторых странах мoжно абсолютно бесплатно получить прямой (без донабора) телефонный номер (DID number), все звонки на который будут поступать на указанный вами SIP адрес. Единственное условие - нужно, чтобы раз в какое-то время (в месяц например) на него кто-то звонил и связь была установлена хотябы на пару секунд. Ключевые слова для поиска: free DID number. [4]

В SIP тоже можно получать информацию о присутствии и обмениваться текстовыми сообщениями, но гораздо удобнее для этих целей использовать jabber. Некоторые SIP клиенты имеют даже встроенный jabber-клиент, но я бы рекомендовал отдельный. Тогда у вас будет комфортный полноценный IM/чат, комфортный VoIP и больше возможностей выбора и компоновки.

Отдельно стоит сказать о кодеках. Часто, когда сравнивают качество связи "в сипе и скайпе" про них забывают, а именно кодеком определяется полоса аудио частот и некоторые другие факторы. Как правило клиенты поддерживают целый набор кодеков, из которого выбирают подходящий во время установления соединения. В настройках клиента им можно менять приоритет или вообще отключать (если вы знаете что делаете). Самыми продвинутыми и качественными на сегодняшний день являются: (в порядке возрастания качества звука и требуемой ширины канала) Speex8, Speex16, Speex32, CELT32, CELT48.

Если у вас возникла необходимость позвонить в скайп, можете воспользоваться шлюзом skype.sipnet.ru. В своем клиенте наберите номер вида skype_login@skype.sipnet.ru (видеозвонки не поддерживаются). Пользователи скайп могут позвонить вам, вызвав в качестве абонента skype.sipnet.ru а потом донабрав ваш ID в sipnet.ru (и только там).

Еще хотелось бы упомянуть про GTalk2VoIP. Это онлайновый VoIP/IM комбайн с огромным количеством функций и применений, обеспечивающий связь между обычной телефонией, VoIP и IM сервисами в различных комбинациях. Пользование им, конечно, выходит за рамки начального знакомства с SIP, но вещь очень интересная. Желающим почитать о его возможностях:
http://www.gtalk2voip.com/gtalk_services.shtml

В завершение несколько слов про криптографию.
SIP-телефония включает в себя 2 протокола - сигнальный sip (управление, набор номера и информация о статусе соединения) и транспортный rtp (непосредственно аудио/видео потоки). Если оба клиента имеют поддержку шифрования потока (SRTP/zRTP), то разговор можно вести по шифрованному каналу. Если сервер и клиент поддерживают TLS, то и сигнальный трафик будет защищенным.

ссылки:
1. http://ru.wikipedia.org/wiki/STUN
2. http://sipbroker.com/sipbroker/action/providerWhitePages
3. http://sipbroker.com/sipbroker/action/pstnNumbers
4. http://www.voip-info.org/wiki/view/DID+Service+Providers

***

Наиболее актуальные SIP софтфоны:

Ekiga (GPL, *nix/windows) http://ekiga.org/
Qutecom (GPL, *nix/windows/osx) http://www.qutecom.org/
SIP Communicator (LGPL, java) http://www.sip-communicator.org/
SFLphone (GPL, *nix) http://www.sflphone.org/
Linphone (GPL, *nix/windows/osx/android/iphone) http://www.linphone.org/
SipDroid (GPL, android) http://sipdroid.org/
X-Lite (proprietary, windows) http://www.counterpath.com/x-lite.html
fring (freeware, mobile devices) http://www.fring.com/

Пример аппаратного SIP решения: шлюз, позволяющий подключить 2 обычных телефона к 2-м независимым SIP аккаунтам и пользоваться ими без связи с ПК. Очень удобная и богатая возможностями вещь. Поддерживает CallerID. Позволяет использовать SipBroker вне зависимости от регистратора (dial plan support).
http://voips.ru/Linksys-by-Cisco-PAP2T.html

С полным спектром выпускаемого SIP-совместимого оборудования можно ознакомиться например тут: http://www.sipnet.ru/orderandpay/hardware.php
(для обычного пользователя, вероятно, самыми полезными будут категории "SIP телефоны" и "VoIP шлюзы"). При выборе следует отдавать предпочтение известным и зарекомендовавшим себя маркам (Linksys, D-link, Cisco, Grandstream итп)

Несколько известных sip voip провайдеров:
http://www.sipnet.ru
http://www.comtube.ru
http://zadarma.com/ru
http://www.voxalot.com
http://www.ideasip.com
http://www.voipbuster.com

Сравнение цен на звонки в телефонную сеть по разным направлениям:
http://www.voipratetracker.com/compare_rates
http://www.voip-catalog.com/voip_routes.html

Возможные проблемы.
Если ваш клиент зарегистрировался на сервере нормально, но звонки в одну или обе стороны не проходят или наблюдается односторонняя слышимость, источником проблем скорее всего является плохо настроенный firewall или жестко закрытый NAT, не поддерживающий "из коробки" прозрачную работу с такими сервисами. Вначале убедитесь, что у вас всё в порядке с микшером и микрофоном, как было описано ранее. Попробуйте отключить firewall. Проверьте, указан ли STUN. Ниже приводятся несколько ссылок, в которых всё это описано лучше, чем это можно сделать в рамках данной статьи.
Отдельно можно выделить ситуацию, когда входящие звонки работают сразу после подключения, но перестают проходить после нескольких минут простоя. В этом случае решение сводится к подбору времени keepalive в клиенте и тоже хорошо описано в первой ссылке.
После каждого шага не забывайте переподключиться к серверу (если это софтфон - просто перезапустите его)
http://wiki.sipnet.ru/index.php/Подключение_через_маршрутизатор_с_NAT
http://wiki.sipnet.ru/index.php/Трансляция_сетевых_адресов_%28NAT%29_и_SIP

(Ↄ) Copyleft by Alien

Комментарии (44)

+1
Kombala - 18 Январь, 2011 - 18:37
Изображение пользователя Kombala.

Говорю как чайник - SIP, конечно, хорош. Но довольно часто без скайпа не обойтись - не будешь ведь всех людей в конференции заставлять читать маны и ставить SIP. (а он довольно геморно ставится)

+2
Xenomorph - 18 Январь, 2011 - 18:39
Изображение пользователя Xenomorph.

эм, ну вы хоть статью-то читали? Там указан способ skype2sip и sip2skype связи.

0
Kombala - 19 Январь, 2011 - 03:48
Изображение пользователя Kombala.

много букав. Я сразу ответил, а вот после вашего коммента - обязательно прочитаю.

0
Lexxa - 19 Январь, 2011 - 14:09

Как раз по этому вопросу удивительно мало букав.

0
Xenomorph - 19 Январь, 2011 - 19:09
Изображение пользователя Xenomorph.

ну уж извинити, сколько было - столько и написали.

0
dyug - 18 Январь, 2011 - 21:07

сип сервер? каждому? а зачем? /me недоумении чешет в затылке, подключившись к сип серверу юрмаха. и трепясь с ним... :-)
мне для трепа и клиента хватает...

0
_KoT_ - 19 Январь, 2011 - 20:18
Изображение пользователя _KoT_.

Дёшь открытые протоколы!))

А как дела обстоят с передачей видео? (я пойду погугулю, но стоит сказать об этом в рамках замены скайпу)

0
dyug - 19 Январь, 2011 - 20:23

Asterix позволяет, например, в комплекте с ekiga
проверялось года два назад, наверное...
подробности настраивал yurmax :-)

0
Xenomorph - 19 Январь, 2011 - 20:26
Изображение пользователя Xenomorph.

поддерживает видеотелефонию.
в первых же строках статьи.

0
_KoT_ - 19 Январь, 2011 - 20:32
Изображение пользователя _KoT_.

Точно) Извиняюсь, просмотрел.

0
yurmax - 20 Январь, 2011 - 19:25
Изображение пользователя yurmax.

да, за сип брокер плюс, зачетная фишка. еще правда не тестил толком, кодек бы им нормальный, цены бы не было, практически все звонки слышны как из унитаза, но покатит.

0
Xenomorph - 20 Январь, 2011 - 21:29
Изображение пользователя Xenomorph.

sipbroker к кодекам не имеет никакого отношения, он просто предлагает так называемую "коммутацию". А кодеки - это в первую очередь дело самых клиентов. Какой кодек выберешь ты и твой собеседник - такой звук и будет. Если по умолчанию выставлен какой-то слабо грузящий процессор кодек, но с плохим качеством звука и вы не удосужились его сменить - это уже недочёт с вашей стороны. Оптимальным кодеком с наилучшим качеством звука, что я пока слышал - speex/32000.

0
yurmax - 20 Январь, 2011 - 22:44
Изображение пользователя yurmax.

ну раз коммутацию тогда объясни какого лешего мне приходит звонок с 204.11.194.10 а не с адресов московского гейта комкор.ру, оно же акадо-телеком?
еще объясни на какой стадии связь выбирается моим клиентом, на стадии соединения с московским телефонным гейтом, на стадии коннекта комкора на сипброкер, или при вызове с сипброкера?

0
Гость - 20 Январь, 2011 - 22:57

а можно получить более детальное описание того, что и как вы тестировали, кто откуда куда звонил итд. ?

0
yurmax - 21 Январь, 2011 - 01:54
Изображение пользователя yurmax.

вобщем после всех ковыряний в консервах выяснилось.
говнокодек gsm выдает комкор. при связке сипклиент-комкор-телефонный шлюз, ну как бы слышно нормально, но выводит из себя какой то постоянный зуммер на фоне разговора.
может они намекают этим что надо бы пакет премиум взять....

0
Гость - 21 Январь, 2011 - 05:18

Выдает он его не сам по себе, а в результате предварительного обмена данными с вашим клиентом. Трудно представить, что гейт, работающий с СипБрокером, запретит g.711. У вас в клиенте такой кодек есть? (он же PCMU/PCMA). Если да - поставьте обеим его вариациям высокий приоритет, а gsm отключите вообще. Отпишитесь, как результаты. Если кодеки не подойдут, клиент не станет даже звонить.

0
yurmax - 22 Январь, 2011 - 20:46
Изображение пользователя yurmax.

соединял рандомно gsm\a(u)law.
завел аккаунт на комтубе, подключил к астериску ,выставил приоритеты кодеков, ну отлично.
у сипброкера пока чаще дает отлуп по русски что пользователь занят, при этом на астериске тихо, вызова не видно.
в принципе оно и понятно, шара.

0
Samath - 25 Январь, 2011 - 17:44

Хочу уточнить. Можно зарегистрироваться на sipnet.ru, а в качестве клиента использовать QuteCom, например?

0
Xenomorph - 25 Январь, 2011 - 20:05
Изображение пользователя Xenomorph.

Да, именно так. Я пользуюсь qutecom, но зарегистрирован на voxalot.com

0
Samath - 25 Январь, 2011 - 23:14

я зарегенился на sipnet.ru. На сипнете дают сначала тестовый профиль, и если в течение 30 дней не положить деньги на счет, то аккаунт удаляется. А voxalot.com или Ekiga.net так же ?

0
Гость (не зарегистрирован) - 28 Январь, 2011 - 18:33

Точно удаляется? Сейчас я такого на их сайте не вижу, зато вижу упоминания про рекламу. Я тоже завел там аккаунт, посмотрим что с ним будет через месяц. В любом случае, это скорее исключение чем правило среди SIP регистраторов. Мой основной акк находится на Воксалоте, плюс я еще регистрировал штук пять для проверки.

А вот ekiga.net лучше обходить стороной, у него наблюдаются проблемы. Статья обновлена.

0
Samath - 30 Январь, 2011 - 23:47

Ну у меня еще 30 дней не прошло, но при регистрации, мне написали, что акк тестовый, и через 30 дней будет удален, если не положить денежку.

0
yurmax - 31 Январь, 2011 - 00:56
Изображение пользователя yurmax.

я там регистировался раза три. аккаунты уже старше 30 дней. но что самое прикольное, они не дают восстановить пароль на старые аккаунты, говорит что такого мыла нет, и не дают создать аккаунт с логином устаревшего аккаунта.
что как бы говорит нам что нифига они не удаляют.

0
zloj_kemper - 2 Февраль, 2011 - 20:53

О как. А я уж было решил выбрать именно Сипнет из-за гейта в Скайп.

0
yurmax - 2 Февраль, 2011 - 21:56
Изображение пользователя yurmax.

ну как бы не сложно каждый месяц делать новый или кинуть туда 5 баксов чтоб не закрывали аккаунт.
мне сипнет чисто из спортивного интереса, а будет после обкатки действительно нужен то проще кинуть туда пятёрку и не морочить себе голову каждый месяц.

0
Xenomorph - 3 Февраль, 2011 - 15:58
Изображение пользователя Xenomorph.

На skype.sipnet.ru можно звонить и с других регистраторов, проверялось.

0
salt - 25 Январь, 2011 - 21:08
Изображение пользователя salt.

Мне удалось запустить Ekiga только в локалке. Через NAT удалось запустить twinkle. Регистрировался на www.sipnet.ru

0
Xenomorph - 25 Январь, 2011 - 21:15
Изображение пользователя Xenomorph.

С екигой проблемы в последнее время. Не надо её использовать пока, прошу прощения, статья будет исправлена.

0
yurmax - 25 Январь, 2011 - 21:38
Изображение пользователя yurmax.

последнее время?
я помню на 7.04 еще пытался настроить, так она либо зависала намертво либо не хотела регистрироваться, работала только если венера в седьмом доме меркурия по четным дням. и вот пару дней назад снова пробовал ,аналогичная ситуация.

0
Xenomorph - 25 Январь, 2011 - 23:37
Изображение пользователя Xenomorph.

Так, прошу прощения, я немного попутал. Клиент ок, а регистратор(ekiga.net) глючит.
*added что говорит по этому поводу? ekiga -d 4 2>&1 | grep NAT

0
Гость - 26 Январь, 2011 - 17:00

Что касается глухих натов, делающих проблемы, то я бы советовал в них просто пробросить 2 диапазона портов (для sip signalling и rtp media stream), подогнать под них клиенты и всё. Но судя по дефолтовым настройкам Ekiga, ей вполне хватит одного непрерывного диапазона 5060-5100 (tcp/udp)
Убедитесь, что в ней не отключен STUN (disable_stun = false). Для этого придется залезть в gconf или в ~/.config/ekiga.conf , если Ekiga у вас работает без гнома.

0
Xenomorph - 27 Январь, 2011 - 21:05
Изображение пользователя Xenomorph.

Немного обновлена статья.

0
theWRM - 5 Февраль, 2011 - 03:00

интересно.... Спасибо за статью!

0
salt - 8 Февраль, 2011 - 00:19
Изображение пользователя salt.

Победил и ekiga и twinkle, нужно открывать порт 5060 (я сначала открыл 5060/udp где вычитал уже не вспомню, но мой голос при этом не уходил, работал только на вход), спасибо за статью, именно она сподвигла наконец то настроить всё как надо!
P.S. добавлю ещё одного провайдера http://sipgate.ru/
P.P.S. Сегодня эксперементировал с портами, закрыл 5060, всё равно всё работает. Видимо дело не в бабине а в моем деревенском EDGE интернете.

0
Гость - 11 Февраль, 2011 - 19:56

Тут гадать ничего не надо. Как уже писалось, SIP-телефония использует отдельные порты для управления и для передачи голоса/видео. Номера и количество портов жестко не оговариваются, каждый клиент волен устанавливать их по своему усмотрению. По умолчанию Ekiga использует диапазон 5060-5100, именно его следует указывать при пробросе портов. В twinkle в настройках установите sip listen port 5060 и rtp port range 5070-5100, чтобы уложить его в тот же диапазон.

+1
berlozhnik - 15 Март, 2011 - 14:39

Есть еще провайдер sipout.
кто что о нем может сказать?

0
useless_dream - 15 Март, 2011 - 20:36
Изображение пользователя useless_dream.

никак не получается настроить QuteCom.
общие настройки для клиентов:

при создании профиля указал логин, пароль. подскажите какие параметры нужно исправить в "Окно расширенных настройках". я указал sip port, sip server и stun сервер в "network.stun.server" (скорее всего не правильно), но другой похожей опции не нашел:)один раз клиент приконектился,позвонил всё норм, больше он не хочет конектица..
буду признателен:)
0
berlozhnik - 16 Март, 2011 - 00:48

эмне...если ваш сип-пров не сообщал дополнительных настроек,то сразу лезть в них я бы не стал)
к сипоуту,например,я подключился так:
ссылка на картинку
а к сипнету-так:

0
useless_dream - 16 Март, 2011 - 02:17
Изображение пользователя useless_dream.

все так и сделал, только у меня nonoh.net, соответственно и указывал его параметры, но так и висит на конекте..
таким макаром спокойно заработал Zoiper Communicator, но хочется, что-нибудь русифицированное и в kde интегрировалось, как QuteCom :)

0
Гость - 11 Сентябрь, 2011 - 19:01

Здравствуйте. Будьте добры помогите мне настроить и подключить программу QuteCom , используя предложенный вами sip домен. У меня самостоятельно никак не получается.
Буду вам весьма благодарна и признательна, Шарова Анжелика

0
PERFECTFIT - 22 Сентябрь, 2011 - 09:33

Здравствуйте, скажите, пожалуйста, как можно привязать стационарный телефон к
X-lite? Чтобы звонили на него, а попадали в X-lite. Не через Московский код
города, а через местный. Есть договор с московским оператором. Допустим, у нас есть одна местная стационарная телефонная точка. Четыре сотрудника находятся дома, у каждого стоит x-lite на ПК. Так же есть четыре SIP-аккаунта. Хотелось бы, чтобы звонки поступали на городской и далее уже через добавочные перенаправлялись вызовы на сотрудников, которые находятся на домашних компах. Что для этого нужно? Нужны ли IP-ATC или достаточно будет приобрести шлюз?

0
Сергей Сергеев - 31 Май, 2012 - 17:12

Мне пришлась по нраву постоянно развивающаяся Open Source программа Jitsi, мультипротокольная и мультиплатформенная.
Единственно, на java.

"Jitsi (previously SIP Communicator) is an audio/video and chat communicator that supports protocols such as SIP, XMPP/Jabber, AIM/ICQ, Windows Live, Yahoo! and many other useful features."

0
boskor - 2 Ноябрь, 2012 - 09:59

Приветствую всех. подскажите пожалуйста, как настраоить шифрование sip протокола в qutecom

0
Гость - 3 Июнь, 2014 - 14:42

http://sipinout.net хороший сайт

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры