[Serusers] Question on gateway routing through UA proxy
John Todd
jtodd at loligo.com
Mon Jan 20 19:08:01 CET 2003
At 2:34 PM +0100 1/20/03, Jiri Kuthan wrote:
>
>At 08:41 PM 1/19/2003, John Todd wrote:
>[...]
>>Problem: My "iconnecthere.com" account is a username/password
>>protected account which (of course) requires a UA at my side of the
>>connection. To forward calls from the various phones in the house,
>>I would need to have something re-write my username/password
>>requests on the fly when they are sent out to the iconnecthere.com
>>SIP proxies/gateways. My first assumption is that I'll need a
>>(sigh) B2BUA to act as a gateway, running (for convenience) on the
>>same UNIX platform as ser. After thinking about it for a while, I
>>am uncertain if that is required, but at this point I can't
>>determine what I need to do.
>
>If you wish to authenticate with iconnect, configure iconnect credentials
>in you end-device, that's it. There are devices too (like Cisco 7960 or
>snom) that can handle multiple SIP accounts too, if you need that. That's
>imho simpler than inserting a middle-man authenticating on your behalf.
Yes, I understand that mapping a single end device works; I had that
working in a few seconds, and I understand that process. However, my
goal is not to have a single device that is mapped to a single
service. I'd like to have ser make intelligent decisions on call
routing, using the iconnecthere.com account gateway as one of a
number of different destinations for calls to land from any of the
six devices in my house. (with "my house" being a demo for a small
office environment)
>
>>I would appreciate hints on:
>>
>> a) Wether I need a B2BUA at all, and if not, what config options
>>should I be looking at in ser?
>
>see above -- maybe I missed some aspect of your scenario, but I do not
>currently see why you should need B2BUA. ser is not a B2BUA and cannot
>be configured to act so. That would take writing new code.
I think there is a minor misunderstanding, which is probably due to
my poor explanation.
Understood that ser is not a B2BUA. My goal is to re-write the calls
to a B2BUA that is statically mapped to the iconnecthere.com service
as a "portal" to my account there. (that is, of course, if I even
need a B2BUA.)
Theoretical outbound call process:
Start
1) Handset picked up in my house on one of the ATA-186 units.
2) User dials 1-650-555-1212
3) Call is referred to ser process running on system in my house
4) Ser examines call like this:
a) Is the call bound for an extension elsewhere in the house?
If yes, re-route call to that extension. Break.
If no, proceed.
a) Is the call bound for a 1-503-xxx-xxxx number?
If yes, then send to local 2610 gateway into the 503 area code. Break.
If no, proceed.
b) Is the call bound for a 1-301-xxx-xxxx or 1-410-xxx-xxxx number?
If yes, then send to a Cisco 3640 with PRI interface located
in Maryland, local to those area codes. Break.
If no, proceed.
d) Send call to iconnecthere.com, using my "username" and
"password" credentials for the single account I have at their
service. Break.
End
To use IP terminology, the iconnecthere.com account would be my
"default route" when no other specific route is known.
My problem is part "d", where I am uncertain how to refer a call out
to a service that is expecting a UA, with a different username and
password than what I have on my local ATA-186. ser has the ability
to alter the username and password on a pass-through, but is that
what I'm looking for? I can't wrap my head around that concept when
working with a system that expects a UA. Do I send the call to a
B2BUA after step 5? Is there some way of re-writing the credentials
within ser?
Again, if I do need a B2BUA, what would anyone suggest for a package
that runs in a non-Java environment?
> > Additionally, inbound calling through a similar service would
>have to also come in via the same mechanism, with a REGISTER request
>being sent by the B2BUA and all subsequent calls being routed
>through the SER proxy.
>
>as said, phones can register with and receive calls from servers
>without b2bua functionality.
>
>>PS: I'd appreciate any open-source hints on how to get an ATA-186
>>(v2.15) running behind NAT with ser on the "outside" of the NAT,
>>without statically configuring the "NAT" address on the ATA-186
>>every time the outside address changes. Lots of keyword matches
>>found on Google, but very few clues to be scraped from the
>>resulting documents as to "how" do it from the server side.
>
>http://www.iptel.org/phpBB/viewtopic.php?topic=28&forum=1&0
>particularly, the second link mentions how one can set up
>advertising the public address in ATA's signaling. I hope
>we will add some more details in there.
Yes, I'd seen this in the Cisco documentation, but as I mention in
the question I'm looking for how to manage NAT addressed UA's where
the external IP address changes on a very regular basis. The link
above only seems to discuss how one can configure an ATA-186 to
"hold" an external address by sending periodic packets through the
translation; this doesn't touch on how one would get a system to work
correctly after initial activation without manual intervention.
The "via" header (and related rport extension) seems like the
solution to this problem, but does ser do the "right thing" with
those data? That is discussed a bit lower in the document under the
heading "Receiver-tagged VIA header ". I could find no reference to
it in the documentation for ser, and a brief test with NAT addressed
devices did not display successful results when the appropriate bit
flag was set in the ATA-186. By examining the source code, I do find
that some features of the "received=" header are implemented in ser,
but I am unsure of their exact use and I find no mention in the
source of "rport" which has been discussed in other threads as a key
to NAT RTP session mapping.
JT
More information about the sr-users
mailing list