raise-isayan / tunproxy Goto Github PK
View Code? Open in Web Editor NEWThis project forked from forbe/tun2http
Android VPN interceptor to send HTTP and HTTPS traffic to a proxy
This project forked from forbe/tun2http
Android VPN interceptor to send HTTP and HTTPS traffic to a proxy
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.
i need frequently change proxy 😂
Can proxy authentication native be added
The project is cool. But can you add lib net bare?
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
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.
With the current specifications, the following https protocols other than 443 port cannot be transferred.
I has import fiddler cert into android system, but https request still not working
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
After using TunProxy I got the error: device not found problem. ADB does not control the emulator
Allow/Disallow Application not work. the app uses only proxies for the whole android system when Allow/Disallow enable. Please fix it!
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.
Perfect description! This tool that I need!
But, how I make .apk for install on my android?
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:
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
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:
TunProxy/android_app/app/src/main/cpp/tcp.c
Lines 732 to 735 in d68818a
if (len > 0)
to if (len > 0 && datalen > 0)
.CONNECT
, which is likely to be Client Hello
.
BTW thanks for the application! It helped me a lot.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.