outline-sdk
outline-sdk copied to clipboard
feat(transport): add DNS-over-TCP PacketListener
dnsovertcp.NewPacketListener(sd)
can be used to handle UDP based DNS requests when the remote Shadowsocks server does not support UDP traffic. This is done by using the StreamDialer
sd
to query DNS request over the TCP transport as decribed in RFC 1035.
Unlike the dnstruncated.NewPacketListener
introduced in #26 , we won't depend on the DNS client implementation, because we will do the DNS-over-TCP request on behalf of the DNS client.
Related PR: #26