Помогите пожалуйста разобраться, никак не выходит каменный цветок.
Собрал стенд по такой схеме
(Шлюз H.323) <--- 192.168.1.0/24 ---> (Yate2) <---> (internet) - SIP+H.323.
Постановка задачи такая - Шлюз находится во внутренней сети и имеет непосредственную связь только с сервером Yate2. На сервере 2 интерфейса - во внутреннюю сеть и в интернет с реальным адресом. Задача - сделать на Yate полное проксирование, включая медиа RTP трафик по схеме H.323 -> SIP и H.323 -> H.323, а также в обратную сторону (стрелкой указано направление от оригинатора к терминатору).
Чего удалось добиться:
1) H.323 -> SIP работает, подробно не разбирался.
2) H.323 -> H.323 - односторонняя слышимость. Звук от терминатора на оригинатора проходит, обратно - нет. По дампу видно, что хотя RTP трафик от оригинатора на Yate идет, но Yate его не проксирует, хотя второй канал по направлению от терминатора к оригинатору проксируется нормально.
3) H.323 <- H.323 (входящий на шлюз) - не происходит проксирования ни одного канала, трафик от оригинатора и терминатора к yate идет.
4) H.323 <- SIP - не проверялось
Пока рассматривается только правильность конфигов, подскажите пожалуйста есть ли где-то ошибка и нужно ли что-то поправить. Я уже методом тыка перебрал по моему все варианты.
Оборудование:
шлюз - Addpac AP-200B (FXS)
Yate 2.0.0.p1 из портов на FreeBSD 7.2, openh323 1.19.0.1
На другой стороне коммерческие операторы IP телефонии.
Дебаг с yate есть, но один звонок - это порядка 300К, чтобы понять его смысл нужно хорошо понимать особенности H.323. При таком объеме даже просто вдумчивое чтение становится трудной задачей. Насколько я помню и понял, во втором случае между шлюзом и yate соединение происходит с faststart, между yate и провайдером - без него, причину я понять не могу. Хотя возможно я понял логи как-то не правильно. При этом сравнительно достоверно известно, что провайдер требует Faststart и туннелинг, без промежуточного звена в виде yate на внешнем адресе все работает нормально во все стороны.
Конфиги на базе дефолтных (комментарии сократил). Приведу некий средний вариант, т.к. перебрал уже все что можно.
accfile.conf:
[op1]
enabled=yes
protocol=h323
username=user|password
server=111.222.111.333
gkttl=60
port=1730
[op2]
protocol=sip
callername=User Name
username=555555
password=pppppp
registrar=222.333.111.222
h323chan.conf:
[general]
debug=4
forward_rtp=no
[ep]
faststart=yes
h245tunneling=yes
silencedetect=adaptive
gkclient=disable
[gk]
server=enable
interface1=192.168.1.2
port=1719
registeredonly=true
[incoming]
called=2001
regfile.conf:
[77777777777]
password=1234
callername=User Name
regexroute.conf:
[default]
;rtp_forward=yes
;${rtp_forward}possible=;rtp_forward=yes
^00\(.*\)$=sip/sip:0\1;line=op2;caller=username
^01\(.*\)$=h323/\1;line=op1
Остальные конфиги не изменялись.
На Addpac все очень страндартно. Faststart и туннелинг включены.
Помогите разобраться.