Many PTR DNS queries

Hi and welcome!

Look into this thread: Simple question about ip address vs hostname and dns for pings. Your question is similar.

In short: It’s difficult to give a general answer. The point is, that Icinga only triggers external check plugins and pass the necessary from the check command definition. If you pass the dns name, the triggerd check plugin (not Icinga!) you’ve defined in the service, has do lookup the dns. Maybe the check plugin you are using has it’s own mechanism or it is using the TCP/IP stack of the OS.
After the check plugin did his job, it passes the result back to Icinga.