diff --git a/scapy/volatile.py b/scapy/volatile.py
index 12fa1b0b62daae13ad7fcd7be6c3adeb4ac11f7a..f8f62a37657e996040604c9ab04139327ca9c81c 100644
--- a/scapy/volatile.py
+++ b/scapy/volatile.py
@@ -294,7 +294,7 @@ class RandIP6(RandString):
                     remain = random.randint(0,remain)
                 for j in range(remain):
                     ip.append("%04x" % random.randint(0,65535))
-            if n == 0:
+            elif n == 0:
               ip.append("0")
             elif not n:
                 ip.append("")
@@ -303,7 +303,7 @@ class RandIP6(RandString):
         if len(ip) == 9:
             ip.remove("")
         if ip[-1] == "":
-          ip[-1] = 0
+          ip[-1] = "0"
         return ":".join(ip)
 
 class RandOID(RandString):