SSH errors

hellow Experts,

I want to know that whenever i run ssh command,
i get this error
> ssh username@x.x.x.x
ssh: connect to host x.x.x.x port 22: No route to host
or
connection refused

i want to know the exact reason for these errors ..
like because of firewall , no physical conection , connection limit ...???

Thanx

"No route to host" basically means you can't even ping it because the network driver doesn't know where to send the packets.

In rare cases this can also be due to a firewall that intentionally sends back an ICMP packet to pretend the host does not exist. But more frequently it refers to routing problems between the two hosts.

... and Connection refused means there's no daemon listening on port 22, or the connection was firewalled. (Sorry, missed that when initially responding.)