使用Python中的客户端子网选项解析dns(edns)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了使用Python中的客户端子网选项解析dns(edns),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1220字,纯文字阅读大概需要2分钟。
内容图文
我正在寻找一个Python实现,允许我使用DNS(EDNS)“客户端子选项”的扩展来解析DNS地址.此选项允许更好的DNS解析内容交付系统 – 并最终,更快的互联网路由.这里的动机更好解释:http://www.afasterinternet.com/howitworks.htm
另一个名字是“vandergaast-edns-client-subnet”
这里有一个挖掘实现:
https://www.gsic.uva.es/~jnisigl/dig-edns-client-subnet.html
我正在寻找一个可以做同样的python实现.
解决方法:
我是dnspython-clientsubnet的开发者/维护者.它被设计为在您的代码中用作dnspython的添加剂.我刚刚发布了2.0.0版本(在尝试做你想做的事情之后),这使得一切变得更加容易
> pip install clientsubnetoption(适用于Python2和Python3)
>导入您需要的客户端选择和依赖:
import dns
import clientsubnetoption
>使用您想要的信息设置ClientSubnetOption:
cso = clientsubnetoption.ClientSubnetOption('1.2.3.4')
>创建您的DNS数据包:
message = dns.message.make_query('google.com', 'A')
>添加edns选项:
message.use_edns(options=[cso])
>使用消息进行查询:
r = dns.query.udp(message, '8.8.8.8')
>选项信息现在位于r.options并且可能有多个,因此您可能需要遍历它们才能找到ClientSubnetOption对象.
for options in r.options:
if isinstance(options, ClientSubnetOption):
# do stuff here
pass
clientsubnetoption.py中的代码用作单元测试和支持edns-clientsubnet的测试工具,而不是因为你必须以这种方式使用它.
内容总结
以上是互联网集市为您收集整理的使用Python中的客户端子网选项解析dns(edns)全部内容,希望文章能够帮你解决使用Python中的客户端子网选项解析dns(edns)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。