Code Monkey home page Code Monkey logo

tunproxy's People

Contributors

dkwiebe avatar likfe avatar raise-isayan avatar simontrek avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tunproxy's Issues

can include a dns redirect choice in vpn

i live in country in dns restricted.i use your app fist reserve dns in local,so some website i can't acess,but i have apk can listen the port to forward dns to dns over HTTPS query without vpn
if can ,how to begin to code?or just you do it?
thanks for your code,now i can freely surfer on my unsafe android device.except Google ,YouTube.

Connect http proxy failed

tun.proxy W/Thread-3: type=1400 audit(0.0:1506): avc: denied { read } for name="tcp" dev="proc" ino=4026532109 scontext=u:r:untrusted_app:s0:c250,c256,c512,c768 tcontext=u:object_r:proc_net_tcp_udp:s0 tclass=file permissive=0

How to support local DNS

I have started a DNS server on port 5003 locally. However, Builder.addDnsServer doesn't support 127.0.0.1, nor does it support custom ports.

So, I used the following:

String tun_dns = "172.19.0.2";
builder.addDnsServer(tun_dns);
builder.addRoute(tun_dns, 32);

But I'm not sure how to modify udp.c to correctly handle DNS requests.

Why it is excluding own pacakage name from Filter VPN?

for (final PackageInfo pi : installedPackages) {
if (isCancelled()) continue;
// exclude self package
if (pi.packageName.equals(MyApplication.getInstance().getPackageName())) {
continue;
}
boolean checked = packageFragment.mAllPackageInfoMap.containsKey(pi.packageName) ? packageFragment.mAllPackageInfoMap.get(pi.packageName) : false;
installedPackageMap.put(pi.packageName, checked);
}

I saw this code from SettingsActivity.
As you see, my application package is excluding...
I wanna include own application package, too because I want to integrate this tun proxy app to another app.
I checked C Code. It was using the Pipe communication.
Do you have any solution? or it is not possible?
I hope you let me know. thanks

Hth

After using TunProxy I got the error: device not found problem. ADB does not control the emulator

License and copyright violation

The source code of NetGuard is being used and both the license and copyright are missing.

In fact the copyright was stripped from the source code filles.

If this isn't fixed within three days, I will report this violation to GitHub.

how create .apk?

Perfect description! This tool that I need!
But, how I make .apk for install on my android?

How to support https request

As the title,I have visit https://www.baidu.com but it report error for" Network is unreachable" , errno is 101, But the http request is ok。

D TunProxy-Native: PKT0: 0x60 D TunProxy-Native: TCP S fd00:1:fd00:1:fd00:1:fd00:1/41516 > 240e:e9:6002:15c:0:ff:b015:146f/443 seq 3048175580 ack 0 data 0 win 65535 uid 1010094 I TunProxy-Native: session is null, create new and send SYN I TunProxy-Native: TCP S fd00:1:fd00:1:fd00:1:fd00:1/41516 > 240e:e9:6002:15c:0:ff:b015:146f/443 seq 3048175580 ack 0 data 0 win 65535 uid 1010094 new session mss 9940 ws 8 window 16776960 W TunProxy-Native: TCP6 redirect to 240e:e9:6002:15c:0:ff:b015:146f/443 D TunProxy-Native: Socket connecting TCP-V6: 240e:e9:6002:15c:0:ff:b015:146f:443 len:28 E TunProxy-Native: Socket connect error 101: Network is unreachable

Two question is:

  1. Why https used ip V6 when I start the tunproxy
  2. Why the reuqest report error for erno 101

What can I do to fix the https request, I just need enable to HTTPS request success and responce is OK, Any suggest for me is very kindly. thanks

SSL decrypt not working with Fiddler

As far as I know, Fiddler generates certificates using hostname in CONNECT message, rather than from SNI.
Now when we send CONNECT, we may have not retrieved the hostname from SNI, making the certificate unusable. (i.e. CN=some IP address)
I suggest CONNECT be delayed to the Client Hello message. A quick fix can be:

if (cur->tcp.connect_sent == TCP_CONNECT_NOT_SENT) {
if (len > 0) {
char buffer[512];
sprintf(buffer, "CONNECT %s:443 HTTP/1.0\r\n\r\n", cur->tcp.hostname);

Change if (len > 0) to if (len > 0 && datalen > 0).
This assumes we got some data before CONNECT, which is likely to be Client Hello.

BTW thanks for the application! It helped me a lot.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.