diff --git a/configdb/db/validation.py b/configdb/db/validation.py
index 9d70bc361d25d3d657ed53b92c0999b91e56b70e..62f8027b12fca00fcc48546256d3f30d59cecd65 100644
--- a/configdb/db/validation.py
+++ b/configdb/db/validation.py
@@ -1,4 +1,5 @@
 import formencode
+import ipaddr
 from formencode import validators
 
 Invalid = formencode.Invalid
@@ -16,6 +17,14 @@ class RelationValidator(formencode.FancyValidator):
             return value
         raise Invalid('relation not a list of strings', value, state)
 
+class IP6Address(formencode.FancyValidator):
+    def _to_python(self, addr, state):
+        try:
+            ipaddr.IPv6Network( address=addr )
+            return addr
+        except ipaddr.AddressValueError, e:
+            raise Invalid('Not a well formed IPv6 address', addr, state)
+
 
 _validator_map = {
     'int': validators.Int(),
@@ -28,9 +37,12 @@ _validator_map = {
     'ip': validators.IPAddress(),
     'cidr': validators.CIDR(),
     'relation': RelationValidator(),
+    'ip6': IP6Address(),
     }
 
 
+
+
 class ValidatorMixin(object):
     """Mixin class for entity validation."""
 
diff --git a/setup.py b/setup.py
old mode 100644
new mode 100755
index 389301ccab1377949aafc0a430c9c0b2cb2cb787..e750c3f5665d2e9008605f65b581b1b4374da064
--- a/setup.py
+++ b/setup.py
@@ -4,13 +4,13 @@ from setuptools import setup, find_packages
 
 setup(
   name='configdb',
-  version='0.2.1',
+  version='0.2.2',
   description='database framework for configuration info',
   author='ale',
   author_email='ale@incal.net',
   url='http://git.autistici.org/p/configdb',
   install_requires=['argparse', 'Flask', 'formencode', 'inflect',
-                    'SQLAlchemy>0.7', 'python-dateutil'],
+                    'SQLAlchemy>0.7', 'python-dateutil', 'ipaddr'],
   setup_requires=[],
   zip_safe=True,
   packages=find_packages(),
@@ -21,4 +21,3 @@ setup(
     ],
   },
   )
-