xjasonlyu / tun2socks

tun2socks - powered by gVisor TCP/IP stack
https://github.com/xjasonlyu/tun2socks/wiki
GNU General Public License v3.0
2.85k stars 404 forks source link

[Feature] [Bounty $100] FakeDNS #293

Closed KnockKnockWho closed 4 months ago

KnockKnockWho commented 10 months ago

Unfortunately, the use of tun2socks requires users to rely on third-party DNS resolvers, even when UDP is supported. At the risk of being a duplicate of #287, this feature request specifically requests to bring back the "fakedns" feature, such that DNS is resolved by the proxy.

I have specifically created this issue to be able to assign a bounty. I offer 50 USD to anyone that gets a pull request with that functionality merged through Bountysource.

Direct link to the bounty: https://app.bountysource.com/issues/123832281-feature-fakedns

The bounty is not too much, but there are forks lying around that already implement this feature. Their code might just require some cleanup.

xjasonlyu commented 10 months ago

Hoping someone can submit a pr for this feature. 😉

I currently don't have time for it.

KnockKnockWho commented 10 months ago

I currently don't have time for it.

Same here.

I specifically created this feature request for speeding this up by posting a bounty, that's why I also opened this duplicate.

You are also welcome to claim the bounty.

Vayras commented 10 months ago

Hi @KnockKnockWho I'm new to learning Go-lang and I wish to try and solve this issue I personally do not care about the bounty can you please tell me what files and the workflow associated with this so I can perform a cleanup or fix this?

KnockKnockWho commented 10 months ago

https://github.com/blechschmidt/tun2socks/commit/894f08719ebd047d1dc50bce72c3ab24c996a06c

xjasonlyu commented 10 months ago

I would recommend to implement this functionality based on Clash's fake dns module.

ghost commented 10 months ago
KnockKnockWho commented 10 months ago

If someone claims the bounty and should there be any issues with Bountysource, please do not hesitate to let me know as I will a) make sure that you receive the bounty through other means (preferrably PayPal) b) try to get the money I paid to BountySource back through PayPal's buyer protection.

ghost commented 10 months ago

b) try to get the money I paid to BountySource back through PayPal's buyer protection.

There a thousands of $ unpaid since months, so you should use buyer protection now.

fbion commented 9 months ago

Clash I would recommend to implement this functionality based on Clash.Meta's fake dns module. 我建议基于 Clash.Meta 的 fake dns 模块来实现此功能。

KnockKnockWho commented 8 months ago

Given that the BountySource website is no longer online, I have opened a dispute with PayPal. However, I will stand by my word and anyone who gets this merged will get the bounty, which I am increasing to 100 USD now.

planetoryd commented 6 months ago

I have implemented tun2socks (with virtual DNS) and netns containerization feature in https://github.com/planetoryd/nsproxy

The program is in full Rust.

github-actions[bot] commented 4 months ago

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days