This is all you should need to setup DUNDi between two boxes.. you can add more boxes to your network in a similar way. :P On both boxes in your extensions.conf: ; Private DUNDi network [dundi-priv-canonical] ; Direct numbers [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 iax.conf on both boxes: [priv] type=user dbsecret=dundi/secret context=dundi-priv-local dundi.conf on both boxes under [mappings]: priv => dundi-priv-canonical,0,IAX2,priv:${SECRET}@${IPADDR}/${NUMBER},nopartial priv => dundi-priv-customers,100,IAX2,priv:${SECRET}@${IPADDR}/${NUMBER},nopartial priv => dundi-priv-via-pstn,400,IAX2,priv:${SECRET}@${IPADDR}/${NUMBER},nopartial now on each box cd /var/lib/asterisk/keys astgenkey -n [BOXNAMEHERE] Press enter do not put a password on the keys unless you want to init keys every time you start asterisk. Now put exchange public keys between the boxes. Box A dundi.conf: [DE:AD:BE:EF:DE:AD] <-- EID/MAC from BOX B model = symmetric host = boxa.domain.com inkey = BOXB <- BOX B's public key outkey = BOXA <- BOX A's private key include = priv permit = priv qualify = yes order = primary Box B dundi.conf: [BE:EF:DE:AD:BE:EF] <-- EID/MAC from BOX A model = symmetric host = boxb.domain.com inkey = BOXA <- BOX A's public key outkey = BOXB <- BOX B's private key include = priv permit = priv qualify = yes order = primary Now you can do this: exten => _91NXXNXXXXXX,1,Macro(dundi-priv,${EXTEN:1}) exten => _91NXXNXXXXXX,2,Dial(Zap/g1/${EXTEN:1}) And find numbers in your enterprise DUNDi network. These same things apply to the e164 DUNDi network too. bkw