使用 curl 将二进制 dns 数据包发送到服务器

sending binary dns packet to server using curl

我正在尝试使用 Wireshark 和 curl 将 DNS 数据包发送到 DNS 服务器以获得 DNS 响应。所以,我不想使用 curl -v --doh-url https://dns-server.example.com https://www.google.com,而是想使用 curl --data-binary @filename http://example.com/ 到 POST 二进制 dns 数据包到 dns 服务器(即 https://cloudflare-dns.com/dns-query)。是否有 curl 命令允许我 post 到服务器而不是 url?

备注:

当然,如果您只有一个创建 DNS 数据包的工具,那么 --data-binary 就是您所需要的。您可能还想确保设置正确的 Content-Type:

或者,您可以使用我们正在为此目的开发的 doh 工具,它使用 libcurl 向给定的 DoH 服务器发送 DNS 查询。