Closed FlowerWrong closed 7 years ago
@FlowerWrong I tried to chain gotun2socks with shadowsocks-csharp and It works. My test with shadowsocks-libev failed because shadowsocks-libev seems closing the corresponding socks connection of UDP session prematurely. I don't know how UDP relay of shadowsocks python version works. What do you mean by "conversion it to domain itself" ?
conversion it to domain itself
This means fake ip address. Like surge. When dns query for gfw domain, eg google.com, it will reply a fake ip, eg, 10.0.0.133
. But I do not see you handle that.
I don't distinguish DNS of gfw-blocked domains from other DNS queries. You need to setup system DNS to use a resolver accessible by your remote server, like 8.8.8.8, then all DNS queries will be forwarded to the socks proxy using SOCKS5's UDP Associate.
When I use the shadowsocks-libev version ss-local with udp relay. it worked for all. But when I use the python version shadowsocks with udp relay, it not worked for contaminated DNS domain, eg www.google.com. Sense shadowsocks-libev handles the DNS map, and conversion it to domain it self. like 5.6.7.8 -> google.com. I should sure it later.
So it is like
socks5 udp: ip -> domain socks5 connect: domain -> ip