Ach so, Du meinst mit "virtuellen Hosts", daß Dein Nagios dieselbe Maschine (IP) unter mehreren Namen kennt, und nicht soundsoviele virtuelle Maschinen, die (mit eigenen IPs und u.U. auch getrennten virtuellen Netzwerken) auf demselben physischen Server laufen.
Dann würde sich aber auch anbieten, den Status eines solchen Hosts vom "richtigen" Host herüberzukopieren (check_dummy mit On-Demand Macro) statt ihn auf UP festzunageln. Oder den Status des "zentralen" Services (check_http für webserver, check_mysql für mysql, ...) als "Host"status zweckzuentfremden.
Last not least: Ist das Vermeiden von ein paar Pings die Verbiegung wirklich wert? Hast Du schon von check_ping auf check_icmp umgestellt, wenn's an der Stelle wirklich einen Flaschenhals gibt?