getdnsapi / getdns

A modern asynchronous DNS API https://getdnsapi.net/
Other
461 stars 127 forks source link

Weird result from simple test program on specific host #500

Closed stephanbosch closed 3 years ago

stephanbosch commented 3 years ago

(Sent this on the mailinglist before, but it doesn't seem to be active)

The following simple program properly yields a response with addresses for www.google.com on most systems I test it on, but on one specific host it yields results for canonical_name "." with lots of data from the DNS root servers. There should be nothing special about this host.

Debian buster. Package: libgetdns10 Source: getdns Version: 1.5.1-1

What could be going on?

Regards,

Stephan.

#include <getdns/getdns_extra.h>
#include <stdio.h>
#include <string.h>
#include <arpa/inet.h>

int main()
{
    getdns_return_t r;
    getdns_context *ctxt = NULL;
    getdns_dict *resp = NULL;
    getdns_bindata *address;
    char address_str[1024];

    if ((r = getdns_context_create(&ctxt, 1))) {
        fprintf( stderr, "Could not create context: %s\n"
               , getdns_get_errorstr_by_id(r));
        return 1;
    }
    if ((r = getdns_address_sync(ctxt, "www.google.com.", NULL, &resp))) {
        fprintf( stderr, "Unable to do an address lookup: %s\n"
            , getdns_get_errorstr_by_id(r));
        return 1;
    }

    char *out = getdns_print_json_dict(resp, 1);
    fprintf(stdout, "%s", out);
    free(out);

    if (resp)
        getdns_dict_destroy(resp);
    if (ctxt)
        getdns_context_destroy(ctxt);

    return r ? EXIT_FAILURE : EXIT_SUCCESS;
}

Name resolution works normally on that host:

$ dig www.google.com.

; <<>> DiG 9.11.5-P4-5.1+deb10u3-Debian <<>> www.google.com.
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47363
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.google.com.            IN    A

;; ANSWER SECTION:
www.google.com.        139    IN    A    172.217.17.68

;; Query time: 0 msec
;; SERVER: 10.168.3.1#53(10.168.3.1)
;; WHEN: do apr 15 20:13:28 CEST 2021
;; MSG SIZE  rcvd: 59

Compiled the program as:

gcc -o getdns-dump getdns-dump.c -lgetdns

Yields the following on that particular environment:

$ ./getdns-dump
{
  "answer_type": 800,
  "canonical_name":".",
  "just_address_answers": [],
  "replies_full":
  [
[218,221,129,144,0,1,0,14,0,0,0,1,0,0,2,0,1,192,12,0,2,0,1,0,1,65,185,0,20,1,108,12,114,111,111,116,45,115,101,114,118,101,114,115,3,110,101,116,0,192,12,0,2,0,1,0,1,65,185,0,4,1,102,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,103,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,99,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,105,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,98,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,106,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,109,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,107,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,101,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,100,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,104,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,97,192,31,192,12,0,46,0,1,0,1,65,185,1,19,0,2,8,0,0,7,233,0,96,137,106,96,96,120,56,208,57,39,0,7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195,192,12,0,41,255,255,0,0,128,0,0,0],
[218,221,129,144,0,1,0,14,0,0,0,1,0,0,2,0,1,192,12,0,2,0,1,0,1,65,185,0,20,1,108,12,114,111,111,116,45,115,101,114,118,101,114,115,3,110,101,116,0,192,12,0,2,0,1,0,1,65,185,0,4,1,102,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,103,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,99,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,105,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,98,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,106,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,109,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,107,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,101,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,100,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,104,192,31,192,12,0,2,0,1,0,1,65,185,0,4,1,97,192,31,192,12,0,46,0,1,0,1,65,185,1,19,0,2,8,0,0,7,233,0,96,137,106,96,96,120,56,208,57,39,0,7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195,192,12,0,41,255,255,0,0,128,0,0,0]
  ],
  "replies_tree":
  [
    {
      "additional":
      [
        {
          "do": 1,
          "extended_rcode": 0,
          "rdata":
          {
            "rdata_raw":[]
          },
          "type": 41,
          "udp_payload_size": 65535,
          "version": 0,
          "z": 0
        }
      ],
      "answer":
      [
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"l.root-servers.net.",
            "rdata_raw":"l.root-servers.net."
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"f.root-servers.net.",
            "rdata_raw":[1,102,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"g.root-servers.net.",
            "rdata_raw":[1,103,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"c.root-servers.net.",
            "rdata_raw":[1,99,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"i.root-servers.net.",
            "rdata_raw":[1,105,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"b.root-servers.net.",
            "rdata_raw":[1,98,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"j.root-servers.net.",
            "rdata_raw":[1,106,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"m.root-servers.net.",
            "rdata_raw":[1,109,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"k.root-servers.net.",
            "rdata_raw":[1,107,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"e.root-servers.net.",
            "rdata_raw":[1,101,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"d.root-servers.net.",
            "rdata_raw":[1,100,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"h.root-servers.net.",
            "rdata_raw":[1,104,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"a.root-servers.net.",
            "rdata_raw":[1,97,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "algorithm": 8,
            "key_tag": 14631,
            "labels": 0,
            "original_ttl": 518400,
"rdata_raw":[0,2,8,0,0,7,233,0,96,137,106,96,96,120,56,208,57,39,0,7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195],
"signature":[7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195],
            "signature_expiration": 1619618400,
            "signature_inception": 1618491600,
            "signers_name":".",
            "type_covered": 2
          },
          "ttl": 82361,
          "type": 46
        }
      ],
      "answer_type": 800,
      "authority": [],
      "canonical_name":".",
      "header":
      {
        "aa": 0,
        "ad": 0,
        "ancount": 14,
        "arcount": 1,
        "cd": 1,
        "id": 56029,
        "nscount": 0,
        "opcode": 0,
        "qdcount": 1,
        "qr": 1,
        "ra": 1,
        "rcode": 0,
        "rd": 1,
        "tc": 0,
        "z": 0
      },
      "question":
      {
        "qclass": 1,
        "qname":".",
        "qtype": 2
      }
    },
    {
      "additional":
      [
        {
          "do": 1,
          "extended_rcode": 0,
          "rdata":
          {
            "rdata_raw":[]
          },
          "type": 41,
          "udp_payload_size": 65535,
          "version": 0,
          "z": 0
        }
      ],
      "answer":
      [
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"l.root-servers.net.",
            "rdata_raw":"l.root-servers.net."
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"f.root-servers.net.",
            "rdata_raw":[1,102,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"g.root-servers.net.",
            "rdata_raw":[1,103,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"c.root-servers.net.",
            "rdata_raw":[1,99,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"i.root-servers.net.",
            "rdata_raw":[1,105,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"b.root-servers.net.",
            "rdata_raw":[1,98,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"j.root-servers.net.",
            "rdata_raw":[1,106,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"m.root-servers.net.",
            "rdata_raw":[1,109,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"k.root-servers.net.",
            "rdata_raw":[1,107,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"e.root-servers.net.",
            "rdata_raw":[1,101,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"d.root-servers.net.",
            "rdata_raw":[1,100,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"h.root-servers.net.",
            "rdata_raw":[1,104,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"a.root-servers.net.",
            "rdata_raw":[1,97,192,31]
          },
          "ttl": 82361,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "algorithm": 8,
            "key_tag": 14631,
            "labels": 0,
            "original_ttl": 518400,
"rdata_raw":[0,2,8,0,0,7,233,0,96,137,106,96,96,120,56,208,57,39,0,7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195],
"signature":[7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195],
            "signature_expiration": 1619618400,
            "signature_inception": 1618491600,
            "signers_name":".",
            "type_covered": 2
          },
          "ttl": 82361,
          "type": 46
        }
      ],
      "answer_type": 800,
      "authority": [],
      "canonical_name":".",
      "header":
      {
        "aa": 0,
        "ad": 0,
        "ancount": 14,
        "arcount": 1,
        "cd": 1,
        "id": 56029,
        "nscount": 0,
        "opcode": 0,
        "qdcount": 1,
        "qr": 1,
        "ra": 1,
        "rcode": 0,
        "rd": 1,
        "tc": 0,
        "z": 0
      },
      "question":
      {
        "qclass": 1,
        "qname":".",
        "qtype": 2
      }
    }
  ],
  "status": 900
}stephan@johanna:~/src/devel$ gcc -o getdns-dump getdns-dump.c -lgetdns -levent -lgetdns_ext_event
stephan@johanna:~/src/devel$ ./getdns-dump
{
  "answer_type": 800,
  "canonical_name":".",
  "just_address_answers": [],
  "replies_full":
  [
[250,115,129,144,0,1,0,14,0,0,0,1,0,0,2,0,1,192,12,0,2,0,1,0,1,64,193,0,20,1,108,12,114,111,111,116,45,115,101,114,118,101,114,115,3,110,101,116,0,192,12,0,2,0,1,0,1,64,193,0,4,1,102,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,103,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,99,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,105,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,98,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,106,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,109,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,107,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,101,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,100,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,104,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,97,192,31,192,12,0,46,0,1,0,1,64,193,1,19,0,2,8,0,0,7,233,0,96,137,106,96,96,120,56,208,57,39,0,7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195,192,12,0,41,255,255,0,0,128,0,0,0],
[250,115,129,144,0,1,0,14,0,0,0,1,0,0,2,0,1,192,12,0,2,0,1,0,1,64,193,0,20,1,108,12,114,111,111,116,45,115,101,114,118,101,114,115,3,110,101,116,0,192,12,0,2,0,1,0,1,64,193,0,4,1,102,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,103,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,99,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,105,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,98,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,106,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,109,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,107,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,101,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,100,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,104,192,31,192,12,0,2,0,1,0,1,64,193,0,4,1,97,192,31,192,12,0,46,0,1,0,1,64,193,1,19,0,2,8,0,0,7,233,0,96,137,106,96,96,120,56,208,57,39,0,7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195,192,12,0,41,255,255,0,0,128,0,0,0]
  ],
  "replies_tree":
  [
    {
      "additional":
      [
        {
          "do": 1,
          "extended_rcode": 0,
          "rdata":
          {
            "rdata_raw":[]
          },
          "type": 41,
          "udp_payload_size": 65535,
          "version": 0,
          "z": 0
        }
      ],
      "answer":
      [
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"l.root-servers.net.",
            "rdata_raw":"l.root-servers.net."
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"f.root-servers.net.",
            "rdata_raw":[1,102,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"g.root-servers.net.",
            "rdata_raw":[1,103,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"c.root-servers.net.",
            "rdata_raw":[1,99,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"i.root-servers.net.",
            "rdata_raw":[1,105,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"b.root-servers.net.",
            "rdata_raw":[1,98,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"j.root-servers.net.",
            "rdata_raw":[1,106,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"m.root-servers.net.",
            "rdata_raw":[1,109,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"k.root-servers.net.",
            "rdata_raw":[1,107,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"e.root-servers.net.",
            "rdata_raw":[1,101,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"d.root-servers.net.",
            "rdata_raw":[1,100,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"h.root-servers.net.",
            "rdata_raw":[1,104,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"a.root-servers.net.",
            "rdata_raw":[1,97,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "algorithm": 8,
            "key_tag": 14631,
            "labels": 0,
            "original_ttl": 518400,
"rdata_raw":[0,2,8,0,0,7,233,0,96,137,106,96,96,120,56,208,57,39,0,7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195],
"signature":[7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195],
            "signature_expiration": 1619618400,
            "signature_inception": 1618491600,
            "signers_name":".",
            "type_covered": 2
          },
          "ttl": 82113,
          "type": 46
        }
      ],
      "answer_type": 800,
      "authority": [],
      "canonical_name":".",
      "header":
      {
        "aa": 0,
        "ad": 0,
        "ancount": 14,
        "arcount": 1,
        "cd": 1,
        "id": 64115,
        "nscount": 0,
        "opcode": 0,
        "qdcount": 1,
        "qr": 1,
        "ra": 1,
        "rcode": 0,
        "rd": 1,
        "tc": 0,
        "z": 0
      },
      "question":
      {
        "qclass": 1,
        "qname":".",
        "qtype": 2
      }
    },
    {
      "additional":
      [
        {
          "do": 1,
          "extended_rcode": 0,
          "rdata":
          {
            "rdata_raw":[]
          },
          "type": 41,
          "udp_payload_size": 65535,
          "version": 0,
          "z": 0
        }
      ],
      "answer":
      [
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"l.root-servers.net.",
            "rdata_raw":"l.root-servers.net."
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"f.root-servers.net.",
            "rdata_raw":[1,102,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"g.root-servers.net.",
            "rdata_raw":[1,103,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"c.root-servers.net.",
            "rdata_raw":[1,99,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"i.root-servers.net.",
            "rdata_raw":[1,105,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"b.root-servers.net.",
            "rdata_raw":[1,98,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"j.root-servers.net.",
            "rdata_raw":[1,106,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"m.root-servers.net.",
            "rdata_raw":[1,109,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"k.root-servers.net.",
            "rdata_raw":[1,107,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"e.root-servers.net.",
            "rdata_raw":[1,101,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"d.root-servers.net.",
            "rdata_raw":[1,100,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"h.root-servers.net.",
            "rdata_raw":[1,104,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "nsdname":"a.root-servers.net.",
            "rdata_raw":[1,97,192,31]
          },
          "ttl": 82113,
          "type": 2
        },
        {
          "class": 1,
          "name":".",
          "rdata":
          {
            "algorithm": 8,
            "key_tag": 14631,
            "labels": 0,
            "original_ttl": 518400,
"rdata_raw":[0,2,8,0,0,7,233,0,96,137,106,96,96,120,56,208,57,39,0,7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195],
"signature":[7,34,174,21,159,149,46,201,61,234,5,107,224,196,236,132,228,4,219,25,137,160,228,149,205,105,68,138,190,29,116,97,178,22,7,148,140,201,229,50,17,168,0,200,136,195,50,134,59,120,4,28,115,185,99,19,222,77,17,57,125,177,8,81,214,236,199,170,117,99,80,102,222,214,128,162,210,182,40,197,14,161,192,176,184,88,56,135,246,69,96,75,156,202,42,221,71,85,20,19,128,215,233,139,196,240,32,175,144,132,38,226,29,119,20,211,229,48,75,255,75,134,174,107,25,214,114,250,175,25,182,29,50,135,205,26,8,18,65,64,110,253,16,85,250,93,77,39,86,161,109,21,170,6,34,223,19,121,240,112,126,68,123,155,210,98,140,103,169,29,25,85,169,10,38,74,42,141,165,176,230,39,121,242,238,121,33,120,18,202,77,202,244,70,183,0,223,115,89,131,51,52,215,126,103,111,86,84,231,101,91,172,104,75,110,152,66,107,172,196,165,34,220,54,224,86,189,157,123,45,188,204,160,222,79,13,23,183,25,203,173,223,171,38,250,54,223,189,42,231,108,42,51,159,85,195],
            "signature_expiration": 1619618400,
            "signature_inception": 1618491600,
            "signers_name":".",
            "type_covered": 2
          },
          "ttl": 82113,
          "type": 46
        }
      ],
      "answer_type": 800,
      "authority": [],
      "canonical_name":".",
      "header":
      {
        "aa": 0,
        "ad": 0,
        "ancount": 14,
        "arcount": 1,
        "cd": 1,
        "id": 64115,
        "nscount": 0,
        "opcode": 0,
        "qdcount": 1,
        "qr": 1,
        "ra": 1,
        "rcode": 0,
        "rd": 1,
        "tc": 0,
        "z": 0
      },
      "question":
      {
        "qclass": 1,
        "qname":".",
        "qtype": 2
      }
    }
  ],
  "status": 900
}
stephanbosch commented 3 years ago

OK. Found the issue with some external help.

  1. My network breaks recursive resolution attempts apart from the recursive resolver on my router (by some weird old 53 redirect left in my firewall). Once removed, recursive resolution works, but that is not what I need.
  2. I omitted setting getdns_context_set_resolution_type(dns_context, GETDNS_RESOLUTION_STUB);, which achieves the stub resolver behavior I need.