Hi,

I'm still looking into why there are so many own name lookups occurring in 
Asterisk 13.


After sanity checking the physical server configuration by comparing this to an 
Asterisk 1.8 build, I can confirm that only the Asterisk 13 server is 
performing thousands of lookup numbers per minute.


Looking at the res_pjsup.c file it looks like each time a dialogue is created 
it looks up the local IP addresses (line 2391) in this piece of code:


/* Get the local bound address for the transport that will be used when 
communicating with the provided URI */
if 
(pjsip_tpmgr_find_local_addr(pjsip_endpt_get_tpmgr(ast_sip_get_pjsip_endpoint()),
 pool, type, selector,
     &local_addr, &local_port) != PJ_SUCCESS) {

/* If no local address can be retrieved using the transport manager use the 
host one */
pj_strdup(pool, &local_addr, pj_gethostname());
local_port = pjsip_transport_get_default_port_for_type(PJSIP_TRANSPORT_UDP);
}


If the transport is set to bound=0.0.0.0 there is no IP address set and 
therefore a DNS lookup is carriedout to discover the addresses.


Is there a better way to manage this situation, if the 'res_pjsip_multihomed' 
code does a lookup on startup, can this not store the address and re-use them 
here?


Kind regards,


Ross
-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Reply via email to