Hi all, I'm new in asterisk and I got to set up a dundi config for my work. I have 2 PBX for the test, the two PBX are in the same local network PBX A : 192.168.199.23 PBX B : 192.168.199.21 my config files : (on PBX B , the config files on PBX A looks like it) /etc/asterisk/dundi.conf [general] bind=192.168.199.21 port=4520 cachetime=5 ttl=32 autokill=yes entityid=00:30:18:4C:33:53 [mappings] ;dundi-test => dundi-local,0,IAX2,dundi:${SECRET}@toronto.example.com/${NUMBER},nounsolicited,nocomunsolicit,nopartial priv => dundi-priv-canonical,0,SIP,dundi:${SECRET}@192.168.199.21/${NUMBER},nounsolicited,nocomunsolicit,nopartial ;priv => dundi-priv-canonical,0,SIP,192.168.199.21/${NUMBER},nopartial priv => dundi-priv-customers,100,SIP,dundi:${SECRET}@192.168.199.21/${NUMBER},nounsolicited,nocomunsolicit,nopartial ;priv => dundi-priv-customers,100,SIP,192.168.199.21/${NUMBER},nopartial priv => dundi-priv-customers,400,SIP,dundi:${SECRET}@192.168.199.21/${NUMBER},nounsolicited,nocomunsolicit,nopartial ;priv => dundi-priv-via-pstn,400,SIP,192.168.199.21/${NUMBER},nopartial [00:40:48:B2:78:6B] model = symmetric host = 192.168.199.23 inkey = 192.168.199.23 outkey = 192.168.199.21 include = priv permit = priv qualify = yes order = primary */etc/asterisk/sip_custom.conf language=fr nat=never ;Subscribecontext=ext-local [priv] type=friend dbsecret=dundi/secret context=dundi-priv-local host=192.168.199.23 qualify=yes* /etc/asterisk/extensions_custom.conf [ext-local-custom] ;for Direct IVR dialing if IVR is installed on the PBX B exten => _36X,1,Macro(dundi-priv,${EXTEN}) [dundi-priv-canonical] ; local number of the PBX A for dundi advertise exten => _37X,1,Goto(ext-local,${EXTEN},1) [dundi-priv-customers] ; If you are an ITSP or Reseller, list your customers here. [dundi-priv-via-pstn] ; If you are freely delivering calls to the PSTN, list them here [dundi-priv-local] include => dundi-priv-canonical include => dundi-priv-customers include => dundi-priv-via-pstn [dundi-priv-switch] ; Just a wrapper for the switch switch => DUNDi/priv [dundi-priv-lookup] include => dundi-priv-local include => dundi-priv-switch [macro-dundi-priv] exten => s,1,Goto(${ARG1},1) include => dundi-priv-lookup [trydundi] exten => _.,1,Macro(dundi-priv,${EXTEN}) exten => _.,2,Congestion What works : if I use (on PBX B) dundi lookup 360 at priv asterisk respond : 1. 0 SIP/dundi:+WXATxXJXSPP8mRpAL3mRQ==@192.168.199.23/360 (EXISTS|NOUNSLCTD|NOCOMUNSLTD) from 00:40:48:b2:78:6b, expires in 5 s DUNDi lookup completed in 7 ms but if I try to call from 360 to 370 or from 370 to 360 the call fails So it seems that I have a SIP authentication failure. but I don't know how to find the real problem. Can you help me ? Here are some logs : On the CLI prompt : -- Executing [370 at from-internal:1] ResetCDR("SIP/360-08dfe0a0", "") in new stack -- Executing [370 at from-internal:2] NoCDR("SIP/360-08dfe0a0", "") in new stack -- Executing [370 at from-internal:3] Wait("SIP/360-08dfe0a0", "1") in new stack -- Executing [370 at from-internal:4] Playback("SIP/360-08dfe0a0", "silence/1&cannot-complete-as-dialed&check-number-dial-again|noanswer") in new stack -- <SIP/360-08dfe0a0> Playing 'silence/1' (language 'fr') -- <SIP/360-08dfe0a0> Playing 'cannot-complete-as-dialed' (language 'fr') -- <SIP/360-08dfe0a0> Playing 'check-number-dial-again' (language 'fr') -- Executing [370 at from-internal:5] Wait("SIP/360-08dfe0a0", "1") in new stack == Spawn extension (from-internal, 370, 5) exited non-zero on 'SIP/360-08dfe0a0' -- Executing [h at from-internal:1] Macro("SIP/360-08dfe0a0", "hangupcall") in new stack -- Executing [s at macro-hangupcall:1] ResetCDR("SIP/360-08dfe0a0", "w") in new stack -- Executing [s at macro-hangupcall:2] NoCDR("SIP/360-08dfe0a0", "") in new stack -- Executing [s at macro-hangupcall:3] GotoIf("SIP/360-08dfe0a0", "1?skiprg") in new stack -- Goto (macro-hangupcall,s,6) -- Executing [s at macro-hangupcall:6] GotoIf("SIP/360-08dfe0a0", "1?skipblkvm") in new stack -- Goto (macro-hangupcall,s,9) -- Executing [s at macro-hangupcall:9] GotoIf("SIP/360-08dfe0a0", "1?theend") in new stack -- Goto (macro-hangupcall,s,11) -- Executing [s at macro-hangupcall:11] Hangup("SIP/360-08dfe0a0", "") in new stack == Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/360-08dfe0a0' in macro 'hangupcall' == Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/360-08dfe0a0' Rx-Frame Retry[No] -- OSeqno: 000 ISeqno: 000 Type: NULL (Command) Flags: 00 STrans: 29219 DTrans: 00000 [192.168.199.21:4520] (Final) Tx-Frame Retry[No] -- OSeqno: 000 ISeqno: 001 Type: ACK (Response) Flags: 00 STrans: 08363 DTrans: 29219 [192.168.199.21:4520] (Final) Tx-Frame Retry[No] -- OSeqno: 000 ISeqno: 000 Type: NULL (Command) Flags: 00 STrans: 12520 DTrans: 00000 [192.168.199.21:4520] (Final) Rx-Frame Retry[No] -- OSeqno: 000 ISeqno: 001 Type: ACK (Response) Flags: 00 STrans: 09513 DTrans: 12520 [192.168.199.21:4520] (Final) In /var/log/asterisk/full : [Mar 9 09:42:06] VERBOSE[10098] logger.c: -- <SIP/360-08dfe0a0> Playing 'cannot-complete-as-dialed' (language 'fr') [Mar 9 09:42:10] VERBOSE[10098] logger.c: -- <SIP/360-08dfe0a0> Playing 'check-number-dial-again' (language 'fr') [Mar 9 09:42:12] VERBOSE[10098] logger.c: -- Executing [370 at from-internal:5] Wait("SIP/360-08dfe0a0", "1") in new stack [Mar 9 09:42:13] VERBOSE[10098] logger.c: == Spawn extension (from-internal, 370, 5) exited non-zero on 'SIP/360-08dfe0a0' [Mar 9 09:42:13] VERBOSE[10098] logger.c: -- Executing [h at from-internal:1] Macro("SIP/360-08dfe0a0", "hangupcall") in new stack [Mar 9 09:42:13] VERBOSE[10098] logger.c: -- Executing [s at macro-hangupcall:1] ResetCDR("SIP/360-08dfe0a0", "w") in new stack [Mar 9 09:42:13] DEBUG[10098] app_macro.c: Executed application: ResetCDR [Mar 9 09:42:13] VERBOSE[10098] logger.c: -- Executing [s at macro-hangupcall:2] NoCDR("SIP/360-08dfe0a0", "") in new stack [Mar 9 09:42:13] DEBUG[10098] app_macro.c: Executed application: NoCDR [Mar 9 09:42:13] VERBOSE[10098] logger.c: -- Executing [s at macro-hangupcall:3] GotoIf("SIP/360-08dfe0a0", "1?skiprg") in new stack [Mar 9 09:42:13] VERBOSE[10098] logger.c: -- Goto (macro-hangupcall,s,6) [Mar 9 09:42:13] DEBUG[10098] app_macro.c: Executed application: GotoIf [Mar 9 09:42:13] VERBOSE[10098] logger.c: -- Executing [s at macro-hangupcall:6] GotoIf("SIP/360-08dfe0a0", "1?skipblkvm") in new stack [Mar 9 09:42:13] VERBOSE[10098] logger.c: -- Goto (macro-hangupcall,s,9) [Mar 9 09:42:13] DEBUG[10098] app_macro.c: Executed application: GotoIf [Mar 9 09:42:13] VERBOSE[10098] logger.c: -- Executing [s at macro-hangupcall:9] GotoIf("SIP/360-08dfe0a0", "1?theend") in new stack [Mar 9 09:42:13] VERBOSE[10098] logger.c: -- Goto (macro-hangupcall,s,11) [Mar 9 09:42:13] DEBUG[10098] app_macro.c: Executed application: GotoIf [Mar 9 09:42:13] VERBOSE[10098] logger.c: -- Executing [s at macro-hangupcall:11] Hangup("SIP/360-08dfe0a0", "") in new stack [Mar 9 09:42:13] VERBOSE[10098] logger.c: == Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/360-08dfe0a0' in macro 'hangupcall' [Mar 9 09:42:13] VERBOSE[10098] logger.c: == Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/360-08dfe0a0' [Mar 9 09:42:22] NOTICE[7019] chan_sip.c: -- Registration for '0143436681 at 192.168.10.2' timed out, trying again (Attempt #931) [Mar 9 09:42:32] VERBOSE[7035] logger.c: Rx-Frame Retry[No] -- OSeqno: 000 ISeqno: 000 Type: NULL (Command) [Mar 9 09:42:32] VERBOSE[7035] logger.c: Flags: 00 STrans: 29219 DTrans: 00000 [192.168.199.21:4520] (Final) [Mar 9 09:42:32] VERBOSE[7035] logger.c: Tx-Frame Retry[No] -- OSeqno: 000 ISeqno: 001 Type: ACK (Response) -- Cordialement, / Greetings, Georghy FUSCO