-1

When I do ping www.google.com the protocol ICMP does a DNS lookup and send a echo request to the google IP. When google responds, another dns lookup happens?

And if I do ping -n www.google.com do I save time but not performing the two dns lookups?

1 Answers1

0

the protocol ICMP does a DNS lookup

This is incorrect. ICMP, like IP deals with addresses. When you use names, applications (that is the ping program) will query the OS to translate the name to an IP.

This mapping may be done in different way and the DNS is only one among others. On Unix systems, see the /etc/nsswitch.conf file that dictates how various things should be resolved, like hostsnames. Typically it is at least a mix of the content of the /etc/hosts file and DNS queries.

So once the ping program, typically using getaddringo OS class has resolved the name to an IP address, then it starts using the ICMP protocol towards that address.

When google responds, another dns lookup happens?

No, why should it? Again, when ICMP happens we are already and now solely in a world of addresses, there are no names there.

do I save time but not performing the two dns lookups?

Yes, probably, but just once (DNS uses caches) and the difference will be marginal and lost normally in many other things.

But the interesting question is why do you have this question, I mean what do you try to attempt going that way? Note that ping (because it uses ICMP) is a poor troubleshooting tool as ICMP traffic is often configured very differently in networks than IP traffic. (And you should not use www.google.com as an anchor for tests, have a look at RIPE anchors instead for example, but again it depends a lot on what is your true underlying problem here).

Patrick Mevzek
  • 10,995
  • 16
  • 38
  • 54