Draft 20 version of DNS API » History » Version 11
Brian Gupta, 05/09/2011 04:31 AM
1 | 1 | Brian Gupta | h1. Draft 20 version of DNS API, with working notes |
---|---|---|---|
2 | |||
3 | 5 | Brian Gupta | h2. Current API |
4 | |||
5 | 4 | Ohad Levy | |_.DNS | |
6 | 1 | Brian Gupta | |/dns|POST|Create a new DNS record|@{"fqdn":string(name/ip), "value":string(ip/reverse), "type":string(A/PTR)}@| |
7 | |/dns/value|DELETE|remove value(ip or reverse) DNS record|| |
||
8 | |||
9 | 2 | Brian Gupta | h2. Record types |
10 | 1 | Brian Gupta | |
11 | 2 | Brian Gupta | h3. Should be implemented in next version of DNS API |
12 | 3 | Brian Gupta | |
13 | 1 | Brian Gupta | /dns/zone/A (supports multiple records) |
14 | /dns/zone/PTR (Does not support multiple records) |
||
15 | /dns/zone/CNAME (Bind 9 doesn't support roundrobin cnames, so we should at first limit CNAMEs to a single record) |
||
16 | 10 | Brian Gupta | /dns/zone/AAAA (ipv6 address, supports multiple records) |
17 | /dns/zone/TXT (is a single string field of "value" no "fqdn" required, supports multiple records) |
||
18 | /dns/zone/SPF (is a single string field of "value" no "fqdn" required, supports multiple records) |
||
19 | 1 | Brian Gupta | /dns/zone/MX (Needs an extra preference number field, supports multiple records) |
20 | |||
21 | 2 | Brian Gupta | h3. Deferred: |
22 | 3 | Brian Gupta | |
23 | 1 | Brian Gupta | /dns/zone/SOA (Can not be dynamically deleted, and needs extra code to handle) |
24 | /dns/zone/NS (Needs manual serial number increment |
||
25 | /dns/zone/SRV (Needs more research.. It might be easy enough, but isn't a priority yet) |
||
26 | |||
27 | 11 | Brian Gupta | h2. Methods |
28 | |||
29 | GET |
||
30 | POST |
||
31 | DELETE |
||
32 | |||
33 | 2 | Brian Gupta | h2. Ohad notes |
34 | 3 | Brian Gupta | |
35 | 1 | Brian Gupta | GET /dns -> list of dns zones managed by that proxy |
36 | GET /dns/zone -> list of all zone records |
||
37 | GET /dns/zone/record_type list of all dns records with a given type, for |
||
38 | example all CNAME would be /dns/1.2.3.4/CNAME |
||
39 | GET /dns/zone/record -> details of the specific record. |
||
40 | |||
41 | POST /dns/zone -> creates a new record |
||
42 | DELETE /dns/zone/record -> deletes a record |
||
43 | |||
44 | 8 | Brian Gupta | h2. Brian notes |
45 | 3 | Brian Gupta | |
46 | 1 | Brian Gupta | Dynamic DNS RFC http://tools.ietf.org/html/rfc2136 |
47 | Howto: http://caunter.ca/nsupdate.txt |
||
48 | |||
49 | SOA: https://lists.isc.org/pipermail/bind-users/2003-November/047015.html |
||
50 | MX: http://forums.devshed.com/dns-36/using-nsupdate-to-add-an-mx-record-326788.html |
||
51 | NS: http://forums11.itrc.hp.com/service/forums/questionanswer.do?admit=109447626+1304925290721+28353475&threadId=702920 |
||
52 | 6 | Brian Gupta | |
53 | 8 | Brian Gupta | h2. Other APIs to investigate |
54 | 6 | Brian Gupta | |
55 | http://dyn.com/developer |
||
56 | 1 | Brian Gupta | http://docs.amazonwebservices.com/Route53/latest/APIReference/ |
57 | http://ns.zerigo.com/ |
||
58 | 8 | Brian Gupta | |
59 | h2. DNS backends |
||
60 | |||
61 | NSUPDATE/BIND |
||
62 | Amazon/Route53 |
||
63 | Dynect/DynDNS |
||
64 | DNSMadeEasy |
||
65 | UltraDNS |
||
66 | 9 | Brian Gupta | ActiveDirectory/Microsoft DNS |