Before PowerDNS answers the query, it has to find the authoritative zone. 
Therefore it loops over the labels to find the zone apex.

But this behavior was changed with 4.5 when 
https://doc.powerdns.com/authoritative/settings.html#zone-cache-refresh-interval
 was introduced. So maybe you have disabled the zone-cache, using an old 
PowerDNs version, or this feature is not supported with MongoDB.

regards
Klaus

-- 
Klaus Darilion, Head of Operations
nic.at GmbH, Jakob-Haringer-Straße 8/V
5020 Salzburg, Austria


> -----Ursprüngliche Nachricht-----
> Von: Pdns-users <pdns-users-boun...@mailman.powerdns.com> Im Auftrag von
> Alexis Fidalgo via Pdns-users
> Gesendet: Montag, 6. Februar 2023 13:49
> An: pdns-users@mailman.powerdns.com
> Betreff: [Pdns-users] ENUM NAPTR queries
> 
> Hello all, good morning.
> 
> Im working developing a http app to be used with remote backend, this
> app uses a mongodb backend in order to read Local Number Portability
> records (around 400MM) queried to powerdns auth server using NAPTR type.
> 
> Everything works ok but im facing a kind of no go now. Up to now, the
> pdns auth server is getting around 20/30 qps because is under test. Next
> step is to deploy the pdns auth inside a docker swarm, set 10/15
> replicas and start receiving 1500qps and grow up to 20/25k qps.
> 
> a normal query is like this
> 
> —
>  alz@nuc  ~  dig @localhost 6.8.0.7.0.0.9.9.3.2.lesi.com.ar NAPTR
> 
> ; <<>> DiG 9.16.33-Debian <<>> @localhost
> 6.8.0.7.0.0.9.9.3.2.lesi.com.ar NAPTR
> ; (2 servers found)
> ;; global options: +cmd
> ;; Got answer:
> ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21129
> ;; flags: qr aa rd; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
> ;; WARNING: recursion requested but not available
> 
> ;; OPT PSEUDOSECTION:
> ; EDNS: version: 0, flags:; udp: 1232
> ;; QUESTION SECTION:
> ;6.8.0.7.0.0.9.9.3.2.lesi.com.ar. IN NAPTR
> 
> ;; ANSWER SECTION:
> 6.8.0.7.0.0.9.9.3.2.lesi.com.ar. 1 IN NAPTR 100 10 "u" "E2U+SIP"
> "!^.*$!sip:+2399007...@ims.mnc790.mcc313.3gppnetwork.org!" .
> 6.8.0.7.0.0.9.9.3.2.lesi.com.ar. 1 IN NAPTR 100 10 "u" "E2U+pstn:tel"
> "!^.*$! tel:2399007086;npdi;rn=2324832232!" .
> 
> ;; Query time: 1507 msec
> ;; SERVER: 127.0.0.1#53(127.0.0.1)
> ;; WHEN: Mon Feb 06 09:34:15 -03 2023
> ;; MSG SIZE  rcvd: 205
> —
> 
> in the remote backend i can see the query
> {"method": "lookup", "parameters": {"local": "0.0.0.0", "qname":
> "6.8.0.7.0.0.9.9.3.2.lesi.com.ar.", "qtype": "ANY", "real-remote":
> "172.17.0.1/32", "remote": "172.17.0.1", "zone-id": -1}}
> 
> answered
> 
> {"result":[{"qtype":"NAPTR","qname":"6.8.0.7.0.0.9.9.3.2.lesi.com.ar.","
> content":"100 10 \"u\" \"E2U+SIP\"
> \"!^.*$!sip:+2399007...@ims.mnc790.mcc313.3gppnetwork.org!\"
> .","ttl":1},{"qtype":"NAPTR","qname":"6.8.0.7.0.0.9.9.3.2.lesi.com.ar.",
> "content":"100 10 \"u\" \"E2U+pstn:tel\" \"!^.*$! tel:2399007086;npdi
> <tel:2399007086;npdi> ;rn=2324832232!\" .","ttl":1}]}
> 
> but after that i can see
> {"method": "lookup", "parameters": {"local": "0.0.0.0", "qname":
> "8.0.7.0.0.9.9.3.2.lesi.com.ar.", "qtype": "ANY", "real-remote":
> "172.17.0.1/32", "remote": "172.17.0.1", "zone-id": -1}}
> answered: {“result": false}
> 
> then
> {"method": "lookup", "parameters": {"local": "0.0.0.0", "qname":
> "0.7.0.0.9.9.3.2.lesi.com.ar.", "qtype": "ANY", "real-remote":
> "172.17.0.1/32", "remote": "172.17.0.1", "zone-id": -1}}
> 
> and so on.
> 
> I dont need all those queries, if the first one (the complete phone
> number which is 2399007086) has no porting information, that’s it, no
> more queries. i can’t afford x10 queries on the database with no use at
> all.
> 
> All are phone calls in setup stage (at least trying to) and time is
> important (beside processing, etc)
> 
> 
> How can i stop this kind of loop recursion?
> 
> 
> Thanks in advance.
> BR
> 

_______________________________________________
Pdns-users mailing list
Pdns-users@mailman.powerdns.com
https://mailman.powerdns.com/mailman/listinfo/pdns-users

Reply via email to