pub async fn bind_with_opts(addr: &SocketAddr, opts: &ConnectOpts) -> io::Result<Self> {
        bind_outbound_udp_socket(addr, opts).await.map(|socket| Self {
            socket,
            mtu: opts.udp.mtu,
        })
    }
Binds to a specific address with opts as an outbound socket
crates/shadowsocks/src/net/udp.rs