I tried to ping a D-link router 110.90.xxx.xxx, but I get:
Request timed out
I'm sure the router was online, and router firewall function was not turned on. What can cause this to happen?
Two Types of Ping
There are two types of ping:
Even if your firewall is "off", the default behavior might be to silently ignore pings.
Pings are necessarily round trip: in order to time anything, you must know how long it took for the endpoint to receive your packet. In order to know that, the endpoint has to send something back to you. So any ping, whether ICMP or UDP, has to involve two steps:
Your client sends a ping packet ----> router
Router sends back some kind of packet to your client, whether it's saying "oh hello there", or "that port is closed!", or "I don't understand the protocol you're speaking!" -----> your client
This "round trip" can be timed, but a one-way packet alone cannot be timed, because without a response, the client doesn't know how long it took, or if it ever even got there in the first place.
So if the default behavior of the router is to silently ignore pings on closed ports (which is a sensible behavior even if the firewall is off), the request will always time out.
Things you can try:
I don't know whether your ping client uses ICMP or UDP because you did not specify any information at all about the nature of your client PC, whether it's Linux, Mac, Windows, BSD, or some custom OS you wrote yourself.