def _which_ip_protocol(element):
    """
    Validate the protocol addresses for the element. Most elements can
    have an IPv4 or IPv6 address assigned on the same element. This
    allows elements to be validated and placed on the right network.
    
    :return: boolean tuple
    :rtype: tuple(ipv4, ipv6)
    """
    try:
        if element.typeof in ('host', 'router'):
            return getattr(element, 'address', False), getattr(element,
                'ipv6_address', False)
        elif element.typeof == 'netlink':
            gateway = element.gateway
            if gateway.typeof == 'router':
                return getattr(gateway, 'address', False), getattr(gateway,
                    'ipv6_address', False)
        elif element.typeof == 'network':
            return getattr(element, 'ipv4_network', False), getattr(element,
                'ipv6_network', False)
    except AttributeError:
        pass
    return True, True
