I\'m working on a DNS query implementation in C and interested in requesting both A and AAAA (IPv4 and IPv6) records in a single query packet, but I\'m not getting any responses
Whilst the packet format technically supports having more than one record in the question section (see §4.1.2 of RFC 1035), in practise it just doesn't work, as you've found.
In particular no-one has ever managed to define correct semantics for what to do if the two questions were to result in two different RCODEs.
I've tried to define those semantics at the IETF but as yet that hasn't got very far.
In my own DNS packet parsing code I always reject any such packet.