Ok, if it still not clearly, what I had said, I`ll explaim it in details.

/dns command breaks the logical connection between command, and result of this command, which we get with "ON DNS" event (in difference with some $function() etc.). So, I suggest adding some identifier which would help to identify dns transaction.
Example:

Code:
/dns -ih some_id some.host
->
on 1:dns:{
  echo -a $dns(0).id ( $dns(1).ip - $dns(1).addr )
}


and it to return something like this:
some_id ( 127.0.0.1 - some.host )
Here I has added -i switch (it isnt used in mIRC, I has imagined it myself to show an example)


HOW EXACTLY to associate this id to the transaction - I dont know, because of Im not a programmer.

Sry for my low skills in english.