P2p_point.IdSourcetype addr_port_id = {addr : string;String representation of an address. This address can be an IPv4 or IPv6 or a domain.
*)port : int option;If specified, a port number in 0-65535.
*)peer_id : P2p_peer_id.t option;If specified, a peer_id. This field is given by the user to ensure the identity of the node behind the address.
}parse_addr_port_id addr_port_id splits the addr_port_id into an addr, a port and an id (as a b58 hash). Both port and id are optional. This function checks that the port is between 0-65535. The character ':' separates the addr and the port while the character '#' separates the addr or the port from the id. The function assumes that addr can be either an Ipv6 address, an Ipv4 address or a domain. The address is formatted so that it can be given to Lwt_unix.getaddrinfo. This means that square brackets around ipv6 addresses are removed.