def send(self, message: Message) -> IPv6Address:
        """
        Send a DHCPv6 message

        :param message: The message
        """
        packet = message.save()
        self.socket.sendall(pack("!H", len(packet)) + packet)
        return self.options.server
    def send(self, message: Message) -> IPv6Address:
        """
        Send a DHCPv6 message

        :param message: The message
        """
        packet = message.save()
        self.socket.sendall(pack("!H", len(packet)) + packet)
        return self.options.server
    def send(self, message: Message) -> IPv6Address:
        """
        Send a DHCPv6 message

        :param message: The message
        """
        packet = message.save()
        self.socket.sendto(packet, (str(self.options.server), SERVER_PORT, 0, self.if_index))
        return self.options.server
    def send(self, message: Message) -> IPv6Address:
        """
        Send a DHCPv6 message

        :param message: The message
        """
        packet = message.save()
        self.socket.sendto(
            packet, (str(self.options.server), SERVER_PORT, 0, self.if_index))
        return self.options.server