The problem with Net::Ping is that the "icmp protocol requires that the program be run as root or that it be setuid to root" (from perldoc Net::Ping). Otherwise, it will try tcp or udp connections to the remote system's "echo" port. Many systems do not have an echo server running, which would make them seem unreachable, even when they are not.
The system's "ping" command should work fine, anyway, given the corrections made by others in this node.