I don't understand your question. You should be able to ping via IP address any computer's IP address (unless the firewall prevents access to the ping port). Perhaps if you gave an example that would help.
As you can see in the attached image, production,database and staging servers are under one network. Production and DB servers have LIVE ip address that I can ping directly when I am outside their network. Staging does not have live IP address, so in order to access it from outside,say using PuTTY, I have to set port forwarding, right? Now, the other day, I was on production server and tried to ping live IP address of database server and it gave me this error,
[root@server ~]# ping x.x.x.x
PING x.x.x.x (x.x.x.x) 56(84) bytes of data.
From y.y.y.y: icmp_seq=1 Redirect Host(New nexthop: y.y.y.y)
From y.y.y.y icmp_seq=1 Destination Host Unreachable
From y.y.y.y icmp_seq=2 Destination Host Unreachable
From y.y.y.y icmp_seq=3 Destination Host Unreachable
I can ping the same IP address once I am outside of that network. I can also ping their local IP addresses.
Try running ifconfig on each machine. That should tell you all of the IP addresses configured for the machine. You should notice that there are two sets of IP addresses, one for the public network (what you are calling the LIVE IP), and the other for the internal network. That is for a basic setup. But network admins can play all kinds of games with network topology, so you might have to find one of them, tie him (or her) down, and ask your questions.