1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/asterisk/dundi.conf Mon Apr 27 12:19:05 2009 +0200 1.3 @@ -0,0 +1,239 @@ 1.4 +; 1.5 +; DUNDi configuration file 1.6 +; 1.7 +; For more information about DUNDi, see http://www.dundi.com 1.8 +; 1.9 +; 1.10 +;[general] 1.11 +; 1.12 +; The "general" section contains general parameters relating 1.13 +; to the operation of the dundi client and server. 1.14 +; 1.15 +; The first part should be your complete contact information 1.16 +; should someone else in your peer group need to contact you. 1.17 +; 1.18 +;department=Your Department 1.19 +;organization=Your Company, Inc. 1.20 +;locality=Your City 1.21 +;stateprov=ST 1.22 +;country=US 1.23 +;email=your@email.com 1.24 +;phone=+12565551212 1.25 +; 1.26 +; 1.27 +; Specify bind address and port number. Default is 1.28 +; 4520 1.29 +; 1.30 +;bindaddr=0.0.0.0 1.31 +;port=4520 1.32 +; 1.33 +; Our entity identifier (Should generally be the MAC address of the 1.34 +; machine it's running on. Defaults to the first eth address, but you 1.35 +; can override it here, as long as you set it to the MAC of *something* 1.36 +; you own!) 1.37 +; 1.38 +;entityid=00:07:E9:3B:76:60 1.39 +; 1.40 +; Peers shall cache our query responses for the specified time, 1.41 +; given in seconds. Default is 3600. 1.42 +; 1.43 +;cachetime=3600 1.44 +; 1.45 +; This defines the max depth in which to search the DUNDi system. 1.46 +; Note that the maximum time that we will wait for a response is 1.47 +; (2000 + 200 * ttl) ms. 1.48 +; 1.49 +;ttl=32 1.50 +; 1.51 +; If we don't get ACK to our DPDISCOVER within 2000ms, and autokill is set 1.52 +; to yes, then we cancel the whole thing (that's enough time for one 1.53 +; retransmission only). This is used to keep things from stalling for a long 1.54 +; time for a host that is not available, but would be ill advised for bad 1.55 +; connections. In addition to 'yes' or 'no' you can also specify a number 1.56 +; of milliseconds. See 'qualify' for individual peers to turn on for just 1.57 +; a specific peer. 1.58 +; 1.59 +;autokill=yes 1.60 +; 1.61 +; pbx_dundi creates a rotating key called "secret", under the family 1.62 +; 'secretpath'. The default family is dundi (resulting in 1.63 +; the key being held at dundi/secret). 1.64 +; 1.65 +;secretpath=dundi 1.66 +; 1.67 +; The 'storehistory' option (also changeable at runtime with 1.68 +; 'dundi store history' and 'dundi no store history') will 1.69 +; cause the DUNDi engine to keep track of the last several 1.70 +; queries and the amount of time each query took to execute 1.71 +; for the purpose of tracking slow nodes. This option is 1.72 +; off by default due to performance impacts. 1.73 +; 1.74 +;storehistory=yes 1.75 + 1.76 +;[mappings] 1.77 +; 1.78 +; The "mappings" section maps DUNDi contexts 1.79 +; to contexts on the local asterisk system. Remember 1.80 +; that numbers that are made available under the e164 1.81 +; DUNDi context are regulated by the DUNDi General Peering 1.82 +; Agreement (GPA) if you are a member of the DUNDi E.164 1.83 +; Peering System. 1.84 +; 1.85 +; dundi_context => local_context,weight,tech,dest[,options]] 1.86 +; 1.87 +; 'dundi_context' is the name of the context being requested 1.88 +; within the DUNDi request 1.89 +; 1.90 +; 'local_context' is the name of the context on the local system 1.91 +; in which numbers can be looked up for which responses shall be given. 1.92 +; 1.93 +; 'weight' is the weight to use for the responses provided from this 1.94 +; mapping. The number must be >= 0 and < 60000. Since it is totally 1.95 +; valid to receive multiple responses to a query, responses received 1.96 +; with a lower weight are tried first. Note that the weight has a 1.97 +; special meaning in the e164 context - see the GPA for more details. 1.98 +; 1.99 +; 'tech' is the technology to use (IAX, SIP, H323) 1.100 +; 1.101 +; 'dest' is the destination to supply for reaching that number. The 1.102 +; following variables can be used in the destination string and will 1.103 +; be automatically substituted: 1.104 +; ${NUMBER}: The number being requested 1.105 +; ${IPADDR}: The IP address to connect to 1.106 +; ${SECRET}: The current rotating secret key to be used 1.107 +; 1.108 +; Further options may include: 1.109 +; 1.110 +; nounsolicited: No unsolicited calls of any type permitted via this 1.111 +; route 1.112 +; nocomunsolicit: No commercial unsolicited calls permitted via 1.113 +; this route 1.114 +; residential: This number is known to be a residence 1.115 +; commercial: This number is known to be a business 1.116 +; mobile: This number is known to be a mobile phone 1.117 +; nocomunsolicit: No commercial unsolicited calls permitted via 1.118 +; this route 1.119 +; nopartial: Do not search for partial matches 1.120 +; 1.121 +; There *must* exist an entry in mappings for DUNDi to respond 1.122 +; to any request, although it may be empty. 1.123 +; 1.124 +;e164 => dundi-e164-canonical,0,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial 1.125 +;e164 => dundi-e164-customers,100,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial 1.126 +;e164 => dundi-e164-via-pstn,400,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial 1.127 + 1.128 +;digexten => default,0,IAX2,guest@lappy/${NUMBER} 1.129 +;asdf => 1.130 + 1.131 + 1.132 +; 1.133 +; 1.134 +; The remaining sections represent the peers 1.135 +; that we fundamentally trust. The section name 1.136 +; represents the name and optionally at a specific 1.137 +; DUNDi context if you want the trust to be established 1.138 +; for only a specific DUNDi context. 1.139 +; 1.140 +; inkey - What key they will be authenticating to us with 1.141 +; 1.142 +; outkey - What key we use to authenticate to them 1.143 +; 1.144 +; host - What their host is 1.145 +; 1.146 +; order - What search order to use. May be 'primary', 'secondary', 1.147 +; 'tertiary' or 'quartiary'. In large systems, it is beneficial 1.148 +; to only query one up-stream host in order to maximize caching 1.149 +; value. Adding one with primary and one with secondary gives you 1.150 +; redundancy without sacrificing performance. 1.151 +; 1.152 +; include - Includes this peer when searching a particular context 1.153 +; for lookup (set "all" to perform all lookups with that 1.154 +; host. This is also the context in which peers are permitted 1.155 +; to precache. 1.156 +; 1.157 +; noinclude - Disincludes this peer when searching a particular context 1.158 +; for lookup (set "all" to perform no lookups with that 1.159 +; host. 1.160 +; 1.161 +; permit - Permits this peer to search a given DUNDi context on 1.162 +; the local system. Set "all" to permit this host to 1.163 +; lookup all contexts. This is also a context for which 1.164 +; we will create/forward PRECACHE commands. 1.165 +; 1.166 +; deny - Denies this peer to search a given DUNDi context on 1.167 +; the local system. Set "all" to deny this host to 1.168 +; lookup all contexts. 1.169 +; 1.170 +; model - inbound, outbound, or symmetric for whether we receive 1.171 +; requests only, transmit requests only, or do both. 1.172 +; 1.173 +; precache - Utilize/Permit precaching with this peer (to pre 1.174 +; cache means to provide an answer when no request 1.175 +; was made and is used so that machines with few 1.176 +; routes can push those routes up a to a higher level). 1.177 +; outgoing means we send precache routes to this peer, 1.178 +; incoming means we permit this peer to send us 1.179 +; precache routes. symmetric means we do both. 1.180 +; 1.181 +; Note: You cannot mix symmetric/outbound model with symmetric/inbound 1.182 +; precache, nor can you mix symmetric/inbound model with symmetric/outbound 1.183 +; precache. 1.184 +; 1.185 +; 1.186 +; The '*' peer is special and matches an unspecified entity 1.187 +; 1.188 + 1.189 +; 1.190 +; Sample Primary e164 DUNDi peer 1.191 +; 1.192 +;[00:50:8B:F3:75:BB] 1.193 +;model = symmetric 1.194 +;host = 64.215.96.114 1.195 +;inkey = digium 1.196 +;outkey = misery 1.197 +;include = e164 1.198 +;permit = e164 1.199 +;qualify = yes 1.200 + 1.201 +; 1.202 +; Sample Secondary e164 DUNDi peer 1.203 +; 1.204 +;[00:A0:C9:96:92:84] 1.205 +;model = symmetric 1.206 +;host = misery.digium.com 1.207 +;inkey = misery 1.208 +;outkey = ourkey 1.209 +;include = e164 1.210 +;permit = e164 1.211 +;qualify = yes 1.212 +;order = secondary 1.213 + 1.214 +; 1.215 +; Sample "push mode" downstream host 1.216 +; 1.217 +;[00:0C:76:96:75:28] 1.218 +;model = inbound 1.219 +;host = dynamic 1.220 +;precache = inbound 1.221 +;inkey = littleguy 1.222 +;outkey = ourkey 1.223 +;include = e164 ; In this case used only for precaching 1.224 +;permit = e164 1.225 +;qualify = yes 1.226 + 1.227 +; 1.228 +; Sample "push mode" upstream host 1.229 +; 1.230 +;[00:07:E9:3B:76:60] 1.231 +;model = outbound 1.232 +;precache = outbound 1.233 +;host = 216.207.245.34 1.234 +;register = yes 1.235 +;inkey = dhcp34 1.236 +;permit = all ; In this case used only for precaching 1.237 +;include = all 1.238 +;qualify = yes 1.239 +;outkey=foo 1.240 + 1.241 +;[*] 1.242 +;