I tried to double verify the setup. And I noticed that the CSCF was trying to lookup aplabs2.com, but failed.
11-11-2014 07:51:55.986 UTC Debug bgcfservice.cpp:149: Getting route for URI domain aplab2.com via BGCF lookup 11-11-2014 07:51:55.986 UTC Debug bgcfsproutlet.cpp:161: No route configured for aplab2.com What should I needed to configure? Can correct my understanding on the flow? When an INVITE send to P-CSCF (deployment A), it will go to S-CSCF (deployment A), and if the called address is not in the same domain, S-CSCF (deployment A) will forward the INVITE to I-BCF (deployment B) through P-CSCF (deployment A)? 11-11-2014 07:51:55.986 UTC Debug ifchandler.cpp:569: iFC does not match 11-11-2014 07:51:55.986 UTC Info scscfsproutlet.cpp:861: Completed applying originating services 11-11-2014 07:51:55.986 UTC Info scscfsproutlet.cpp:1049: Routing to BGCF sip:bgcf.sprout.aplabs.com:5054;transport=TCP 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1136: Sproutlet send_request 0x7f96d419d300 11-11-2014 07:51:55.986 UTC Verbose sproutletproxy.cpp:1161: scscf-0x7f96d4000ce0 sending Request msg INVITE/cseq=1 (tdta0x7f96d419ccf0) on fork 0 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1477: Processing actions from sproutlet - 0 responses, 1 requests 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1512: Processing request 0x7f96d419cd98, fork = 0 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1630: scscf-0x7f96d4000ce0 transmitting request on fork 0 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1644: scscf-0x7f96d4000ce0 store reference to non-ACK request Request msg INVITE/cseq=1 (tdta0x7f96d419ccf0) on fork 0 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1469: Removing message 0x7f96d419d300 => txdata 0x7f96d419cd98 mapping 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:110: Find target Sproutlet for request 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:144: Found next routable URI: sip:bgcf.sprout.aplabs.com:5054;transport=TCP;lr 11-11-2014 07:51:55.986 UTC Verbose sproutletproxy.cpp:976: Created Sproutlet bgcf-0x7f96d40b1030 for Request msg INVITE/cseq=1 (tdta0x7f96d419ccf0) 11-11-2014 07:51:55.986 UTC Info pjutils.cpp:1573: Cloning header! 140285780291696 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1462: Adding message 0x7f96d41a08a0 => txdata 0x7f96d41a0338 mapping 11-11-2014 07:51:55.986 UTC Verbose sproutletproxy.cpp:1365: scscf-0x7f96d4000ce0 received provisional response Response msg 100/INVITE/cseq=1 (tdta0x7f96d41a0290) on fork 0, state = Proceeding 11-11-2014 07:51:55.986 UTC Info scscfsproutlet.cpp:448: S-CSCF received response 11-11-2014 07:51:55.986 UTC Debug acr.cpp:1194: Found a P-Charging-Function-Address header 11-11-2014 07:51:55.986 UTC Debug acr.cpp:1213: 2 ccfs and 0 ecfs 11-11-2014 07:51:55.986 UTC Verbose sproutletproxy.cpp:1188: scscf-0x7f96d4000ce0 sending Response msg 100/INVITE/cseq=1 (tdta0x7f96d41a0290) 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1477: Processing actions from sproutlet - 1 responses, 0 requests 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1552: Aggregating response with status code 100 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1569: Discard 100/INVITE response (tdta0x7f96d41a0290) 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1469: Removing message 0x7f96d41a08a0 => txdata 0x7f96d41a0338 mapping 11-11-2014 07:51:55.986 UTC Debug pjsip: tdta0x7f96d41a Destroying txdata Response msg 100/INVITE/cseq=1 (tdta0x7f96d41a0290) 11-11-2014 07:51:55.986 UTC Debug pjutils.cpp:693: Cloned tdta0x7f96d419ccf0 to tdta0x7f96d41a0290 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1037: Remove top Route header Route: <sip:bgcf.sprout.aplabs.com:5054;transport=TCP;lr> 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1462: Adding message 0x7f96d41a08a0 => txdata 0x7f96d41a0338 mapping 11-11-2014 07:51:55.986 UTC Verbose sproutletproxy.cpp:1336: bgcf-0x7f96d40b1030 pass initial request Request msg INVITE/cseq=1 (tdta0x7f96d41a0290) to Sproutlet 11-11-2014 07:51:55.986 UTC Debug acr.cpp:1495: Create RalfACR for node type BGCF with role Terminating 11-11-2014 07:51:55.986 UTC Debug acr.cpp:48: Created ACR (0x7f96d40b0920) 11-11-2014 07:51:55.986 UTC Debug acr.cpp:195: Created BGCF Ralf ACR 11-11-2014 07:51:55.986 UTC Debug acr.cpp:274: Set record type for I-CSCF, BGCF, IBCF, AS to EVENT_RECORD 11-11-2014 07:51:55.986 UTC Debug acr.cpp:1194: Found a P-Charging-Function-Address header 11-11-2014 07:51:55.986 UTC Debug acr.cpp:1213: 2 ccfs and 0 ecfs 11-11-2014 07:51:55.986 UTC Debug bgcfservice.cpp:149: Getting route for URI domain aplab2.com via BGCF lookup 11-11-2014 07:51:55.986 UTC Debug bgcfsproutlet.cpp:161: No route configured for aplab2.com 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1136: Sproutlet send_request 0x7f96d41a08a0 11-11-2014 07:51:55.986 UTC Verbose sproutletproxy.cpp:1161: bgcf-0x7f96d40b1030 sending Request msg INVITE/cseq=1 (tdta0x7f96d41a0290) on fork 0 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1477: Processing actions from sproutlet - 0 responses, 1 requests 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1512: Processing request 0x7f96d41a0338, fork = 0 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1630: bgcf-0x7f96d40b1030 transmitting request on fork 0 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1644: bgcf-0x7f96d40b1030 store reference to non-ACK request Request msg INVITE/cseq=1 (tdta0x7f96d41a0290) on fork 0 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:1469: Removing message 0x7f96d41a08a0 => txdata 0x7f96d41a0338 mapping 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:110: Find target Sproutlet for request 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:144: Found next routable URI: sip:[email protected] 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:260: Found user - 852999 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:260: Found user - 852999 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:260: Found user - 852999 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:260: Found user - 852999 11-11-2014 07:51:55.986 UTC Debug sproutletproxy.cpp:763: No local sproutlet matches request 11-11-2014 07:51:55.986 UTC Debug pjsip: tsx0x7f96d41a3 Transaction created for Request msg INVITE/cseq=1 (tdta0x7f96d41a0290) 11-11-2014 07:51:55.986 UTC Debug basicproxy.cpp:1586: Added trail identifier 192 to UAC transaction 11-11-2014 07:51:55.986 UTC Debug pjutils.cpp:505: Next hop node is encoded in Request-URI 11-11-2014 07:51:55.986 UTC Debug sipresolver.cpp:85: SIPResolver::resolve for name aplab2.com, port 0, transport -1, family 2 11-11-2014 07:51:55.987 UTC Debug baseresolver.cpp:511: Attempt to parse aplab2.com as IP address 11-11-2014 07:51:55.987 UTC Debug sipresolver.cpp:144: Do NAPTR look-up for aplab2.com 11-11-2014 07:51:55.987 UTC Debug ttlcache.h:324: Time now is 1415692315, expiry time of entry at head of expiry list is 1415692145 11-11-2014 07:51:55.987 UTC Debug baseresolver.cpp:666: Evict NAPTR cache aplab2.com 11-11-2014 07:51:55.987 UTC Debug ttlcache.h:128: Entry not in cache, so create new entry 11-11-2014 07:51:55.987 UTC Debug baseresolver.cpp:551: NAPTR cache factory called for aplab2.com 11-11-2014 07:51:55.987 UTC Debug baseresolver.cpp:563: Sending DNS NAPTR query for aplab2.com 11-11-2014 07:51:55.987 UTC Debug dnscachedresolver.cpp:136: Create cache entry pending query 11-11-2014 07:51:55.987 UTC Debug dnscachedresolver.cpp:148: Create and execute DNS query transaction 11-11-2014 07:51:55.987 UTC Debug dnscachedresolver.cpp:154: Wait for query responses 11-11-2014 07:51:55.987 UTC Debug dnscachedresolver.cpp:384: Received DNS response for aplab2.com type NAPTR 11-11-2014 07:51:55.987 UTC Debug dnscachedresolver.cpp:533: Adding aplab2.com to cache expiry list with expiry time of 1415692615 11-11-2014 07:51:55.987 UTC Debug dnscachedresolver.cpp:158: Received all query responses 11-11-2014 07:51:55.987 UTC Debug dnscachedresolver.cpp:179: Pulling 0 records from cache for aplab2.com NAPTR 11-11-2014 07:51:55.987 UTC Debug ttlcache.h:148: Adding entry to expiry list, TTL=300, expiry time = 1415692615 11-11-2014 07:51:55.987 UTC Debug sipresolver.cpp:193: NAPTR lookup failed, so do SRV lookups for UDP and TCP 11-11-2014 07:51:55.987 UTC Verbose dnscachedresolver.cpp:207: Check cache for _sip._udp.aplab2.com type 33 11-11-2014 07:51:55.987 UTC Debug dnscachedresolver.cpp:210: No entry found in cache 11-11-2014 07:51:55.987 UTC Debug dnscachedresolver.cpp:213: Create cache entry pending query 11-11-2014 07:51:55.987 UTC Debug dnscachedresolver.cpp:228: Create and execute DNS query transaction 11-11-2014 07:51:55.987 UTC Verbose dnscachedresolver.cpp:207: Check cache for _sip._tcp.aplab2.com type 33 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:210: No entry found in cache 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:213: Create cache entry pending query 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:228: Create and execute DNS query transaction 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:241: Wait for query responses 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:384: Received DNS response for _sip._udp.aplab2.com type SRV 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:533: Adding _sip._udp.aplab2.com to cache expiry list with expiry time of 1415692615 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:384: Received DNS response for _sip._tcp.aplab2.com type SRV 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:533: Adding _sip._tcp.aplab2.com to cache expiry list with expiry time of 1415692615 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:245: Received all query responses 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:275: Pulling 0 records from cache for _sip._udp.aplab2.com SRV 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:275: Pulling 0 records from cache for _sip._tcp.aplab2.com SRV 11-11-2014 07:51:55.988 UTC Debug sipresolver.cpp:209: UDP SRV record _sip._udp.aplab2.com returned 0 records 11-11-2014 07:51:55.988 UTC Debug sipresolver.cpp:212: TCP SRV record _sip._tcp.aplab2.com returned 0 records 11-11-2014 07:51:55.988 UTC Debug sipresolver.cpp:232: UDP and TCP SRV queries unsuccessful, default to UDP 11-11-2014 07:51:55.988 UTC Debug sipresolver.cpp:295: Perform A/AAAA record lookup only, name = aplab2.com 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:136: Create cache entry pending query 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:148: Create and execute DNS query transaction 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:154: Wait for query responses 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:384: Received DNS response for aplab2.com type A 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:533: Adding aplab2.com to cache expiry list with expiry time of 1415692615 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:158: Received all query responses 11-11-2014 07:51:55.988 UTC Debug dnscachedresolver.cpp:179: Pulling 0 records from cache for aplab2.com A 11-11-2014 07:51:55.988 UTC Debug baseresolver.cpp:359: Found 0 A/AAAA records, randomizing 11-11-2014 07:51:55.988 UTC Debug baseresolver.cpp:418: Adding 0 servers from blacklist 11-11-2014 07:51:55.988 UTC Info pjutils.cpp:940: Resolved destination URI sip:[email protected] to 0 servers 11-11-2014 07:51:55.988 UTC Debug basicproxy.cpp:1613: Sending request for sip:[email protected] 11-11-2014 07:51:55.988 UTC Debug basicproxy.cpp:1667: Failed to send request (70006 Not found (PJ_ENOTFOUND)) -----Original Message----- From: Alex Hockey [mailto:[email protected]] Sent: Tuesday, November 04, 2014 8:15 PM To: Paul Sun; Eleanor Merry Cc: [email protected] Subject: RE: Handling Multi Domain on Clearwater Hi Paul, Ellie is away at the moment, so I will answer in her place. Your bgcf.json and trusted_peers settings look correct (assuming that 192.168.1.212 is the IP address of the I-BCF in aplabs, and 192.168.1.222 is the address of the I-BCF if aplabs2) In the most recent logs you sent Ellie noticed that the DNS lookup of bono.aplabs.com was returning zero records. I suspect this is still the problem. Could you share the following diagnostics? - The output of running "dig bono.aplabs.com" from your sprout node. - Sprout logs for an attempted call from aplabs -> aplabs2. - A network capture for port 53 taken from the sprout node during the attempted call. Gather this by running "sudo tcpdump -s 0 -i any -w ~/dnstrace.pcap port 53" on your sprout node. It will produce a file called "dnstrace.pcap" in your home directory. Thanks, Alex. -----Original Message----- From: [email protected]<mailto:[email protected]> [mailto:[email protected]] On Behalf Of Paul Sun Sent: 03 November 2014 10:17 To: Eleanor Merry Cc: [email protected]<mailto:[email protected]> Subject: Re: [Clearwater] Handling Multi Domain on Clearwater Hi Ellie I would like to follow this post again. What I wanted to achieve to allow Clearwater deployment 'A' and you wanted it to accept traffic from Clearwater deployment 'B' then you would put the IP address of the IBCF in deployment B in the trusted_peers list on the IBCF in deployment A (and vice versa). So, I have two I-BCF, two P-CSCF and two S-CSCF. In CSCF, the bgcf.json configuration is show below. [sprout]ims@C-CSCF-01:/etc/clearwater$ cat bgcf.json { "routes" : [ { "name" : "Routing to IMS-02", "domain" : "aplabs2.com", "route" : ["sip:bono.aplabs.com:5058","sip:bono.aplabs2.com:5060"] } ] } [sprout]ims@S-CSCF-02:/etc/clearwater$ cat bgcf.json { "routes" : [ { "name" : "Routing to IMS-01", "domain" : "aplabs.com", "route" : ["sip:bono.aplabs2.com:5058","sip:bono.aplabs.com:5060"] } ] } In I-BCF, the user_settings is shown below. [bono]imsa@I-BCF-01:/etc/clearwater$ cat user_settings trusted_peers="192.168.1.222" [bono]imsa@I-BCF-02:/etc/clearwater$ cat user_settings trusted_peers="192.168.1.212" When I am tryting to make a call from aplabs.com to aplab2.com, I didn't see messages on both I-BCF, any idea? - PS From: Eleanor Merry [mailto:[email protected]] Sent: Tuesday, July 15, 2014 9:26 PM To: Paul Sun Cc: [email protected]<mailto:[email protected]> Subject: RE: Handling Multi Domain on Clearwater Hi Paul, What does the nslookup for bono.aplabs.com return when you run it on the Sprout node? Is the IP address IPv4 or IPv6? Can you also get network trace (as a .cap file) from the sprout node during the request on port 53? Thanks, Ellie From: Paul Sun [mailto:[email protected]] Sent: 15 July 2014 13:16 To: Eleanor Merry Cc: [email protected]<mailto:[email protected]<mailto:[email protected]%3cmailto:[email protected]>> Subject: RE: Handling Multi Domain on Clearwater Hi Ellie I do a nslookup bono.aplabs.com, and it shows the correct ip. Anything i.m missing? Paul -------- Original message -------- From: Eleanor Merry Date:2014/07/15 20:12 (GMT+08:00) To: Paul Sun Cc: [email protected]<mailto:[email protected]<mailto:[email protected]%3cmailto:[email protected]>> Subject: RE: Handling Multi Domain on Clearwater Hi Paul, The request is failing as Sprout doesn't know how to route to sip:bono.aplabs.com:5058. The relevant section of the logs are: 15-07-2014 09:21:03.646 Debug dnscachedresolver.cpp:158: Received all query responses 15-07-2014 09:21:03.646 Debug dnscachedresolver.cpp:179: Pulling 0 records from cache for bono.aplabs.com A 15-07-2014 09:21:03.646 Debug baseresolver.cpp:359: Found 0 A/AAAA records, randomizing 15-07-2014 09:21:03.646 Debug baseresolver.cpp:418: Adding 0 servers from blacklist 15-07-2014 09:21:03.646 Info pjutils.cpp:734: Resolved destination URI sip:bono.aplabs.com:5058 to 0 servers 15-07-2014 09:21:03.646 Debug stateful_proxy.cpp:4199: Failed to send request (70006 Not found (PJ_ENOTFOUND)) Sprout was unable to resolve bono.aplabs.com so it couldn't send the request. Can you ensure that Sprout is able to resolve bono.aplabs.com and retry? Ellie -----Original Message----- From: Paul Sun [mailto:[email protected]] Sent: 15 July 2014 10:34 To: Paul Sun; Eleanor Merry Cc: [email protected]<mailto:[email protected]<mailto:[email protected]%3cmailto:[email protected]>> Subject: RE: Handling Multi Domain on Clearwater Hi Ellie I have problem to make S-CSCF in domain 1 to forward request to domain 2. In my bgcf.json in domain 1. I configured like below { "routes" : [ { "name" : "Routing to IMS02", "domain" : "aplabs2.com", "route" : ["sip:bono.aplabs.com:5058","sip:bono.aplabs2.com:5060"] } ] } It seems that there is problem on this messages 15-07-2014 09:21:03.646 Debug stateful_proxy.cpp:4199: Failed to send request (70006 Not found (PJ_ENOTFOUND)) 15-07-2014 09:21:03.641 Debug aschain.cpp:206: No ASs left in chain 15-07-2014 09:21:03.641 Info stateful_proxy.cpp:2833: Originating services disposition 2 15-07-2014 09:21:03.641 Info stateful_proxy.cpp:1771: Route request to domain aplabs2.com 15-07-2014 09:21:03.642 Debug bgcfservice.cpp:132: Getting route for URI domain aplabs2.com via BGCF lookup 15-07-2014 09:21:03.642 Info bgcfservice.cpp:138: Found route to domain aplabs2.com 15-07-2014 09:21:03.642 Debug stateful_proxy.cpp:1797: Adding route: sip:bono.aplabs.com:5058 15-07-2014 09:21:03.642 Debug stateful_proxy.cpp:1797: Adding route: sip:bono.aplabs2.com:5060 15-07-2014 09:21:03.642 Debug acr.cpp:1480: Create RalfACR for node type BGCF with role Terminating 15-07-2014 09:21:03.642 Debug acr.cpp:48: Created ACR (0x7f272025eed0) 15-07-2014 09:21:03.642 Debug acr.cpp:195: Created BGCF Ralf ACR 15-07-2014 09:21:03.642 Debug acr.cpp:274: Set record type for I-CSCF, BGCF, IBCF, AS to EVENT_RECORD 15-07-2014 09:21:03.642 Debug stateful_proxy.cpp:3677: Allocating transaction and data for target 0 15-07-2014 09:21:03.643 Debug pjsip: tsx0x7f2720262 Transaction created for Request msg INVITE/cseq=1 (tdta0x7f272025f1f0) 15-07-2014 09:21:03.643 Debug stateful_proxy.cpp:3697: Adding trail identifier 561 to UAC transaction 15-07-2014 09:21:03.643 Debug stateful_proxy.cpp:3716: Updating request URI and route for target 0 15-07-2014 09:21:03.643 Debug stateful_proxy.cpp:4112: Adding a Route header to sip:bono.aplabs.com:5058;transport= 15-07-2014 09:21:03.643 Debug stateful_proxy.cpp:4112: Adding a Route header to sip:bono.aplabs2.com:5060;transport= 15-07-2014 09:21:03.643 Debug stateful_proxy.cpp:4150: Resolve next hop destination 15-07-2014 09:21:03.643 Debug pjutils.cpp:463: Next hop node is encoded in top route header 15-07-2014 09:21:03.643 Debug sipresolver.cpp:85: SIPResolver::resolve for name bono.aplabs.com, port 5058, transport -1, family 2 15-07-2014 09:21:03.643 Debug baseresolver.cpp:480: Attempt to parse bono.aplabs.com as IP address 15-07-2014 09:21:03.644 Debug sipresolver.cpp:127: Port is specified 15-07-2014 09:21:03.644 Debug sipresolver.cpp:295: Perform A/AAAA record lookup only, name = bono.aplabs.com 15-07-2014 09:21:03.644 Debug dnscachedresolver.cpp:551: Removing record for sprout.aplabs.com (type 1, expiry time 0) from the expiry list 15-07-2014 09:21:03.644 Debug dnscachedresolver.cpp:564: Expiring record for sprout.aplabs.com (type 1) from the DNS cache 15-07-2014 09:21:03.644 Debug dnscachedresolver.cpp:136: Create cache entry pending query 15-07-2014 09:21:03.645 Debug dnscachedresolver.cpp:148: Create and execute DNS query transaction 15-07-2014 09:21:03.646 Debug dnscachedresolver.cpp:154: Wait for query responses 15-07-2014 09:21:03.646 Debug dnscachedresolver.cpp:384: Received DNS response for bono.aplabs.com type A 15-07-2014 09:21:03.646 Debug dnscachedresolver.cpp:534: Adding bono.aplabs.com to cache expiry list with expiry time of 0 15-07-2014 09:21:03.646 Debug dnscachedresolver.cpp:158: Received all query responses 15-07-2014 09:21:03.646 Debug dnscachedresolver.cpp:179: Pulling 0 records from cache for bono.aplabs.com A 15-07-2014 09:21:03.646 Debug baseresolver.cpp:359: Found 0 A/AAAA records, randomizing 15-07-2014 09:21:03.646 Debug baseresolver.cpp:418: Adding 0 servers from blacklist 15-07-2014 09:21:03.646 Info pjutils.cpp:734: Resolved destination URI sip:bono.aplabs.com:5058 to 0 servers 15-07-2014 09:21:03.646 Debug stateful_proxy.cpp:4199: Failed to send request (70006 Not found (PJ_ENOTFOUND)) 15-07-2014 09:21:03.646 Debug stateful_proxy.cpp:3337: tsx0x7f2720262208 - Not forked request 15-07-2014 09:21:03.646 Debug acr.cpp:583: Failed to start session, change record type to EVENT_RECORD 15-07-2014 09:21:03.646 Debug pjsip: tsx0x7f272015f Sending Response msg 408/INVITE/cseq=1 (tdta0x7f272024cea0) in state Proceeding 15-07-2014 09:21:03.646 Debug pjsip: tdta0x7f272024 Destroying txdata Response msg 100/INVITE/cseq=1 (tdta0x7f272024ee60) 15-07-2014 09:21:03.646 Verbose stack.cpp:242: TX 639 bytes Response msg 408/INVITE/cseq=1 (tdta0x7f272024cea0) to TCP 192.168.1.212:38633: --start msg-- -----Original Message----- From: [email protected]<mailto:[email protected]<mailto:[email protected]%3cmailto:[email protected]>> [mailto:[email protected]] On Behalf Of Paul Sun Sent: Monday, July 14, 2014 10:58 AM To: Eleanor Merry Cc: [email protected]<mailto:[email protected]<mailto:[email protected]%3cmailto:[email protected]>> Subject: Re: [Clearwater] Handling Multi Domain on Clearwater Hi Ellie >From your forst statement, do you mean that each deployment should have its >own I-BCF? Thanks - PS -----Original Message----- From: Eleanor Merry [mailto:[email protected]] Sent: Friday, July 04, 2014 1:08 AM To: Paul Sun Cc: [email protected]<mailto:[email protected]<mailto:[email protected]%3cmailto:[email protected]>> Subject: RE: Handling Multi Domain on Clearwater Hi Paul, You should put in the trusted_peers the addresses of nodes that Bono will accept traffic from. For example, if you have Clearwater deployment 'A' and you wanted it to accept traffic from Clearwater deployment 'B' then you would put the IP address of the IBCF in deployment B in the trusted_peers list on the IBCF in deployment A (and vice versa). For the ENUM configuration you don't need to change the dnsmasq.resolv.conf file; changing this to point to the ENUM server will mean that the node can only resolve entries that are in the ENUM server (this is probably what's causing the problem you mentioned in a different email that Sprout couldn't route to domain names). Instead, you can change /etc/dnsmasq.d/enum-forwarding to include server=/e164.arpa/<IP address> and restart dnsmasq - see https://github.com/Metaswitch/clearwater-docs/wiki/ENUM#dnsmasq. For the BGCF configuration you should put in the IBCF nodes that are used to route to a particular destination. For example, take the case where you have two Clearwater deployments (again called A and B), you want to route an INVITE from A to B and Clearwater B is setup so that the IBCF in Clearwater A is a trusted peer. The bgcf.json file on A will look like: { "routes" : [ { "name" : "Routing to deployment B", "domain" : "b.domain", "route" : ["sip:a.domain:5058", "sip:b.domain:5060"] }, ] } The routes are valid SIP URIs. The first entry is the bono node on deployment A (on the trusted port), and the second entry is the bono node on deployment B (on the untrusted port). This is necessary as the Sprout on Clearwater A can't simply route to Clearwater B, as Clearwater B will only accept traffic from a node on its trusted_peers list. Hope this helps, Ellie -----Original Message----- From: Paul Sun [mailto:[email protected]] Sent: 03 July 2014 10:57 To: Eleanor Merry Subject: RE: Handling Multi Domain on Clearwater Hi Ellie I need more information on how to setup the I-BCF, I installed the node using manual installation, and install the bono package as described in the link. >From the information, after I installed the BONO with the >/etc/clearwater/config, I should create the /etc/clearwater/user_settings, I >would like to know whether below format is correct? the SIP trunk IP addresss >is P-CSCF address or I/S-CSCF address? trusted_peers="<P-CSCF-01 IP address>,< P-CSCF-02 IP address>,< P-CSCF-03 IP address>" Followed with the above configuration, I should setup the ENUM server, and make sure dnsmar.resolve.conf is pointing to this ENUM server. On the ENUM server, I have a question, assumed I have below mapping *.8 IN NAPTR 1 1 "u" "E2U+sip" "!(^.*$)!sip:\\[email protected]!" . *.6 IN NAPTR 1 1 "u" "E2U+sip" "!(^.*$)!sip:\\1@<P-CSCF-02 IP address>!" . Can I configured like below? Any additional setup required? *.8 IN NAPTR 1 1 "u" "E2U+sip" "!(^.*$)!sip:\\[email protected]!" . *.6 IN NAPTR 1 1 "u" "E2U+sip" "!(^.*$)!sip:\\[email protected]>!" . Also, it seems that I also need to enable BGCF config in SPROUT, can you provide a sample to me as I am not sre what is ["<IBCF SIP URI>"]. If I am not wrong, it seems that I need to define like below. { "routes" : [ { "name" : "domain1", "domain" : "P-CSCF-01 IP address", "route" : ["<IBCF SIP URI>"] }, { "name" : "domain2", "domain" : "P-CSCF-02 IP address ", "route" : ["<IBCF SIP URI>", "<IBCF SIP URI>"] } ] } Please help -PS -----Original Message----- From: Eleanor Merry [mailto:[email protected]] Sent: Thursday, July 03, 2014 1:34 AM To: Paul Sun Subject: RE: Handling Multi Domain on Clearwater Hi Paul, Can you clarify what the scenario is here? If you want your Clearwater subscribers to receive INVITEs from external subscribers, then you need to allow requests from the external deployment. You can do this by adding the external IBCF as a trusted peer to Bono - see https://github.com/Metaswitch/clearwater-docs/wiki/IBCF for details of how to set this up. If you want your Clearwater subscribers to send INVITEs to external subscribers then you may also need to set up appropriate ENUM rules to map from a telephone number (either a TEL URI or embedded in a SIP URI) to the correct domain. You mayl also need to set up a BGCF to match on domain and determine the route to follow (i.e. which Route headers to apply). Details of how to set this up are at https://github.com/Metaswitch/clearwater-docs/wiki/IBCF. For ENUM, there is more detailed documentation (including how to set up your own ENUM server) at https://github.com/Metaswitch/clearwater-docs/wiki/ENUM. Hope this helps, Ellie -----Original Message----- From: [email protected]<mailto:[email protected]<mailto:[email protected]%3cmailto:[email protected]>> [mailto:[email protected]] On Behalf Of Paul Sun Sent: 02 July 2014 04:01 To: [email protected]<mailto:[email protected]<mailto:[email protected]%3cmailto:[email protected]>> Subject: [Clearwater] Handling Multi Domain on Clearwater Hi I would like to know whether I can configured Clearwater to handling multidomain connection? Assumed the SIP request is coming from different I-BCF, i.e. the domain is different. Please comment. Thanks - PS _______________________________________________ Clearwater mailing list [email protected]<mailto:[email protected]<mailto:[email protected]%3cmailto:[email protected]>> http://lists.projectclearwater.org/listinfo/clearwater _______________________________________________ Clearwater mailing list [email protected]<mailto:[email protected]<mailto:[email protected]%3cmailto:[email protected]>> http://lists.projectclearwater.org/listinfo/clearwater _______________________________________________ Clearwater mailing list [email protected]<mailto:[email protected]> http://lists.projectclearwater.org/listinfo/clearwater _______________________________________________ Clearwater mailing list [email protected] http://lists.projectclearwater.org/listinfo/clearwater
