Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install rimudns

How to install RimuDNS

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install rimudns
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
Windows (64-bit)
Mac OS X (10.5+)
Linux (32-bit)
0.0.4 Available View build log
0.0.3 Available View build log
Linux (64-bit)
0.0.4 Available View build log
0.0.3 Available View build log
 
Author
License
GPLv3+
Dependencies
Imports
Lastest release
version 0.0.4 on Dec 21st, 2012

RimuDNS

[RimuHosting](http://rimuhosting.com) Python DNS tools

Documentation for the API can be found [here](https://rimuhosting.com/dns/dyndns.jsp) and [here](https://zonomi.com/app/dns/dyndns.jsp) for RimuHosting and Zonomi respectively.

The RimuDNS class is a wrapper around the REST API calls.

Installation
easy_install rimudns

System Message: WARNING/2 (<string>, line 14)

Block quote ends without a blank line; unexpected unindent.

or

pip install rimudns
Usage

The API key can be generated and replaced in the RimuHosting control panel from https://rimuhosting.com/cp/apikeys.jsp

Get started: `python #!/usr/bin/env python from rimudns import RimuDNS api_key = 'GETYOURAPIKEYFROMTHECONTROLPANEL' dns = RimuDNS(api_key) dns.use_rimuhosting() `

List all domains: ```python for domain in dns.list_zones():

System Message: WARNING/2 (<string>, line 33); backlink

Inline literal start-string without end-string.

System Message: WARNING/2 (<string>, line 33); backlink

Inline interpreted text or phrase reference start-string without end-string.

System Message: ERROR/3 (<string>, line 36)

Unexpected indentation.
print domain['name']

System Message: WARNING/2 (<string>, line 37)

Block quote ends without a blank line; unexpected unindent.

```

System Message: WARNING/2 (<string>, line 37); backlink

Inline literal start-string without end-string.

System Message: WARNING/2 (<string>, line 37); backlink

Inline interpreted text or phrase reference start-string without end-string.

Create a new domain: `python dns.create_zone('example.com') `

Delete a domain: `python dns.delete_zone('example.com') ` Import a domain from a BIND zone file or string:: * IMPORT_AXFR = 1 * IMPORT_FILE = 2 * IMPORT_TEXT = 3 * IMPORT_DICT = 4 * IMPORT_GUESS = 5

_for more information about IMPORT_GUESS see [Guessing Feature] below._

`python from rimudns import ZoneHandle dns.import_zone('example.com', ZoneHandle.IMPORT_FILE, '/tmp/example.com.zone') `

Export a domain to file: `python dnsdns.to_file('/tmp/example.com.zone') ` Delete a domain: `python dns.delete_zone('example.com') ` List all records for a domain: ```python records = dns.list_records('example.com') for record_type in records:

System Message: WARNING/2 (<string>, line 62); backlink

Inline literal start-string without end-string.

System Message: WARNING/2 (<string>, line 62); backlink

Inline interpreted text or phrase reference start-string without end-string.

System Message: ERROR/3 (<string>, line 74)

Unexpected indentation.

print 'Type: ', record_type for record in records[record_type]

System Message: ERROR/3 (<string>, line 76)

Unexpected indentation.
print 'name: %s -> %s' % (record['name'], record['content')

System Message: WARNING/2 (<string>, line 77)

Block quote ends without a blank line; unexpected unindent.

` Add/Update a record:: ```python dns.set_record('example.com', '127.0.0.1', record_type='A', ttl=600) ` Delete a record:: `python dns.delete_record('example.com', '127.0.0.1', 'A') ` Change an IP across all zones:: `python old_ip = '127.0.0.1' new_ip = '127.0.0.2' dns.change_ip(old_ip, new_ip) ` Convert a zone to slave/back to regular:: `python dns.convert_to_regular('example.com') dns.convert_to_slave('example.com') `

Web Interface

You can always use the RimuHosting/Zonomi tools to edit your DNS zones Try: https://rimuhosting.com/dns/

Guessing Feature

Most of the time you don't have access to AXFR or the Zone File to import the DNS zone directly. The import_zone offers a _guessing_ feature that tries to build the zone information from DNS queries. You can also provide extra guesses. ```python extra_guesses = ['mail2', 'test', 'test1'] records = dns.import_zone('funinc.org', ZoneHandle.IMPORT_GUESS, param=extra_guesses, dryrun=True) for record_type in records:

System Message: WARNING/2 (<string>, line 106); backlink

Inline literal start-string without end-string.

System Message: WARNING/2 (<string>, line 106); backlink

Inline interpreted text or phrase reference start-string without end-string.

System Message: ERROR/3 (<string>, line 113)

Unexpected indentation.

print 'Type: ', record_type for record in records[record_type]

System Message: ERROR/3 (<string>, line 115)

Unexpected indentation.
print 'name: %s -> %s' % (record['name'], record['content')

System Message: WARNING/2 (<string>, line 116)

Block quote ends without a blank line; unexpected unindent.

```

System Message: WARNING/2 (<string>, line 116); backlink

Inline literal start-string without end-string.

System Message: WARNING/2 (<string>, line 116); backlink

Inline interpreted text or phrase reference start-string without end-string.

Subscribe to package updates

Last updated Dec 21st, 2012

Download Stats

Last month:1

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.