使用adns库解析域名

1.python-adns库的安装

因为我使用python进行开发,所以使用adns-python作为我的库。由于dns解析的核心函数都在adns中,所以必须首先安装adns库后,adns-python才可以安装成功。如果想进行IPv6的地址解析,必须安装支持IPv6地址解析的adns库和adns-python库。支持IPv4的库不可解析IPv6的域名地址,但支持IPv6的库可同时支持解析IPv4和IPv6的域名地址。adns库的源代码中的INSTALL文件有说明如何安装adns库,adns-python中的README文件中也有说明如何安装adns-python库。支持IPv4和支持IPv6的库安装步骤类似。

安装adns库:
$ ./configure [--disable-dynamic] [--prefix=...]
$ make
# make install
注意,make install这一命令需要有root权限
 
安装adns-python库:
$ python setup.py build (如果提示没有python.h文件,请安装python-devel。 命令为: yum install python-devel)
# python setup.py install
注意,python setup.py install这一命令需要有root权限

 2. python-adns库的使用

这里有一个利用adns-python库写的dns解析的代码。起先我不太明白为什么作者就能知道应该这样使用这些库中的函数,因为adns-python库与adns库一样,没有说明文档。后来,经高人指点,发现adns-python库中有一个ADNS.py文件,这个文件中QueryEngine类,这个类中定义的函数即给我们示范了库中提供的常用函数的使用方法。至于这些常用函数具有什么样的功能,应该如何使用等问题,只能有去源代码中找寻答案啦~~

如果代码报错,提示:libadns.so.1: cannot open shared object file: No such file or directory. 可以这样解决:

1. vim /etc/ld.so.conf
2. 添加该lib所在的路径 (libadns.so.1的路径通常中/usr/local/lib )
3. ldconfig

这是因为libadns.so.1不在默认共享库路径下。


----两个源码安装包

http://www.chiark.greenend.org.uk/~ian/adns/adns.tar.gz

http://adns-python.googlecode.com/files/adns-python-1.2.1.tar.gz

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值