Why does dig resolve a name but not nslookup (+ all other commands)?


So I’m trying to work out why my dig and nslookup have different answers for the same DNS server (googles 8.8.8.8).

$ dig @8.8.8.8 myname.ddns.net
;; Warning: Message parser reports malformed message packet.

; <<>> DiG 9.11.5-P4-5.1+deb10u2-Raspbian <<>> @8.8.8.8 myname.ddns.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31873
;; flags: qr ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 78c618561693da34 (echoed)
;; QUESTION SECTION:
;myname.ddns.net.         IN      A

;; ADDITIONAL SECTION:
myname.ddns.net.  30      IN      A       10.243.110.40

;; Query time: 2 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Tue Sep 08 09:24:55 AEST 2020
;; MSG SIZE  rcvd: 78

But then nslookup doesn’t find anything:

$ nslookup myname.ddns.net 8.8.8.8
Server:         8.8.8.8
Address:        8.8.8.8#53

Non-authoritative answer:
*** Can't find myname.ddns.net: No answer

I’m using the same server and getting different results… I don’t understand. What am I missing? Obviously regular commands trying to resolve the hostname, like ping and ssh etc don’t work.

(Yes I know that’s an internal IP, but that’s actually what I want.)