====== Организация IP телефонии на UNIX Asterisk ======
===== Модуль 1. Начальная настройка стенда =====
==== IP ====
[[настройка_стендов_слушателей#Настройка виртуальных систем Unix]]
==== DNS ====
[[Финальная настройка DNS сервера]]
==== DHCP ====
[[Сервис DHCP]]
==== WinXP ====
LAN0 - DHCP
===== Модуль 2. Теоретические основы телефонии =====
==== История и физические основы аналоговой телефонии ====
* История развития ([[http://ru.wikipedia.org/wiki/Телефон]])
* Физические основы аналоговой передачи голоса ([[http://ru.wikipedia.org/wiki/Психоакустика]])
* Сигнализация в аналоговой телефонии ([[http://ru.wikipedia.org/wiki/Контроль_посылки_вызова]])
==== Технологии цифровой телефонии ====
* Физические основы цифровой передачи голоса (Теорема Котельникова, Найквиста, Шеннона, [[http://ru.wikipedia.org/wiki/PCM]], [[http://ru.wikipedia.org/wiki/DS0]])
* Цифровые ATC и "последняя миля" ([[http://ru.wikipedia.org/wiki/Последняя_миля]], [[http://ru.wikipedia.org/wiki/Автоматическая_телефонная_станция]])
* Цифровые пользовательские каналы ISDN ([[http://ru.wikipedia.org/wiki/ISDN]])
* Универсальная сеть передачи данных ATM (http://ru.wikipedia.org/wiki/ATM]])
==== Технологии VoIP телефонии ====
* Физические основы передачи голосового трафика в IP сетях ([[http://ru.wikipedia.org/wiki/VoIP]])
* Кодеки G.711, G.726, G.729, GSM-FR ([[http://ru.wikipedia.org/wiki/G.711]])
* Протоколы сигнализации VoIP SIP, H.323, IAX( [[http://ru.wikipedia.org/wiki/SIP]])
* VoIP операторы связи (Skype, Sipnet)
==== Законопроекты ====
[[http://www.komitet5.km.duma.gov.ru/site.xp/051055055.html]]
===== Модуль 3. Настройка внутренней sip телефонии =====
* Установка Asterisk, Настройка SIP каналов ([[Сервис Asterisk]])
* Подключение к SIP каналам soft телефонов([[X-Lite]], [[ZoIPer]])
* [[сервис_asterisk#Настройка простого диалплана]]
* Использование SRV записей для поиска Proxy SIP ([[Сервис DNS]])
===== Модуль 4. Подключение к Asterisk SIP VoIP оборудования =====
==== Подготовка SIP каналов ====
server# cat sip.conf
...
[103]
type=friend
secret=tpassword103
; callerid=Sidorov Sidor Sidorovitch <103>
host=dynamic
[104]
type=friend
secret=tpassword104
; callerid=Koshkin Vasiliy Myrkovitch <104>
host=dynamic
==== Подготовка оборудования ====
* Linksys SPA-3102 [[Linksys SPA-3102#Восстановление фабричных настроек]]
* SIP Phone Panasonic KX-UT1XX [[SIP Phone Panasonic KX-UT1XX#Восстановление фабричных настроек]]
* Cisco 7912 [[Cisco 7912#Восстановление фабричных настроек]]
==== Использование Web интерфейса для настройки оборудования ====
* SIP Phone Panasonic KX-UT1XX [[SIP Phone Panasonic KX-UT1XX#Включение WEB интерфейса]]
* Linksys SPA-3102 [[Linksys SPA-3102#Включение WEB интерфейса на WAN интерфейсе]]
==== Использование Provisioning для настройки оборудования ====
* [[Сервис DHCP]]
* [[Сервис ТFTP]]
* Cisco 7912 [[Cisco 7912#Использование Provisioning для подключения к SIP каналу]]
* [[Сервис HTTP#Установка и запуск сервера Apache]]
* SIP Phone Panasonic KX-UT1XX [[SIP Phone Panasonic KX-UT1XX#Использование Provisioning для подключения к SIP каналу]]
* Linksys SPA-3102 [[Linksys SPA-3102#Использование Provisioning]]
===== Модуль 5. Организация телефонии между офисами предприятия =====
* Настройка звонков в между офисом X и Y ([[сервис_asterisk#Подключение Asterisk к Asterisk по протоколу IAX]])
===== Модуль 6. Подключение Asterisk к телефонной сети =====
==== Использование VoIP провайдеров для исходящих звонков в телефонную сеть ====
* [[Материалы по VoIP#Настройка Asterisk для связи с VoIP провайдерами]]
=== Настройки системы слушателя ===
server# cat sip.conf
...
[voip1_00000X]
type=peer
secret=spasswordX
defaultuser=00000X
host=isp.un
fromdomain=isp.un
fromuser=00000X
server# cat extensions.conf
...
exten => _8XXXXXXXXXX,1,Dial(SIP/voip1_00000X/${EXTEN})
=== Настройки системы преподавателя ===
root@asterisk.isp.un:~# cat sip.conf
...
[000001]
type=user
secret=spassword1
host=dynamic
context=voip
...
[000006]
type=user
secret=spassword6
host=dynamic
context=voip
root@asterisk.isp.un:~# cat /etc/asterisk/extensions.conf
...
[voip]
exten => _8XXXXXXXXXX,1,SIP/sipnet/${EXTEN})
==== Использование VoIP провайдеров для получения входящих звонков из телефонной сети ====
=== Настройки системы слушателя ===
server# cat sip.conf
[general]
...
register => 00000X:spasswordX@isp.un/voip1_00000X
...
[voip1_00000X]
type=friend
insecure=invite
...
server# cat extensions.conf
...
exten => voip1_00000X,1,Dial(SIP/101&SIP/102&SIP/103&SIP/104)
=== Настройки системы преподавателя ===
server# cat sip.conf
...
[000001]
type=friend
...
[000006]
type=friend
...
server# cat extensions.conf
...
[office]
...
exten => _80X,1,Dial(SIP/00000${EXTEN:2})
exten => sipnet,1,Dial(SIP/000001&SIP/000002&SIP/000003&SIP/000004&SIP/000005&SIP/000006)
...
==== Использование аналоговых телефонных линий для связи с телефонной сетью ====
[[http://ru.wikipedia.org/wiki/Эрланг]]
=== Настройка SIP канала ===
server# cat sip.conf
...
[co1] ; lynksys 3102 fxo
type=friend
secret=cpassword1
host=dynamic
=== Настройка диалплана для звонков в и/или из PSTN ===
server# cat extensions.conf
...
exten => _8XXXXXXXXXX,1,Dial(SIP/voip1_00000X/${EXTEN})
exten => _8XXXXXXXXXX,n,Dial(SIP/co1/${EXTEN:10})
...
exten => co1,1,Dial(SIP/101&SIP/102&SIP/103&SIP/104)
=== Настройка PSTN Line, VoIP шлюза и параметров линии ===
[[Linksys SPA-3102#Настройка PSTN Line]]
=== Настройки системы преподавателя ===
asterisk.isp.un# cat extensions.conf
[office]
..
exten => _70X,1,Dial(SIP/co1/${EXTEN:2})
...
[voip]
;exten => _8XXXXXXXXXX,1,Dial(SIP/co1/${EXTEN:10})
;exten => _8XXXXXXXXXX,1,SIP/sipnet/${EXTEN})
===== Модуль 7. Безопасность Asterisk =====
==== Подключение к Asterisk Inernet пользователей ====
* Для подключения используется канал 102
* Для экономии трафика используем кодек с меньшей полосой (не забыть указать в клиенте)
server# cat sip.conf
...
[102]
...
disallow=all
allow=gsm
...
==== Управление контекстами ====
server# cat sip.conf
[general]
...
context=from-office
...
[102]
...
context=from-internet
...
[co1]
...
context=incoming
...
[voip1_00000X]
...
context=incoming
...
server# cat iax.conf
...
[corpY]
...
type=user
...
context=from-corp
...
server# cat extensions.conf
...
[from-office]
include => to-office
include => to-corp
include => to-pstn
[from-internet]
include => to-office
include => to-corp
[from-corp]
include => to-office
[to-office]
exten => 301 ...
exten => _1XX,1,Dial(SIP/${EXTEN})
[to-corp]
exten => _0Y1XX,1,Set(CALLERID(num)=0X${CALLERID(num)})
exten => _0Y1XX,n,Dial(IAX2/corpY/${EXTEN:2})
[to-pstn]
exten => _8XXXXXXXXXX,1,Dial(SIP/voip1/${EXTEN})
exten => _8XXXXXXXXXX,n,Dial(SIP/co1/${EXTEN:10})
[incoming]
exten => co1,1,Dial(SIP/101&SIP/102&SIP/103&SIP/104)
exten => voip1_00000X,1,Dial(SIP/101&SIP/102&SIP/103&SIP/104)
===== Модуль 8. Прохождение голосового трафика через препятствия (Firewall/NAT) =====
==== Сценарий: SIP клиент за NAT, SIP сервер в публичной сети ====
=== Подготовка стенда стенда ====
* Отключаем маршруты в сети слушателей
* Настраиваем NAT ([[Сервис NAT#Трансляция на основе адреса отправителя]])
=== Настройка SIP Proxy (Asterisk преподавателя) ===
server# cat sip.conf
...
[000001]
...
nat=yes
qualify=yes
canreinvite=no
...
[000006]
...
nat=yes
qualify=yes
canreinvite=no
...
=== Настройка SIP Client (Asterisk системы студента) ===
server# cat sip.conf
[general]
...
localnet=192.168.X.0/255.255.255.0
externip=172.16.1.X
defaultexpiry=60
...
[voip1_000001]
...
canreinvite=no
...
==== Сценарий: Asterisk сервер за NAT ====
* Настраиваем DNS View ([[Финальная настройка DNS сервера]])
* [[Сервис NAT#Трансляция портов сервисов]]
=== Подключение SIP клиентов ===
server# cat sip.conf
...
[102]
...
nat=yes
canreinvite=no
qualify=yes
...
=== Подключение Asterisk к Asterisk ===
* Достаточно перезапустить сервисы Asterisk для вступления в силу новых параметров DNS
===== Модуль 9. Настройка сервисов корпоративной телефонии =====
[[Сервис Asterisk#Детализация разговоров]]
[[Сервис Asterisk#Настройка дополнительных видов обслуживания]]
===== Модуль 10. Организация Call центра =====
[[Сервис Asterisk#Организация Call центра]]
====== Подготовка класса ======
===== Список оборудования =====
- Отвертка крестовая - 1шт
- Лестница стремянка - 1шт
- Windows XP с драйверами аудио, видео, rtl8139, плюс все остальное - 13шт
- Удлинители электрические - 4шт
- Телефонные аппараты аналоговые - 6шт
- Телефон Cisco 7912 - 1шт
- Телефон Panasonic KX-UT1XX - 6шт
- Голосовые шлюзы Linksys 3102 - 7шт
- Гарнитуры проводные - 6шт
- Коммутатор Cisco Catalyst 2950 - 1шт
- Офисная АТС - 1шт
- Сетевые карты - 6шт
- Планшет - 1шт
- Микрофон - 1шт
- Колонки - 1шт
===== Процедура подготовки =====
==== 3 часа, за 2-3 дня до начала занятий ====
- Настроить Cisco Catalyst 2950 (telnet, portfast)
- Заменить коммутатор класса на Cisco Catalyst 2950
- Установить коммутатор HP ProCurve, соединить транком с cisco
- Переписать розетки
- Отключить лишние кабели от рабочих станций и коммутатора
- Протестировать сеть
- Переключить кабели рабочих станций на резервные порты
- Протестировать сеть
- Голосовые шлюзы Linksys 3102 - сбросить, включить web на wan, настроить bridge
==== Письмо инженерам ====
Здравствуйте.
Для проведения занятий по курсу "Астериск" в понедельник 5-го марта РАНО утром в аудитории №9 понадобится:
Рабочие станции (те что у стен обязательно c PCI разъемом) разлитые из образа, который я сделал 18.06.12 в количестве равном кол-ву слушателей, плюс преподская плюс две запасные. Рабочие станции должны стоять по парно, 4 в ряд.
Еще понадобится:
* Отвертка крестовая - 1шт
* Лестница стремянка - 1шт
* Патч корды: 6 для дополнительного подключения рабочих станций, 6 коротких, для подключения кросс панели
* Удлинители электрические - 3шт
* Гарнитуры проводные - 6шт
* Микрофон - 1шт
* Колонки - 1шт
==== 3 часа утром, в 1-й день перед началом занятий ====
- Установить вторые сетевые карты
- Установить офисную АТС
- Установить Голосовые шлюзы Linksys 3102 на столах с Windows системами
- Установить аналоговые телефоны и проверить работу офисной АТС
- Подключить проводные гарнитуры к Windows системам и проверить их исправность
==== 2 часа утром, во 2-й день перед началом занятий ====
- Установить сип телефоны
- Сбросит настройки сип телефонов
- Проверить работу с сипнет провайдером
==== Каждое утро/вечер ====
!----------------------------------------------
interface FastEthernet0/8
switchport access vlan 101
!
interface FastEthernet0/3
switchport access vlan 101
!
interface FastEthernet0/6
switchport access vlan 102
!
interface FastEthernet0/7
switchport access vlan 102
!
interface FastEthernet0/10
switchport access vlan 103
!
interface FastEthernet0/11
switchport access vlan 103
!
interface FastEthernet0/14
switchport access vlan 104
!
interface FastEthernet0/15
switchport access vlan 104
!
interface FastEthernet0/18
switchport access vlan 105
!
interface FastEthernet0/19
switchport access vlan 105
!
interface FastEthernet0/20
switchport trunk encapsulation dot1q
switchport mode trunk
!
interface FastEthernet0/22
switchport access vlan 106
!
interface FastEthernet0/23
switchport access vlan 106
!----------------------------------------------
interface FastEthernet0/8
switchport access vlan 1
!
interface FastEthernet0/3
switchport access vlan 1
!
interface FastEthernet0/6
switchport access vlan 1
!
interface FastEthernet0/7
switchport access vlan 1
!
interface FastEthernet0/10
switchport access vlan 1
!
interface FastEthernet0/11
switchport access vlan 1
!
interface FastEthernet0/14
switchport access vlan 1
!
interface FastEthernet0/15
switchport access vlan 1
!
interface FastEthernet0/18
switchport access vlan 1
!
interface FastEthernet0/19
switchport access vlan 1
!
interface FastEthernet0/22
switchport access vlan 1
!
interface FastEthernet0/23
switchport access vlan 1
!----------------------------------------------