Hello,
i am using rtpproxy with openser to act as a RTP bridge to IP-SS7 gateway. IP-SS7 GW should not be exposed to external clients directly.
Architecture diagram is like this:
|UA1|--SIP/RTP---|
|------------------| |-----------|
| OpenSer+RTPProxy | --SIP/RTP-- | IP-SS7-GW |
|------------------| |-----------|
|UA2|--SIP/RTP---|
Problem is when i try to send fax RTP packets destined for UA2 from IP-SS7 GW are sent directly.
They should go through RTPProxy, otherwise media ports does not match.
onreply route looks like:
onreply_route[1] {
if (isflagset(6) && status =~ "(183)|2[0-9][0-9]") {
fix_nated_contact();
}
force_rtp_proxy();
}
each request is record_route()'ed before it is sent to be routed back through proxy.
I noticed that OpenSer removes top most via header in 200 OK messages:
200 OK message for re-Invite received by OpenSer:
SIP/2.0 200 OK\r\n
From: <sip:870000049@sp2.ntt.lt>;tag=4fbb0552\r\n
To: <sip:70000050@sp2.ntt.lt>;tag=0-13c4-444c9fc6-f4eac-fdd\r\n
Call-ID: cc36b0-0-13c4-444c9fc6-f4eac-2c87(a)sp2.ntt.lt\r\n
CSeq: 666497904 INVITE\r\n
Via: SIP/2.0/UDP 84.32.0.18;branch=z9hG4bKf67f.2aeace41.0\r\n
Via: SIP/2.0/UDP 84.32.0.7:5060;branch=z9hG4bK444cbbfca6214604dc9\r\n
Supported: 100rel\r\n
User-Agent: SIP-RG\r\n
Contact: <sip:70000050@84.32.134.143>\r\n
Content-Type: application/sdp\r\n
Content-Length: 317\r\n
\r\n
v=0\r\n
o=SIP-N-TA 0 0 IN IP4 84.32.134.143\r\n
s=5420868F 0000 5420868F 0000 01 0\r\n
c=IN IP4 84.32.134.143\r\n
t=0 0\r\n
m=image 4008 udptl t38\r\n
c=IN IP4 84.32.134.143\r\n
a=T38FaxVersion:0\r\n
a=T38MaxBitRate:14400\r\n
a=T38FaxFillBitRemoval:0\r\n
a=T38FaxTranscodingMMR:0\r\n
a=T38FaxTranscodingJBIG:0\r\n
a=T38FaxRateManagement:transferredTCF\r\n
200 OK message sent to IP-SS7 GW by OpenSer:
SIP/2.0 200 OK
From: <sip:870000049@sp2.ntt.lt>;tag=4fbb0552
To: <sip:70000050@sp2.ntt.lt>;tag=0-13c4-444c9fc6-f4eac-fdd
Call-ID: cc36b0-0-13c4-444c9fc6-f4eac-2c87(a)sp2.ntt.lt
CSeq: 666497904 INVITE
Via: SIP/2.0/UDP 84.32.0.7:5060;branch=z9hG4bK444cbbfca6214604dc9
Supported: 100rel
User-Agent: SIP-RG
Contact: <sip:70000050@84.32.134.143>
Content-Type: application/sdp
Content-Length: 333
v=0
o=SIP-N-TA 0 0 IN IP4 84.32.134.143
s=5420868F 0000 5420868F 0000 01 0
c=IN IP4 84.32.134.143
t=0 0
m=image 39246 udptl t38
c=IN IP4 84.32.0.18
a=T38FaxVersion:0
a=T38MaxBitRate:14400
a=T38FaxFillBitRemoval:0
a=T38FaxTranscodingMMR:0
a=T38FaxTranscodingJBIG:0
a=T38FaxRateManagement:transferredTCF
a=nortpproxy:yes
In this message there is no indication that is came from SIP proxy (no record-route, no via header), then IP-SS7 GW sends ACK message directly.
This, i suppose, is normal thing, is it? Problem is that IP-SS7 also sends RTP traffic to UA2 directly. This probably happens because of two 'c=' fields in SDP.
OpenSer changes only one in media part. Is there a way to change 'c=' field in SDP not only on media part?
Which should take precedence if both can't be changed?
regards,
Antanas Masevicius
I am now trying to "add users" but i don't understand why username requires
domain name and the implication down the road.
if i issue the command:
openserctl add 2002 spa3k user2(a)mysipserver.com
I get the response:
"domain unknown: use usernames with domain or set default domain in
SIP_DOMAIN"
why does it expect my username to be 2002(a)mysipserver.com?
does this therefore mean the UAs will have to have their username field set
to username@domain instead of just username. What's the relevance of
capturing the email address?
Hello all,
i'm facing some problems with loose_route, may it be with ACK or BYE
messages.
Here is the situation :
- 2 softphones : let's call them A and B (on different IP addresses :
/A_ip /and/ B_ip/).
A's username is "voip2".
A registers on this platform :
- a stateless SER on /stateless_ip/
- a statefull SER on /statefull_ip/
B registers on another platform that i do not know (see /Bplatform_ip/)
When B calls A, INVITE messages are smoothly forwarded and relayed.
Same case for trying, OK and 180 ringing.
However, when B sends ACK after (INVITE, trying, OK), here is what ser
stateless receives :
ACK sip:voip2@/stateless_ip/ SIP/2.0
Record-Route: <sip:voip2@/Bplatform_ip/;ftag=368e6f71;lr=on>
Via: SIP/2.0/UDP /Bplatform_ip/;branch=0
Via: SIP/2.0/UDP
/B_ip/:64064;received=/B_public_ip/;branch=z9hG4bK-d87543-226b496c2343f701-1--d87543-;rport=2301
Max-Forwards: 69
Route: <sip:/stateless_ip/;lr=on> (****)
Route: <sip:/statefull_ip/;ftag=368e6f71;lr=on> (****)
Route: <sip:/stateless_ip/;lr=on>
this message is loose_routed and then forwarded (loose_route();
forward(uri:host, uri:port);)
and then here is what ser stateless sends to ser statefull :
ACK sip:/stateless_ip/;lr=on SIP/2.0
Record-Route: <sip:voip2@/Bplatform_ip/;ftag=368e6f71;lr=on>
Via: SIP/2.0/UDP /stateless_ip/;branch=0
Via: SIP/2.0/UDP /Bplatform_ip/;branch=0
Via: SIP/2.0/UDP
/B_ip/:64064;received=/B_public_ip/;branch=z9hG4bK-d87543-226b496c2343f701-1--d87543-;rport=2301
Max-Forwards: 16
Route: <sip:/stateless_ip/;lr=on>
Here are my parameters for ser stateless concerning rr module :
modparam("rr", "enable_full_lr", 1)
modparam("rr", "enable_double_rr", 0)
modparam("rr","append_fromtag",0)
Then, there are two things that i don't understand and make confusion to
ser statefull:
- why did (****) Routes disappear ?
- why did ruri changed in ACK message sent to ser statefull?
any help would be appreciated, thanks in advance,
--
Jean-Michel Foucher
OpenWengo, the free and multiplatform VoIP client
http://dev.openwengo.com/
li gh wrote:
> Thank you!
> The local user is 1001@proxy1 <mailto:1001@proxy1>, calling
> sip:2001@proxy2,
> so the SIP signaling should be relayed to proxy2 by proxy1,
> but I cannot capture any SIP packet from proxy1 to proxy2.
Put log statements into openser.cfg and watch them in syslog. This will
give you details what is going wrong. make sure proxy1 is able to
resolve "proxy2" to the corresponding IP address (DNS).
> When I call another user also registered to proxy1
> (e.g. sip:1004@proxy1), there is no problem.
>
> How to "start it manually" ? Just type "openser stop" then "openser start"?
> Or by other ways? I have no idea.
just "openser" as root will start openser. Then you can use "ps
-Alf|grep openser" to find out the PID of the openser processes. To stop
openser manually, find the lowest PID and kill openser with "kill PID"
(replace PID with the value)
regards
klaus
>
> Thank you very much!
> Best regards.
>
> On 4/24/06, *Klaus Darilion* <klaus.mailinglists(a)pernau.at
> <mailto:klaus.mailinglists@pernau.at>> wrote:
>
> How do you call? sip:2001@proxy2 ? or sip:2001@proxy1?
>
> Use "ngrep port 5060" to debug SIP signaling
>
> You have to start it manually (no startup scripts).
>
> Better set log_stderror to "no" and watch the log messages in syslog.
>
> e.g. on debian syslog is senet to /var/log/messages. Some Linus
> distributions use other file names but it should be easily to figure
> that out:
>
> tail -f /var/log/messages
>
> regards
> klaus
>
>
Dear all:
debug parameter in the ser.cfg has nine levels, anybody knows what means for each one of them, thanks
allan
DISCLAIMER:
Sample Disclaimer added in a VBScript.
Error message during creating database. Anyone seen this before
[root@localhost ~]# /usr/local/sbin/openser_mysql.sh create
MySql password for root:
Domain (realm) for the default user 'admin': localhost.localdomain
creating database openser ...
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
Hi all,
I have been getting this error for some of the calls made from
mediaproxy,
error: use_media_proxy(): empty response from mediaproxy
Any idea what is it ? It appears when i tried to do a use_media_proxy()
What does it means ?
Regards,
Sam
Hi all
Im in trouble with this problem: I have a Openser the connect to a carrier. I need that this proxy answer the messages in order that it receive. In my situation, other device one hope behind it, sends an ACK and, miliseconds after, it sends an INVITE to change the session. The server where the Openser is installed receive the ACK first than INVITE, but it ALWAYS forward this INVITE first. This way, I cant connect my proxy to the carrier. I need to know how I can change this behavior: the SIP proxy needs to send the ACK first. First in, first out..... Anybody knows how to do it?
Thanks for any suggest
Bruno Machado
---------------------------------
Abra sua conta no Yahoo! Mail - 1GB de espaço, alertas de e-mail no celular e anti-spam realmente eficaz.
Has anyone been using CDRtool? It seems quite comprehensive, and it would be nice to get away from another custom written component. However, it seems that it only works through RADIUS on top of MySQL. Is this right? Is there any way to use it without RADIUS, and just with the accounting information stored in MySQL by the acc module in OpenSER?
---Mike
Hi all,
I am facing problem in serweb configuration. I installed the serweb but when i type http://localhost/index.php in the browser, it gives the messge "The requested URL /user was not found on this server."
the path of the serweb directory is like : /~serweb
also in : /var/www/html/serweb
please help me how can i find that page...my apache is runnig fi9 and if makes a file in the /var/www/html/page.php it works fi9....plz help me
---------------------------------
How low will we go? Check out Yahoo! Messengers low PC-to-Phone call rates.