`server.net_addr_str()` cuts off the trailing protocol marker, while `str(server)` has it. `parent.set_server` then called `ServerAddr.from_str_with_inference` trying to guess the just cut off protocol, but fails if given an IPv6 address.
`server.net_addr_str()` cuts off the trailing protocol marker, while `str(server)` has it. `parent.set_server` then called `ServerAddr.from_str_with_inference` trying to guess the just cut off protocol, but fails if given an IPv6 address.