擅长:python、mysql、java
<p>我是dnspython客户端子网的开发/维护人员。它被设计为在代码中用作dnspython的一个附加项。我刚刚发布了版本2.0.0(在尝试了您想要的之后),它使一切变得更加简单</p>
<ol>
<li><code>pip install clientsubnetoption</code>(适用于Python2和Python3)</li>
<li><p>导入<code>clientsubnetoption</code>和您需要的依赖项:</p>
<pre><code>import dns
import clientsubnetoption
</code></pre></li>
<li><p>使用所需信息设置您的<code>ClientSubnetOption</code>:</p>
<pre><code>cso = clientsubnetoption.ClientSubnetOption('1.2.3.4')
</code></pre></li>
<li><p>创建DNS包:</p>
<pre><code>message = dns.message.make_query('google.com', 'A')
</code></pre></li>
<li><p>添加edns选项:</p>
^{4美元</li>
<li><p>使用<code>message</code>进行查询:</p>
<pre><code>r = dns.query.udp(message, '8.8.8.8')
</code></pre></li>
<li><p>选项信息现在位于<code>r.options</code>,并且可以有多个选项,因此您可能需要遍历它们来找到<code>ClientSubnetOption</code>对象。在</p>
<pre><code>for options in r.options:
if isinstance(options, ClientSubnetOption):
# do stuff here
pass
</code></pre></li>
</ol>
<p>代码子客户端选项是否可以作为一个单元测试和测试工具来支持edns clientsubnet,而不是因为必须那样使用它。在</p>