【发布时间】:2019-02-06 18:34:33
【问题描述】:
我在盒子上有多个接口,并希望使用 python 强制流量通过特定接口。
This thread 回答了如何为 HTTP 流量执行此操作。但是当我查看 tcpdump 时,DNS 查询不遵守接口设置。 libcurl 使用选项CURLOPT_DNS_INTERFACE 和CURLOPT_DNS_LOCAL_IP4 提供强制DNS 流量通过特定接口的选项
我尝试通过 C 使用相同的,当 libcurl 使用 c-ares 支持构建时,它似乎尊重接口。
但是当从 pycurl 版本中使用相同的选项时,会导致以下错误:
AttributeError: DNS_INTERFACE
AttributeError: DNS_LOCAL_IP4
我正在尝试建议的猴子补丁on this thread。但是根据 cmets,其他人已经报告说它不起作用。谢谢。
[edit] 用 bind 测试了上面提到的猴子补丁,tcpdump 仍然通过不同的接口显示流量。固定格式。
【问题讨论】:
标签: python curl networking libcurl pycurl