Why do you receive a `SocketAddr` but send on an `IpAddr`?