Skip ping tests instead of failing if the VM has no connectivity.

Change-Id: I8cf39e2409fd9521e89e73c5080b79159718965e
diff --git a/net/test/net_test.py b/net/test/net_test.py
index 23b7868..ef0fc0a 100755
--- a/net/test/net_test.py
+++ b/net/test/net_test.py
@@ -243,7 +243,13 @@
   # Caller also needs to do s.setsockopt(SOL_IPV6, IPV6_FLOWINFO_SEND, 1).
 
 
-# Determine IPv6 configuration.
+# Determine network configuration.
+try:
+  GetDefaultRoute(version=4)
+  HAVE_IPV4 = True
+except ValueError:
+  HAVE_IPV4 = False
+
 try:
   GetDefaultRoute(version=6)
   HAVE_IPV6 = True
diff --git a/net/test/ping6_test.py b/net/test/ping6_test.py
index c5da444..7b51ac4 100755
--- a/net/test/ping6_test.py
+++ b/net/test/ping6_test.py
@@ -6,6 +6,7 @@
 import os
 import posix
 import re
+from scapy import all as scapy
 from socket import *  # pylint: disable=wildcard-import
 import unittest
 
@@ -128,13 +129,13 @@
     s.send(data)
     self.assertValidPingResponse(s, data)
 
-  @unittest.skipUnless(net_test.HAVE_IPV6, "skipping: no IPv6")
   def testIPv6LoopbackPingWithConnect(self):
     s = net_test.IPv6PingSocket()
     s.connect(("::1", 55))
     s.send(net_test.IPV6_PING)
     self.assertValidPingResponse(s, net_test.IPV6_PING)
 
+  @unittest.skipUnless(net_test.HAVE_IPV4, "skipping: no IPv4")
   def testIPv4PingUsingSendto(self):
     s = net_test.IPv4PingSocket()
     written = s.sendto(net_test.IPV4_PING, (net_test.IPV4_ADDR, 55))
@@ -166,6 +167,8 @@
     reply = posix.read(fd, 4096)
     self.assertEquals(written, len(reply))
 
+
+  @unittest.skipUnless(net_test.HAVE_IPV4, "skipping: no IPv4")
   def testIPv4Bind(self):
     # Bind to unspecified address.
     s = net_test.IPv4PingSocket()
@@ -359,6 +362,7 @@
     _, _, flowlabel, _ = src
     self.assertEqual(0xdead, flowlabel & 0xfffff)
 
+  @unittest.skipUnless(net_test.HAVE_IPV4, "skipping: no IPv4")
   def testIPv4Error(self):
     s = net_test.IPv4PingSocket()
     s.setsockopt(SOL_IP, IP_TTL, 2)
@@ -392,7 +396,6 @@
     s.sendto(data, ("127.0.0.1", 987))
     self.assertValidPingResponse(s, data)
 
-  @unittest.skipUnless(net_test.HAVE_IPV6, "skipping: no IPv6")
   def testIPv6LargePacket(self):
     s = net_test.IPv6PingSocket()
     s.bind(("::", 0xace))