(changelog debian)
[asterisk-config-auf.git] / etc-asterisk / dundi.conf
CommitLineData
b2e905a6
TN
1;
2; DUNDi configuration file
3;
4; For more information about DUNDi, see http://www.dundi.com
5;
6;
7[general]
8;
9; The "general" section contains general parameters relating
10; to the operation of the dundi client and server.
11;
12; The first part should be your complete contact information
13; should someone else in your peer group need to contact you.
14;
15;department=Your Department
16;organization=AUF
17;locality=Your City
18;stateprov=ST
19;country=US
20;email=voip@auf.org
21;phone=+12565551212
22;
23;
24; Specify bind address and port number. Default is
25; 4520
26;
27;bindaddr=0.0.0.0
28;port=4520
29;
30; Our entity identifier (Should generally be the MAC address of the
31; machine it's running on. Defaults to the first eth address, but you
32; can override it here, as long as you set it to the MAC of *something*
33; you own!)
34;
35;entityid=00:07:E9:3B:76:60
36;
37; Peers shall cache our query responses for the specified time,
38; given in seconds. Default is 3600.
39;
40;cachetime=3600
41;
42; This defines the max depth in which to search the DUNDi system.
43; Note that the maximum time that we will wait for a response is
44; (2000 + 200 * ttl) ms.
45;
46ttl=32
47;
48; If we don't get ACK to our DPDISCOVER within 2000ms, and autokill is set
49; to yes, then we cancel the whole thing (that's enough time for one
50; retransmission only). This is used to keep things from stalling for a long
51; time for a host that is not available, but would be ill advised for bad
52; connections. In addition to 'yes' or 'no' you can also specify a number
53; of milliseconds. See 'qualify' for individual peers to turn on for just
54; a specific peer.
55;
56autokill=yes
57;
58; pbx_dundi creates a rotating key called "secret", under the family
59; 'secretpath'. The default family is dundi (resulting in
60; the key being held at dundi/secret).
61;
62;secretpath=dundi
63;
64; The 'storehistory' option (also changeable at runtime with
65; 'dundi store history' and 'dundi no store history') will
66; cause the DUNDi engine to keep track of the last several
67; queries and the amount of time each query took to execute
68; for the purpose of tracking slow nodes. This option is
69; off by default due to performance impacts.
70;
71;storehistory=yes
72
73[mappings]
74;
75; The "mappings" section maps DUNDi contexts
76; to contexts on the local asterisk system. Remember
77; that numbers that are made available under the e164
78; DUNDi context are regulated by the DUNDi General Peering
79; Agreement (GPA) if you are a member of the DUNDi E.164
80; Peering System.
81;
82; dundi_context => local_context,weight,tech,dest[,options]]
83;
84; 'dundi_context' is the name of the context being requested
85; within the DUNDi request
86;
87; 'local_context' is the name of the context on the local system
88; in which numbers can be looked up for which responses shall be given.
89;
90; 'weight' is the weight to use for the responses provided from this
91; mapping. The number must be >= 0 and < 60000. Since it is totally
92; valid to receive multiple responses to a query, responses received
93; with a lower weight are tried first. Note that the weight has a
94; special meaning in the e164 context - see the GPA for more details.
95;
96; 'tech' is the technology to use (IAX, SIP, H323)
97;
98; 'dest' is the destination to supply for reaching that number. The
99; following variables can be used in the destination string and will
100; be automatically substituted:
101; ${NUMBER}: The number being requested
102; ${IPADDR}: The IP address to connect to
103; ${SECRET}: The current rotating secret key to be used
104;
105; Further options may include:
106;
107; nounsolicited: No unsolicited calls of any type permitted via this
108; route
109; nocomunsolicit: No commercial unsolicited calls permitted via
110; this route
111; residential: This number is known to be a residence
112; commercial: This number is known to be a business
113; mobile: This number is known to be a mobile phone
114; nocomunsolicit: No commercial unsolicited calls permitted via
115; this route
116; nopartial: Do not search for partial matches
117;
118; There *must* exist an entry in mappings for DUNDi to respond
119; to any request, although it may be empty.
120;
121;e164 => dundi-e164-canonical,0,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial
122;e164 => dundi-e164-customers,100,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial
123;e164 => dundi-e164-via-pstn,400,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial
124
125;digexten => default,0,IAX2,guest@lappy/${NUMBER}
126;asdf =>
127
128
129;
130;
131; The remaining sections represent the peers
132; that we fundamentally trust. The section name
133; represents the name and optionally at a specific
134; DUNDi context if you want the trust to be established
135; for only a specific DUNDi context.
136;
137; inkey - What key they will be authenticating to us with
138;
139; outkey - What key we use to authenticate to them
140;
141; host - What their host is
142;
143; order - What search order to use. May be 'primary', 'secondary',
144; 'tertiary' or 'quartiary'. In large systems, it is beneficial
145; to only query one up-stream host in order to maximize caching
146; value. Adding one with primary and one with secondary gives you
147; redundancy without sacrificing performance.
148;
149; include - Includes this peer when searching a particular context
150; for lookup (set "all" to perform all lookups with that
151; host. This is also the context in which peers are permitted
152; to precache.
153;
154; noinclude - Disincludes this peer when searching a particular context
155; for lookup (set "all" to perform no lookups with that
156; host.
157;
158; permit - Permits this peer to search a given DUNDi context on
159; the local system. Set "all" to permit this host to
160; lookup all contexts. This is also a context for which
161; we will create/forward PRECACHE commands.
162;
163; deny - Denies this peer to search a given DUNDi context on
164; the local system. Set "all" to deny this host to
165; lookup all contexts.
166;
167; model - inbound, outbound, or symmetric for whether we receive
168; requests only, transmit requests only, or do both.
169;
170; precache - Utilize/Permit precaching with this peer (to pre
171; cache means to provide an answer when no request
172; was made and is used so that machines with few
173; routes can push those routes up a to a higher level).
174; outgoing means we send precache routes to this peer,
175; incoming means we permit this peer to send us
176; precache routes. symmetric means we do both.
177;
178; Note: You cannot mix symmetric/outbound model with symmetric/inbound
179; precache, nor can you mix symmetric/inbound model with symmetric/outbound
180; precache.
181;
182;
183; The '*' peer is special and matches an unspecified entity
184;
185
186;
187; Sample Primary e164 DUNDi peer
188;
189;[00:50:8B:F3:75:BB]
190;model = symmetric
191;host = 64.215.96.114
192;inkey = digium
193;outkey = misery
194;include = e164
195;permit = e164
196;qualify = yes
197
198;
199; Sample Secondary e164 DUNDi peer
200;
201;[00:A0:C9:96:92:84]
202;model = symmetric
203;host = misery.digium.com
204;inkey = misery
205;outkey = ourkey
206;include = e164
207;permit = e164
208;qualify = yes
209;order = secondary
210
211;
212; Sample "push mode" downstream host
213;
214;[00:0C:76:96:75:28]
215;model = inbound
216;host = dynamic
217;precache = inbound
218;inkey = littleguy
219;outkey = ourkey
220;include = e164 ; In this case used only for precaching
221;permit = e164
222;qualify = yes
223
224;
225; Sample "push mode" upstream host
226;
227;[00:07:E9:3B:76:60]
228;model = outbound
229;precache = outbound
230;host = 216.207.245.34
231;register = yes
232;inkey = dhcp34
233;permit = all ; In this case used only for precaching
234;include = all
235;qualify = yes
236;outkey=foo
237
238;[*]
239;
240
241#include "auf/dundi.local"
242