Easy Zone的分支 - DNS区域抽象模块
项目描述
dnszone
概述
本软件包是从Easyzone分支而来,由Chris Miles创建。我已经分支它以包括安装的bug修复,并更新软件包以兼容Python 3。
DNSZone是一个用于管理区域文件中常见记录类型(包括SOA记录)的软件包。此模块位于dnspython之上,并为常见区域文件操作用例提供高级抽象。
主要功能
- 在dnspython之上提供高级抽象。
- 将区域文件加载到对象中。
- 修改/添加/删除区域/记录对象。
- 将更改保存回区域文件。
- 自动更新序列号(如有必要)。
网站
要求
构建/测试/安装
构建:
$ python setup.py build
测试:
$ python setup.py test
安装:
$ python setup.py install
或使用setuptools:
$ easy_install dnszone
示例
dnszone:
>>> from dnszone import dnszone
>>> z = dnszone.zone_from_file('example.com', '/var/namedb/example.com')
>>> z.domain
'example.com.'
>>> z.root.soa.serial
2007012902L
>>> z.root.records('NS').items
['ns1.example.com.', 'ns2.example.com.']
>>> z.root.records('MX').items
[(10, 'mail.example.com.'), (20, 'mail2.example.com.')]
>>> z.names['foo.example.com.'].records('A').items
['10.0.0.1']
>>> ns = z.root.records('NS')
>>> ns.add('ns3.example.com.')
>>> ns.items
['ns1.example.com.', 'ns2.example.com.', 'ns3.example.com.']
>>> ns.delete('ns2.example.com')
>>> ns.items
['ns1.example.com.', 'ns3.example.com.']
>>> z.save(autoserial=True)
ZoneCheck:
>>> from dnszone.zone_check import ZoneCheck
>>> c = ZoneCheck()
>>> c.isValid('example.com', '/var/named/zones/example.com')
True
>>> c.isValid('foo.com', '/var/named/zones/example.com')
False
>>> c.error
'Bad syntax'
>>>
>>> c = ZoneCheck(checkzone='/usr/sbin/named-checkzone')
>>> c.isValid('example.com', '/var/named/zones/example.com')
True
>>>
ZoneReload:
>>> from dnszone.zone_reload import ZoneReload
>>> r = ZoneReload()
>>> r.reload('example.com')
zone reload up-to-date
>>> r.reload('foo.com')
rndc: 'reload' failed: not found
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "dnszone/zone_reload.py", line 51, in reload
raise ZoneReloadError("rndc failed with return code %d" % r)
dnszone.zone_reload.ZoneReloadError: rndc failed with return code 1
>>>
>>> r = ZoneReload(rndc='/usr/sbin/rndc')
>>> r.reload('example.com')
zone reload up-to-date
>>>
项目详情
下载文件
下载适用于您的平台文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
dnszone-3.1.1.tar.gz (14.4 kB 查看散列值)
构建分发版
dnszone-3.1.1-py3-none-any.whl (9.6 kB 查看散列值)
关闭
dnszone-3.1.1.tar.gz的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 2ecc12d4af83fde172f6dc827362bc1d4c0c49fd100a53443adc5c15a54a0841 |
|
MD5 | 11c7ad2a26fc8f584e4f82917973abb2 |
|
BLAKE2b-256 | 94600c49901976e8d168aa979eb177b38516097a79ffdb31124e2290e88ce7ce |
关闭
dnszone-3.1.1-py3-none-any.whl的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | cbdbd5c2eebbb8cfde7517107ee2ad8a016e7b0fa7db12a232b0e0bcd76518c2 |
|
MD5 | 9b4bac77238dca7999928f1c797b3062 |
|
BLAKE2b-256 | 517987c1cd5cfb3cbe73d2747fb79bd713bdbc915ac077ed15953697704da4d6 |