On Tue, Jan 8, 2013 at 1:56 PM, Lawrence Conroy <lconroy@insensate.co.uk>wrote:
Hi there, at the risk of butting in on someone else's party ... Nope; your interpretations is NOT best practice.
This party is open to all. I appreciate these answers, and as usual I have noticed that the fastest way to learn is to do it wrong, and then have somebody correct me! Thanks!
With SIP (see RFC 3263), you do a lookup on the SRV record (at _sip._udp.<sipdomain>) to find the machine that handles SIP registrations/incalls for the domain. That also gives you the port on which that machine is listening.
For example, I did a lookup: $ dig SRV _sip._udp.sip.flowroute.com. This returns: _sip._udp.sip.flowroute.com. 43200 IN SRV 20 10 5060 sip-ca1.flowroute.com. _sip._udp.sip.flowroute.com. 43200 IN SRV 10 10 5060 sip-nv1.flowroute.com.
(Yup, you can also have a NAPTR record in the domain to tell you where the SRV record is, but many folks don't bother -- for Best Practice, you should, but ...)
$ dig NAPTR sip.flowroute.com sip.flowroute.com. 42818 IN NAPTR 100 10 "s" "SIP+D2U" "" _sip._udp.sip.flowroute.com. sip.flowroute.com. 42818 IN NAPTR 102 20 "s" "SIP+D2U" "" _sip._tcp.sip.flowroute.com. I found that _sip._tcp.sip.flowroute.com does not have a SRV record. I don't know what that means. The RFC says that you should use "SIP+D2T" for TCP. Now, as this relates to the Polycom phone example, there are these fields: reg.1.address="1000@fs.domain.local" reg.1.auth.userId="1000" reg.1.server.1.address="10.10.10.11" reg.1.server.1.port="5060" Since this is a VoIP phone that loads its configuration from the server, not VoIP software that is configured by the user, it really only needs the IP address, so the server address field is kind of moot. But the example domain here is "fs.domain.local". Why not just "domain.local"? Why didn't Flowroute use "flowroute.com" instead of " sip.flowroute.com"? And my other question was how is the address "1000@fs.domain.local" used? Does FreeSwitch use that or does it just use the auth.userId? -- Steve