?

Log in

No account? Create an account
SIP: VoIP для консерватора, или как не кормить даромоедов - Журнал Восставшей Машины [entries|archive|friends|userinfo]
ArkanoiD

[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

SIP: VoIP для консерватора, или как не кормить даромоедов [Feb. 2nd, 2009|02:57 pm]
ArkanoiD
[Tags|, ]

Для начала, небольшая вводная: что представляет из себя традиционная телефония? По сути, торговлю натуральными числами (номерами), то есть создание немыслимо большой прибавочной стоимости к передаче скромных объемов данных, особенно посредством таких прекрасных псевдоуслуг, как "роуминг", "межгород" и т.д. Разумеется, если мы можем передавать данные по три копейки за ведро, грешно было бы не воспользоваться этим, чтобы показать телефонистам мужской половой детородный Хуй большую дулю. К тому же, нам не нужно тянуть отдельные провода, морочиться с очень специального вида дорогостоящим оборудованием, сплошные преимущества, да и только.

Но это, так сказать, глобальная перспектива. Для частных же, особенно далеких от IT, пользователей, IP-телефония является обычно в двух воплощениях: это "цыцкофон" в офисе на столе (плевать, как он работает, пусть IT-отдел разбирается, снял трубку - гудит, как обычный старый "панасоник") и skype, через который можно бесплатно поболтать с уехавшим в другую страну приятелем. На первый взгляд выглядит логично: разные задачи, разные средства решения: в первом случае это именно телефон, бизнес-инструмент, во втором - универсальное средство общения, совмещенное с сервисом мгновенных сообщений и оповещением о статусе доступности абонента.

Так? Да не так. Когда мы звоним голосом, мы хотим звонить по телефону, желательно с нашей привычной мобилки и из общей записной книжки, а не "через компьютер", и кому угодно. И ради этого вполне можно пожертвовать статусами присутствия - если человек может снять трубку, он ее снимет, если не сможет - мы перезвоним позже или оставим сообщение на автоответчик (*). Нет, есть, конечно, люди, которым удобнее синхронизировать записную книжку скайпа с аутлуком и звонить "прямо оттуда" и т д, но я, например, к ним не отношусь. У меня вообще "в компьютере" записной книжки нет, она вся в телефоне.

В результате, у меня к VoIP-решению сформулировался очень простой набор требований, сводимый, в принципе, к простой фразе "хочу, чтобы все работало само и я об этом не думал":

Я хочу настроить его один раз, быстро и без возни, и пользоваться далее, как обычным телефоном, то есть вообще не думать о том, что это какое-то там VoIP, что нужно запускать какие-то программы, или того хуже - ходить к компьютеру, все должно работать прямо с моего мобильного телефона, из стандартных приложений (записная книжка, ответный звонок на SMS, журнал звонков, контекстные меню), а не каких-то фрингов-талконавтов. Оно должно работать с любой WiFi сетью, частной, публичной или офисной и не требовать при этом дополнительных настроек ни от меня, ни от администратора сети. Когда я кому-то звоню в общую телефонную сеть, тот, кому я звоню, должен видеть уже привычный ему за последние десять лет номер моей мобилки, а не чорт знает что. Входящие звонки я также должен стабильно получать на свой мобильный телефон, не задумываясь, на "обычный" или "интернет" номер мне звонят. Разумеется, платить я буду только в тех ситуациях, которые предполагают взаимодействие с "обычными" телефонными сетями.



Много хочу? Отнюдь. Ровно все это делает никакой вовсе не Skype, а штатный клиент VoIP, который есть в большинстве современных смартфонов от Nokia и даже в некоторых "тупофонах" на Series 40 (например, таком простом аппарате, как 6300i, или даже Vertu Signature S), а скоро будет совсем уже везде. Мне бы хотелось написать также и про смартфоны на платформе Windows Mobile, но к сожалению, там это совсем никак не стандартизовано: вроде как, поддержка VoIP есть на большинстве HTC, какая-то своя - на HP, настраиваемая только с декстопа и т.д, так что ниже речь пойдет про Nokia и Symbian. SIP, как ни странно, родственник не Skype, а той самой офисной IP-телефонии.
UPD: Вот тут есть конфигуратор встроенного SIP для WM6. У меня нет WM-смартфона, так что не было и возможности попробовать, за что купил, за то и продаю.

Идентификатор абонента SIP похож на адрес электронной почты (или jabber id), также состоит из имени и домена, разделяемых "@" собакой и иногда совпадает с почтовым адресом - для удобства.

Все сводится к двум простым шагам: a) выбору SIP-оператора и b) настройке.

Выбор оператора

Наиболее популярный в России оператор SIP называется SipNet. К его несомненным достоинствам относится то, что за него очень просто заплатить: платежи принимаются как любыми распространенными электронными деньгами, так и с помощью вездесущих платежных терминалов. Увы, на этом его преимущества и заканчиваются (ну, если не считать наличия пользовательского форума, где можно задавать вопросы, с которыми завернули из саппорта), начинаются недостатки.

Недостатком номер один являются проблемы с NAT traversal, доступом из сетей, осуществляющих трансляцию IP адресов. Не всех, но некоторых. Не проявляется при звонках в пределах SipNet и на городские телефоны, но стоит позвонить на IP-телефон, подключенный к Asterisk (это самое популярное на настоящий момент ПО для организации "программной АТС") - возможны непредсказуемые проблемы, отсутствие соединения или отсутствие слышимости. Проблемы решаемые, но условием задачи мы поставили отсутствие проблем с настройкой, а не их разрешимость. (**)

Недостатком номер два является отсутствие поддержки ENUM. Причем как регистрации, так и при звонках. Что такое ENUM? Это такой способ плавной миграции с "традиционной" телефонии на VoIP для входящих звонков: общедоступный справочник на основе DNS, в который можно внести соответствие свого "обычного" телефона SIP-телефону. Таким образом, если кто-то мне звонит на мой мобильник с SIP-телефона, и его SIP-оператор (в теории, и клиент может то же самое) поддерживает ENUM (а поддерживают почти все), то вместо того, чтобы выводить звонок в сотовую сеть и платить за это деньги, получает автоматически мой SIP-адрес и звонит мне через IP. В свою очередь, я или принимаю этот звонок бесплатно для себя, если мой мобильник зарегистрирован в SIP в настоящее время, или получаю его через переадресацию. В лучшем случае не платит никто, в худшем - немного плачу я. С точки зрения безопасности ENUM штука несколько сомнительная, как все, что основано на DNS, но уж очень удобная.

Недостатком номер три являются тарифы, но о них в сводной табличке ниже.

Недостатком номер четыре является невозможность купить номер для входящих звонков где-либо, кроме как в Москве.

Так что критерий выбора получается простой: не SipNet ;-). А кто? Вариантов много. TruPhone (у этих, кстати, своя еще более упрощенная программа настройки и клиент для iPhone), CallWithUs и другие. Gizmo, кстати, тоже SIP-оператор в глубине своей души.

А вот, собственно, табличка, почем все это обойдется - очень приблизительная, просто для ориентации:

Оператор/ Направление Москва (+7495/+7499) Петербург (+7812) Москва (мобильные) Петербург (мобильные) Россия Украина U.S.
Мегафон СПб (Тариф Единый) $0.36 $0.12 $0.36 $0.12 $0.70 $1.0 $3.0
Мегафон Москва (Тариф Единый) $0.10 $0.10 $0.10 $0.10 $0.10 $0.20 $0.70
SkypeOut $0.025 $0.025 $0.08 $0.08 $0.055-$0.08 $0.155-$0.215 $0.025
SIPNet $0.025 $0.05 $0.09 $0.09 $0.10 $0.12 $0.05
CallWithUs $0.015 $0.015 $0.035 $0.035 $0.015-$0.04 $0.08-$0.10 $0.01


Кроме того, у всехмногих VoIP операторов принята посекундная тарификация и никакой "платы за соединение". У CallWithUs как раз поминутка, но при таких тарифах это не страшно.
Я, честно сказать, до сих пор не переключился с SIPNet на CallWithUs, потому что уже занес сдуру в SIPNet денег и все никак их не могу потратить.

Настройка телефона

Куда уж проще! Обычно все это описано в руководстве, которое выдаст выбранный SIP-оператор. Нужно зайти в меню Tools -> Settings -> Connections -> SIP Settings, создать новый профиль, указать ему тип IETF, ввести имя сервера, realm, имя пользователя и пароль. Выглядит это примерно так:



Здесь мы вводим ту точку доступа WiFi, которая доступна в настоящий момент:




UPD: "Realm" в русских прошивках называется загадочным словом "Область". Ллео Каганов пытался там вводить "Москва, Чертаново" и удивлялся, что ничего не работает. Так делать не надо!

Обращаем внимание, что если все прошло, как нужно, статус меняется на registered и в правом верхнем углу появляется новая иконка с телефонной трубкой на фоне земного шара:



После этого указываем, что по умолчанию мы будем звонить через Internet, если этот сервис доступен:



Вот, собственно, и все. Не сложнее настройки электронной почты. Когда мы оказываемся в зоне действия другой (новой) WiFi сети, нам нужно зайти в меню "Internet telephone" (лучше вывести ее шорткат на десктоп active standby для удобства) и добавить эту сеть в качестве возможного транспорта для подключения. Один раз. В следующий она уже увидится и зацепится сама.

Что еще можно придумать? Если у вас в офисе тоже используется SIP, можно зарегистрировать мобилку в офисной сети WiFi и на офисной АТС и тогда ваш рабочий телефон всегда будет в кармане в курилке или на обеде. Ограничений на одновременную регистрацию в нескольких сетях нет.

Батарейку при правильных настройках WiFi (не поддавайтесь на уговоры форумных "гуру" выключить к чорту энергосбережение) потребляет вполне умеренно, то есть стандартной батарейки e71 или e90 хватает примерно на двое суток режима ожидания при постоянной регистрации SIP.

Стоит ли все это возни? Да, пожалуй. Мне удобно, что звонок через океан обходится мне не дороже, чем звонок в соседний дом. Так и должно быть, понимаете?

Против Skype

А вот Skype должен умереть. За полной его ненадобностью. Во-первых, как видим, цены на "приземление" (вывод звонков в общую телефонную сеть) у него довольно-таки унылые. Во-вторых, "Вы хотите говорить по телефону? Нет, по граммофону!". Я не любитель разговаривать "по граммофону", то есть с помощью каких-то дополнительных программ и устройств с неочевидной эргономикой. В-третьих, это самописный клиент, закрытый протокол и никто толком не знает, что он может натворить на вашем компьютере. Хваленая способность "проникать через firewall'ы", настроенные лопуховатыми админами в нормальной корпоративной среде скорее минус, чем плюс и сама по себе является достаточным основанием для блокировки; SIP же работает документированно и "цивилизованно". В-четвертых, каждый клиент Skype является потенциальным ретранслятором чужого трафика, что далеко не всех устраивает.

Видео

А бывает ли видео SIP? Конечно, бывает. Можно же подключить и настольный видеотелефон, и веб-камеру. Если оно вам надо. Мне как-то не очень пока.. Мобильник не поддерживает, хотя и мог бы, но я не расстроен по этому поводу.

Может ли все это работать через GPRS/EDGE?

Может. Но не будет. Точнее, EDGE по идее более чем достаточно для передачи голоса, но так как реальные сети работают часто довольно-таки скверно, Nokia решила во избежание вопросов "а почему мне нихрена не слышно?" отрубить эту возможность насовсем. Обидно, что и в специальной программе, которая управляет более тонкими настройками VoIP включить ее обратно нельзя. Через 3G - пожалуйста, сколько угодно.

WiMAX

Большим соблазном было бы звонить через WiMAX, который уже неплохо покрывает центр Москвы и Петербурга. Однако, увы, Nokia n810 WiMAX edition снята с производства и не поддерживается в сети Yota, а с HTC MAX 4g любопытный казус: даже если отвелчься от того факта, что время автономной работы от батареи при активном WiMAX соединении всего лишь считанные часы (при наличии USB-зарядки под рукой дома, в офисе и автомобиле это не очень большая проблема), удивительно, что в штатной "звонилке" от HTC, унаследованной от 3G-брата HTC Touch HD поддержка VoIP есть, а вот в "звонилке" от Yota - нет!


(*) Строго говоря, статус присутствия все-таки полезен иногда. И в SIP он теоретически заложен в возможности протокола, как и обмен сообщениями (т.н. SIMPLE). Но судя по тому, что никто им не пользуется и большинство клиентов не торопятся его поддерживать, не настолько эти функции востребованы.

(**) http://wiki.sipnet.ru/index.php/Nokia_%D0%B8_NAT . SIPnet'овцы объясняли подробно, почему у них есть эта проблема, а у остальных нет.


-----

Почему я решил написать этот опус? Ни Nokia ни CallWithUs не платят мне ни копейки (наоборот!). Причина, скорее, здесь. Мой сотовый оператор, которому я за долгую историю наших отношений несу уже не первый десяток тысяч долларов, окончательно потерял страх и совесть и в борьбе за лишние 15 рублей ARPU играет с абонентами в наперстки, незаметно подключая какие-то мудацкие платные услуги и постоянно снижая и без того сомнительное качество сервиса. А на меня где сядешь, там и слезешь. Вот вам мои 15 рублей, сраные уроды.



Лично я таким способом уменьшил свой ежемесячный счет за телефон в январе почти на две тысячи рублей. Ну не только таким, еще закэшировал заранее все карты города, чтобы не подкачивать их на ходу, и стараюсь пользоваться opera mini вместо штатного броузера и jabber'ом вместо SMS. Вот бы еще придумать, как за SMS сотовому оператору тоже не платить ;-)
linkReply

Comments:
Page 1 of 4
<<[1] [2] [3] [4] >>
[User Picture]From: angesty
2009-02-02 06:58 pm (UTC)
Поздравляю с днем сурка.
(Reply) (Thread)
[User Picture]From: amavlyanov
2009-02-02 07:18 pm (UTC)
курс у CallWithUs очень приятсвенный... Russian Ruble (0.02777) при том что U.S. Dollar (1.00000)
(Reply) (Thread)
[User Picture]From: dizel_by
2009-02-02 07:31 pm (UTC)
А где там хоть платить? Перерыл весь интерфейс. Половина страниц вообще пустая, на оставшихся про оплату ни слова. А так - да, сервис интересный. Если они и правда дают callerid для исходящих вызовов, это просто сказочно круто.
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: iskatel
2009-02-02 07:19 pm (UTC)
>>Skype должен умереть.

В общем-то я трижды ЗА. Но.. миллионам лемминогв нравится то, что он крйне просто настраивается. И то, что автоматом пытается пролезть через файрволлы, НАТы и тд.
Угу, как по мне, это плохо. А леммингам хорошо - точнее, они думают, что это всегда будет хорошо.
wifi - не везде оно есть, увы. Слабо верится в 2 суток непрерывного wifi подключения.. это как, wifi выключен и включается раз в полчаса для перерегистрации?

----
что-то у тебя несколько завышенные цена для Сипнета указаны.
вот залез проверить 7182 : 0.025-0.035 - как настроишь маршрутизацию, на выбор. Можно и по 0.05$.. У тебя указано $0.05. И не только там.
ТАрифы CallWithUs у меня вызывают подозрения.. насколько оно там качественно. Про серость уж молчу.
(Reply) (Thread)
[User Picture]From: arkanoid
2009-02-02 07:23 pm (UTC)
Так и в SIP уже давно проблем с NAT traversal нет. И настраивается он, как я показал, не сложнее.

Просто в нокии правильно сделано энергосбережение в WiFi. Сам удивился.

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

Edited at 2009-02-02 07:24 pm (UTC)
(Reply) (Parent) (Thread) (Expand)
(Deleted comment)
(Deleted comment)
[User Picture]From: alexkuklin
2009-02-02 07:25 pm (UTC)
enum - здорово, но его должен поддерживать оператор, как я понимаю
(Reply) (Thread)
[User Picture]From: arkanoid
2009-02-02 07:29 pm (UTC)
Так все, кто работает на астерисках (а это три четверти коммерческих сервисов) его поддерживают автомагически.
(Reply) (Parent) (Thread) (Expand)
(no subject) - (Anonymous) Expand
[User Picture]From: blacklion
2009-02-02 07:39 pm (UTC)
Уф. Здорово.

Надо мне таки разрисовать на бумажке, чего я хочу от SIP дома прежде всего :)
Хотя, блин, мой текущиё gateway *-ка просто не потянет, т.е. он окажется за NAT'ом, а это очередной гемморой.
(Reply) (Thread)
[User Picture]From: alexkuklin
2009-02-02 07:45 pm (UTC)
а в чем проблема?
IAX2 линк не спасет?
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: angry_elf
2009-02-02 07:47 pm (UTC)
У сипнета еще ограничение на 8 одновременных подключений. Про лимит на сайте ни слова (не нашел, по крайней мере), но 9-й коннект стабильно посылает с 403.
(Reply) (Thread)
[User Picture]From: liao
2009-02-02 08:12 pm (UTC)
Это очень плохо что voip или ip-телеофния так воспринимается как "альтернатива" проводной. voip уж лет 5 как просто _полноценный_ траспорт, а не какая-то дешевая альтернатива.

Хотя для не корпоративного потребителя наверное все так, как ты и описал :)
(Reply) (Thread)
[User Picture]From: arkanoid
2009-02-02 08:14 pm (UTC)
Для корпоративного - транспорт, а для частного - почему-то ассоциируется со скайпом дурацким.
(Reply) (Parent) (Thread) (Expand)
From: vp
2009-02-02 08:18 pm (UTC)
Через EDGE великолепно работает SIP.
Белоруссия.
(Reply) (Thread)
[User Picture]From: arkanoid
2009-02-02 08:20 pm (UTC)
Но не штатным нокивским клиентом, увы.
(Reply) (Parent) (Thread) (Expand)
(Deleted comment)
From: rampitec
2009-02-02 08:21 pm (UTC)
Это круто, и наверное так и должно быть. А можешь ответить на пару вопросов человеку, который не вполне в теме?

1) Мне нужно натуральное число. Номер, по которому мне могут позвонить. Я напишу его на визитке. Люди, не оберемененные лишними знаниями, проблемами и комплексами, наберут его на обычном телефоне и попадут ко мне. Как с этим? Идеально было бы сохранить свой текущий номер.

2) Я свой номер не менял никогда. Много лет. Те же люди набирают мой номер с древней визитки и по прежнему попадают ко мне. Контракт с Большими Серьезными Дядями позволяет мне надеяться, что я и дальше могу на это рассчитывать. Как с этим у казачьей вольницы VoIP? Готовы они дать мне контракт такой, чтобы я был уверен - будет работать. Или, скажем, пусть этот оператор сдохнет, но я смогу перетащить свой идентификатор и, что важнее, обычный телефонный номер к другому оператору. Можно?

3) Меня не очень напрягает стоимость звонков в домашнем регионе, хотя я и не звоню с мобильника в Австралию. Иногда хочется. Да, неудобно, но... Но больше всего меня напрягает стоимость звонков в роуминге. Но ведь там и GPRS/3G золотой, и что с роуминговым контрактом на данные не ясно, и вайфая обычно нахрен нет, либо он золотой. Т.е. в самой интересной ситуации это решение, которое должно быть универсальным, как раз и не сработает. Или я не прав?

4) А что с качеством? Skype с мобилы - говно редкостное в большинстве случаев, например.

5) И все же батарейка...

6) А как у нас с непрерывностью разговора, если я еду на машине со скоростью 100км/ч? Телефон с этим справляется.

7) А что с минимизацией затрат в плане автоматического выбора наименее затратного варианта соединения в зависимости от набранного номера? Тоже и для входящих. Будем реалистами, есть условия, когда инета не будет. Есть такие, что уж лучше позвонить по обычному телефону, чем пользоваться золотым инетом. Для этого софту надо знать тарифы моего обычного сотового оператора, тарифы VoIP, к чему он там подключен и еще кучу всякой полезной информации. И уметь ею пользоваться.

8) А что с безглючностью и скоростью подъема VoIP приложения на входящий звонок?

9) А еще при подключении к чужой вайфай сети надо вводить 256-битный код из кракозябр или, того хуже, идти на их сайт и вводить пароль... до истечения сэссии в 24 часа. И последнее при формально работающем вайфае. Вот тут сипу надо не сплоховать и понять что данных-то нет. И переключиться на обычный телефон, да еще желательно проинформировать меня во время входящего звонка о такой беде. И не на экране, на который я не смотрю, а голосом.

Арк, извини, если на часть вопросов ты уже ответил, но человеку не в теме ответы эти понять тяжело.
(Reply) (Thread)
[User Picture]From: iskatel
2009-02-02 08:29 pm (UTC)
>>Как с этим у казачьей вольницы VoIP? Готовы они дать мне контракт такой, чтобы я был уверен - будет работать.

Сильно зависит от оператора. Есть крупные, там вероятность, что они будут жить через неск. лет, повыше.

>>Или, скажем, пусть этот оператор сдохнет, но я смогу перетащить свой идентификатор и, что важнее, обычный телефонный номер к другому оператору. Можно?

нет.

>>А как у нас с непрерывностью разговора, если я еду на машине со скоростью 100км/ч? Телефон с этим справляется

телефон справляется, еси покрытие на дороге идеально, а не БС-ки на предельном расстоянии.
В таком случае и VOIP при 3g сети будет жить.

>> А что с безглючностью и скоростью подъема VoIP приложения на входящий звонок?

зависит от приложения и аппарата.
(Reply) (Parent) (Thread) (Expand)
(Deleted comment)
(Deleted comment)
From: rampitec
2009-02-02 08:40 pm (UTC)
И снова встает вопрос о стоимости GPRS в роуминге... Т.е. там же, где и о стоимости просто звонков.
(Reply) (Parent) (Thread)
(Deleted comment)
(Deleted comment)
(Deleted comment)
(Deleted comment)
From: rampitec
2009-02-02 08:33 pm (UTC)
Кстати, торгуют они все же натуральными числами, а двумя вещами:

1) Решением. Оно работает как-то само и практически без проблем. Оно общее, к нему все привыкли, никому не надо объяснять, как камлать на вызов абонента.

2) Разветвленной сетью оборудования, буде то соты или обычные АТС и провода. Ты же тот же 3G будешь с тех же сот брать. При этом у тебя один баланс, ты никому не платишь отдельно за сервис, отдельно за разговор.

Т.е. деньги берут за удобство и надежность. Адекватность суммы - другой вопрос, но торгуется не просто натуральное число.
(Reply) (Thread)
[User Picture]From: sharaev
2009-02-02 08:36 pm (UTC)
Все бы ничего, но необходимость постоянного интернет-соединения все ж отпугивает. Получаем тот же стационарный телефон, но с более низкими тарифами.
(Reply) (Thread)
[User Picture]From: arkanoid
2009-02-02 08:43 pm (UTC)
А чем отпугивает? Это наше общее будущее ;-)
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: evolver
2009-02-02 08:50 pm (UTC)
Скайп - это не всегда "по граммофону". У меня уже года полтора работает Linksys CIT400. Обычный телефон с обычной эргономикой и возможностью звонить как с через Skype, так и по обычной линии. Физически это отдельная коробка, подключенная к моему раутеру изнутри, так что беспокойства за его деятельность на компе я не испытываю.

Да, напрягает закрытость протокола и исходников. Использование моей bandwidth не напрягает. В пределе, его можно и зашейпить на раутере.
(Reply) (Thread)
[User Picture]From: arkanoid
2009-02-02 09:01 pm (UTC)
Его везде с собой не возмешь. И записная книжка там своя. И цены у скайпа совершенно унылые.
(Reply) (Parent) (Thread) (Expand)
(Deleted comment)
[User Picture]From: arkanoid
2009-02-02 09:20 pm (UTC)
Ну skype он один, а sip ни к кому не привязан принципиально, можно и тарифы выбирать и оператора..
(Reply) (Parent) (Thread)
[User Picture]From: evolver
2009-02-02 10:15 pm (UTC)
Только сейчас увидел последний абзац. Если узнаешь, как не платить за SMS - поделить не забудь :) Тридцать центов за 160 байт данных - этого даже при Сталине не было!
(Reply) (Thread)
[User Picture]From: arkanoid
2009-02-05 04:41 pm (UTC)
Интересно, что в US адски дорогие SMSки, но любой онлайн-сервис шлет их нахаляву. А в Европе SMS дешевле, зато за эту мелочь уж они удавятся.
(Reply) (Parent) (Thread)
Page 1 of 4
<<[1] [2] [3] [4] >>