When you ping google.com, did it resolve? In other words, did it come up and say
msimmons@newcastle:~$ ping google.com
PING google.com (74.125.127.100) 56(84) bytes of data.
Or did it say
ping: unknown host google.com
Assuming it said the first, your DNS is fine. At that point, lets look into the routing:
Here's mine:
msimmons@newcastle:~$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.x.x.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 10.x.x.1 0.0.0.0 UG 0 0 0 eth0
Since I'm on an internal network, everything destined for 10.x.x.0/24 (the /24 comes from the "genmask" column) goes out the local ethernet card.
Everything else (0.0.0.0/0) goes to 10.x.x.1, my gateway. My guess is that this line is probably absent or messed up on yours.
If you have a relatively simple network configuration, and that line is missing, you can issue this command as root:
# route add default gw 10.x.x.1
Where 10.x.x.1 is your default gateway.
EDIT
Alright, given the new information, it looks like your routes are fine. Where is the server that you were pinging located? On the local segment, or remote?
Anyway, lets see where the connection dies:
traceroute -n www.google.com
Chances are really good that you'll at least get a response from your gateway, 10.x.x.1. Anything past that means your gateway is routing traffic to you. If you don't get responses, that may indicate a network firewall causing the problem.
Of course, there's still the chance that you're getting traffic, but that your gateway is filtering ICMP packets. It would be diagnostic to try telnetting to google and pretending to be a web browser:
msimmons@newcastle:~$ telnet www.google.com 80
Trying 66.102.1.104...
Connected to www.l.google.com.
Escape character is '^]'.
GET / HTTP/1.0
HTTP/1.0 200 OK
Date: Mon, 10 Aug 2009 19:20:19 GMT
Expires: -1
Cache-Control: private, max-age=0
...
You type the "GET / HTTP/1.0" then hit enter twice...though really, if you get the "connected to..." part, you're probably good.
Update once you've tried this!
I imagine the most likely culprit is the firewall on the host. This can be confirmed by running
/etc/init.d/iptables stop
Which will stop the firewall. Then try your ping tests. Use
/etc/init.d/iptables start
To bring it back up again once confirmed.
Best Answer
Look here: Citrix Forum
After the update from my Citrix XenServer 5.6.0 to XenServer 5.6.1 feature pack 1 the network and the XenServer was unreachable. I couldn’t ping an IP from the network. The Mainboard is an ASRock P43TWINS1600 and the NIC is a RTL 8111/8168B PCI Express Gigabit Ethernet Controller.
With ifdown eth0 and ifup eth0 I tried to restart the NIC, but on ifup eth0 I got the error
Cannot set large receive offload settings: Operation not supported
I asked in the citrix forum (After update to XenServer-5.6.1-fp1 citrix xenserver unreachable) and I got the soluation (Thanks).
“An issue has been identified that affects some systems with Realtek cards. It will be resolved in the next hotfix. In the meantime try adding
to
/etc/modprobe.conf
.”