474 return _cls(name, ttl, cls, type, data, **opts) |
474 return _cls(name, ttl, cls, type, data, **opts) |
475 |
475 |
476 @classmethod |
476 @classmethod |
477 def A (_cls, name, ip4, **opts): |
477 def A (_cls, name, ip4, **opts): |
478 """ |
478 """ |
479 Build from ipaddr.IPv4Address. |
479 Build from ipaddress.IPv4Address. |
480 """ |
480 """ |
481 |
481 |
482 return _cls.build(name, 'A', ipaddr.IPv4Address(ip4), **opts) |
482 return _cls.build(name, 'A', ipaddress.IPv4Address(unicode(ip4)), **opts) |
483 |
483 |
484 @classmethod |
484 @classmethod |
485 def AAAA (_cls, name, ip6, **opts): |
485 def AAAA (_cls, name, ip6, **opts): |
486 """ |
486 """ |
487 Build from ipaddr.IPv6Address. |
487 Build from ipaddress.IPv6Address. |
488 """ |
488 """ |
489 |
489 |
490 return _cls.build(name, 'AAAA', ipaddr.IPv6Address(ip6), **opts) |
490 return _cls.build(name, 'AAAA', ipaddress.IPv6Address(unicode(ip6)), **opts) |
491 |
491 |
492 @classmethod |
492 @classmethod |
493 def CNAME (_cls, name, alias, **opts): |
493 def CNAME (_cls, name, alias, **opts): |
494 return _cls.build(name, 'CNAME', alias, **opts) |
494 return _cls.build(name, 'CNAME', alias, **opts) |
495 |
495 |