2015-10-24 19:59:20 +02:00
# NetGuard
2015-10-24 20:01:55 +02:00
2015-11-06 15:18:14 -08:00
*NetGuard* provides a simple way to block access to the internet - no root required.
2015-11-15 21:18:48 +02:00
Applications can individually be allowed or denied access to your Wi-Fi and/or mobile connection.
2015-10-29 11:03:14 +01:00
Blocking access to the internet can help:
2015-11-01 01:40:27 -07:00
* reduce your data usage
2015-10-29 11:03:14 +01:00
* save your battery
* increase your privacy
2015-10-25 13:02:25 +01:00
2015-11-18 18:48:11 +01:00
NetGuard is the first free and open source no-root firewall for Android.
2015-11-07 19:11:43 +01:00
2015-11-17 08:25:29 +01:00
Features:
2015-10-25 14:21:14 +01:00
* No root required
* Simple to use
2015-10-26 03:12:35 -07:00
* Open source
2015-10-25 16:16:20 +01:00
* No extra battery usage
2015-11-05 13:14:34 +01:00
* No bandwidth reduction
2015-10-25 14:21:14 +01:00
* No calling home
2015-10-26 03:12:35 -07:00
* No tracking or analytics
2015-10-25 14:21:14 +01:00
* No ads
2015-11-08 10:14:56 +01:00
* No internet permission required
2015-10-26 13:43:37 +01:00
* IPv4/IPv6 TCP/UDP supported
2015-11-09 12:23:06 +01:00
* Optionally allow when screen on
2015-11-09 13:29:06 +02:00
* Optionally block when roaming
2015-11-09 12:23:06 +01:00
* Optionally block system applications
2015-12-12 14:41:12 +01:00
* Graphical network speed display
2015-11-08 14:34:00 +01:00
* Material design
2015-10-25 14:21:14 +01:00
2015-11-29 13:26:46 +01:00
There is no other no-root firewall offering all these features.
Most other firewall solutions will use extra battery and reduce the overall network speed.
2015-10-29 07:46:05 +01:00
Most of these features are the result of sending selected traffic to a sinkhole, instead of filtering all internet traffic.
2015-11-01 01:40:27 -07:00
This means that advanced features, like address based filtering (needed for ad blocking), traffic logging, and on-demand configuration, are not possible.
2015-10-29 07:46:05 +01:00
Routing selected traffic into a sinkhole relies on an API introduced in Android 5.0 (Lollipop),
2015-11-06 15:18:14 -08:00
therefore older Android versions unfortunately cannot be supported.
2015-10-29 07:46:05 +01:00
2015-11-17 08:25:29 +01:00
Since NetGuard has no internet permission, you know your internet traffic is not being sent anywhere.
2015-12-27 16:21:45 +01:00
Requirements:
* Android 5.0 or later
2016-01-09 23:50:04 +01:00
* A [compatible device ](#compatibility )
2015-12-27 16:21:45 +01:00
2015-11-17 08:25:29 +01:00
Downloads:
* [GitHub ](https://github.com/M66B/NetGuard/releases )
2015-11-29 17:50:20 +02:00
* [On Google Play ](https://play.google.com/store/apps/details?id=eu.faircode.netguard ) (stable)
* [On Google Play ](https://play.google.com/apps/testing/eu.faircode.netguard ) (beta)
2015-12-25 21:59:32 +02:00
* [F-Droid ](https://f-droid.org/repository/browse/?fdfilter=netguard&fdid=eu.faircode.netguard ) (unsupported)
2015-11-17 08:25:29 +01:00
* [XDA Labs App ](http://forum.xda-developers.com/android/apps-games/labs-t3241866 ) ([web page ](https://labs.xda-developers.com/store/app/eu.faircode.netguard ))
Usage:
2015-11-17 12:51:40 +02:00
2015-10-25 14:06:16 +01:00
* Enable the firewall using the switch in the action bar
2015-11-15 21:18:48 +02:00
* Allow/deny Wi-Fi/mobile internet access using the icons along the right side of the application list
2015-10-25 13:02:25 +01:00
2015-11-29 11:43:07 +01:00
You can use the settings menu to change from black list to white list mode.
2015-11-29 08:24:20 +01:00
* Orange = denied internet access
* Green = allowed internet access
2015-11-17 08:25:29 +01:00
< img src = "screenshot1.png" width = "320" height = "569" / >
2015-10-25 14:21:14 +01:00
2015-11-17 08:25:29 +01:00
< img src = "screenshot2.png" width = "320" height = "569" / >
2015-10-25 14:21:14 +01:00
2015-10-31 10:01:28 +01:00
Compatibility
-------------
Devices / ROMs with a broken VPN implementation:
2016-01-06 16:55:51 +01:00
* Allwinner™ bt1077 / Android ? (reported in the Google Play™ store app) (all traffic blocked)
2015-11-25 21:11:51 +01:00
* Asus™ ZenFone 2 / Android 5.0.2, [reported on XDA ](http://forum.xda-developers.com/showpost.php?p=63619542&postcount=121 ) (all traffic blocked)
2015-11-29 17:50:20 +02:00
* Asus™ ZenFone 4 / Android 5.0 (reported in the Google Play™ store app) (all traffic blocked)
2015-12-01 19:14:25 +01:00
* Asus™ ZenFone 5 / Android 5.0 (reported through Google Play™ store app feedback) (VPN prepare fails)
2015-11-19 17:42:04 +01:00
* Asus™ ZenPad S 8.0 / Android 5.0, [reported on Github ](https://github.com/M66B/NetGuard/issues/168 ) (all traffic blocked)
2015-11-29 17:50:20 +02:00
* BQ™ Aquaris E5/M5 / Android 5.0.2/5.0 (reported in the Google Play™ store app) (all traffic blocked)
2015-11-17 08:25:29 +01:00
* Lenovo™ Yoga Tablet Pro-1380L / 2 Pro / Android 5.0.1, [reported on XDA ](http://forum.xda-developers.com/showpost.php?p=63784102&postcount=278 ) (all traffic blocked)
2015-12-01 19:14:25 +01:00
* LGE G Vista / Android 5.0 (reported through Google Play™ store app feedback) (VPN establish fails)
2016-01-14 07:18:06 +01:00
* Marshall London / Android 5.02, [reported on XDA ](http://forum.xda-developers.com/showpost.php?p=64778998&postcount=885 ) (all traffic blocked)
2015-12-06 09:48:27 +01:00
* Samsung™ Galaxy A3 / Android 5.0.2, [reported on XDA ](http://forum.xda-developers.com/showpost.php?p=64142621&postcount=509 ) (all traffic blocked)
2015-11-15 12:14:50 +02:00
* Samsung™ Galaxy A5 / Android 5.0.2, [reported on Github ](https://github.com/M66B/NetGuard/issues/20 ) (all traffic blocked)
2015-12-01 19:14:25 +01:00
* Samsung™ Galaxy Note3 / Android 5.0 (reported through Google Play™ store app feedback) (VPN prepare fails)
2015-12-23 08:03:23 +01:00
* Samsung™ Galaxy Note4 / Android 5.1.1 (reported through Google Play™ store app feedback and on XDA) (telephone unresponsive)
2015-12-08 08:40:07 +01:00
* Samsung™ Galaxy Note5 / Android ? (reported through Google Play™ store app feedback and on XDA) (?)
2016-01-06 11:31:05 +01:00
* Samsung™ Galaxy S5 / Android ? [reported on Github ](https://github.com/M66B/NetGuard/issues/223 ) (VPN start fails on boot)
2016-01-06 11:40:16 +01:00
* Samsung™ Galaxy Tab S4 / Android ? (reported in the Google Play™ store app) (VPN start fails on boot)
2015-11-29 17:50:20 +02:00
* Sony™ Xperia™ M4 Aqua Dual / Android 5.0 (reported in the Google Play™ store app) (all traffic blocked)
2015-11-18 15:35:51 +01:00
* Symphony Teleca™ / Micromax™ Canvas Knight 2 E471 / Android 5.0.2 (reported by e-mail) (VPN establish fails)
2015-11-29 17:50:20 +02:00
* TCT Mobile Limited™ (Alcatel) 6039Y / Android / Android 5.0 (reported in the Google Play™ store app) (all traffic blocked)
* TCT Mobile Limited™ (Alcatel) OneTouch Idol 3 / Android 5.0.2 (reported in the Google Play™ store app) (all traffic blocked)
2015-11-14 18:16:25 +01:00
2015-11-02 19:40:07 +01:00
NetGuard will crash when the package *com.android.vpndialogs* has been removed or otherwise is unavailable.
2015-10-31 10:01:28 +01:00
2015-12-19 19:34:19 +01:00
Wi-Fi/USB tethering and Wi-Fi will not work when NetGuard is enabled due to a bug in Android ([issue ](https://github.com/M66B/NetGuard/issues/42 )).
2015-11-17 08:36:26 +01:00
2015-11-25 09:05:20 +01:00
Unfortunately it is not possible to workaround any of these Android problems.
2015-11-03 10:44:34 +01:00
2015-11-17 08:25:29 +01:00
< a name = "FAQ" > < / a >
2015-10-26 03:12:35 -07:00
Frequently Asked Questions (FAQ)
--------------------------------
2015-10-25 13:13:52 +01:00
2015-11-29 11:43:07 +01:00
< a name = "FAQ0" > < / a >
[**(0) How do I use NetGuard?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ0 )
2015-10-25 13:13:52 +01:00
< a name = "FAQ1" > < / a >
2015-11-17 15:12:33 +01:00
[**(1) Can NetGuard completely protect my privacy?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ1 )
2015-10-25 13:13:52 +01:00
2015-10-25 14:25:42 +01:00
< a name = "FAQ2" > < / a >
2015-11-17 16:24:14 +02:00
[**(2) Can I use another VPN application while using NetGuard?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ2 )
2015-10-25 13:13:52 +01:00
2015-10-25 14:49:56 +01:00
< a name = "FAQ3" > < / a >
2015-11-17 15:12:33 +01:00
[**(3) Can I use NetGuard on any Android version?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ3 )
2015-10-25 14:49:56 +01:00
2015-10-25 16:36:14 +01:00
< a name = "FAQ4" > < / a >
2015-11-17 15:12:33 +01:00
[**(4) Will NetGuard use extra battery power?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ4 )
2015-10-25 16:36:14 +01:00
2015-10-26 17:47:31 +01:00
< a name = "FAQ5" > < / a >
2015-12-12 16:09:53 +01:00
[**(5) Can you add usage statistics?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ5 )< br />
[**(5) Can you add popups to allow/block applications?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ5 )< br />
2015-11-17 15:12:33 +01:00
[**(5) Can you add selective allowing/blocking applications/IP addresses?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ5 )
2015-10-25 16:36:14 +01:00
2015-10-30 13:32:59 +01:00
< a name = "FAQ6" > < / a >
2015-11-17 15:12:33 +01:00
[**(6) Will NetGuard send my internet traffic to an external (VPN) server?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ6 )
2015-10-30 13:32:59 +01:00
2015-11-01 07:13:18 +01:00
< a name = "FAQ7" > < / a >
2015-11-17 15:12:33 +01:00
[**(7) Why are applications without internet permission shown?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ7 )
2015-11-01 07:13:18 +01:00
2015-11-06 00:09:49 +02:00
< a name = "FAQ8" > < / a >
2015-11-29 17:50:20 +02:00
[**(8) What do I need to enable for the Google Play™ store app to work?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ8 )
2015-11-06 00:09:49 +02:00
2015-11-08 07:28:43 +01:00
< a name = "FAQ9" > < / a >
2015-11-17 16:24:14 +02:00
[**(9) Why is the VPN service being restarted?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ9 )
2015-11-08 07:28:43 +01:00
2015-11-08 13:18:16 +01:00
< a name = "FAQ10" > < / a >
2015-11-17 15:12:33 +01:00
[**(10) Will you provide a Tasker plug-in?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ10 )
2015-11-08 13:18:16 +01:00
2015-11-09 07:16:09 +01:00
< a name = "FAQ12" > < / a >
2015-11-17 15:12:33 +01:00
[**(12) Can you add on demand asking to block/allow access?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ12 )
2015-11-08 23:08:10 +02:00
2015-11-10 10:26:28 +01:00
< a name = "FAQ13" > < / a >
2015-11-17 15:12:33 +01:00
[**(13) How can I remove the ongoing NetGuard entry in the notification screen?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ13 )
2015-11-10 10:26:28 +01:00
2015-11-11 00:12:54 +02:00
< a name = "FAQ14" > < / a >
2015-11-17 15:12:33 +01:00
[**(14) Why can't I select OK to approve the VPN connection request?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ14 )
2015-11-11 00:12:54 +02:00
2015-11-13 09:49:19 +01:00
< a name = "FAQ15" > < / a >
2015-11-17 16:24:14 +02:00
[**(15) Why won't you support the F-Droid builds?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ15 )
2015-11-13 09:49:19 +01:00
2015-11-13 14:34:48 +01:00
< a name = "FAQ16" > < / a >
2015-11-17 15:12:33 +01:00
[**(16) Why are some applications shown dimmed?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ16 )
2015-11-13 14:34:48 +01:00
2015-11-14 13:26:57 +01:00
< a name = "FAQ17" > < / a >
2015-11-17 15:12:33 +01:00
[**(17) Why is NetGuard using so much memory?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ17 )
2015-11-14 13:26:57 +01:00
2015-11-14 19:40:29 +01:00
< a name = "FAQ18" > < / a >
2015-11-29 17:50:20 +02:00
[**(18) Why can't I find NetGuard in the Google Play™ store app?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ18 )
2015-11-14 19:40:29 +01:00
2015-11-16 11:08:12 +01:00
< a name = "FAQ19" > < / a >
2015-11-17 16:24:14 +02:00
[**(19) Why does aplication XYZ still have internet access?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ19 )
2015-11-16 11:08:12 +01:00
2015-11-17 08:33:40 +01:00
< a name = "FAQ20" > < / a >
2015-11-17 16:24:14 +02:00
[**(20) Can I Greenify/hibernate NetGuard?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ20 )
2015-11-17 08:33:40 +01:00
2015-11-29 11:43:07 +01:00
< a name = "FAQ21" > < / a >
[**(21) Does doze mode affect NetGuard?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ21 )
< a name = "FAQ22" > < / a >
2015-12-25 08:36:13 +01:00
[**(22) Can I tether / use Wi-Fi calling while using NetGuard?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ22 )
2015-11-29 11:43:07 +01:00
< a name = "FAQ24" > < / a >
2015-11-29 22:09:13 +02:00
[**(24) Can you remove the notification from the status bar?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ24 )
2015-11-29 11:43:07 +01:00
2015-12-26 08:34:18 +01:00
< a name = "FAQ25" > < / a >
[**(25) Can you add a 'select all'?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ25 )
2016-01-08 19:07:58 +01:00
< a name = "FAQ27" > < / a >
[**(27) How do I read the blocked traffic log?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ27 )
2015-12-27 16:14:46 +01:00
2016-01-09 16:38:07 +01:00
< a name = "FAQ28" > < / a >
[**(28) Why is Google connectivity services allowed internet access by default?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ28 )
2016-01-21 13:50:53 +01:00
< a name = "FAQ29" > < / a >
[**(29) Why do I get 'The item you requested is not available for purchase'?** ](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ29 )
2015-11-17 08:25:29 +01:00
Permissions
-----------
2016-01-29 18:42:54 +01:00
* INTERNET: to forward allowed traffic to the internet
2015-11-17 08:25:29 +01:00
* ACCESS_NETWORK_STATE: to check if the device is connected to the internet through Wi-Fi
2016-02-01 15:01:19 +01:00
* READ_PHONE_STATE ('*make and manage phone calls*'): to detect mobile network changes, see [here ](http://forum.xda-developers.com/showpost.php?p=64107371&postcount=489 ) for more details
2015-12-09 10:52:44 +01:00
* ACCESS_WIFI_STATE: to detect Wi-Fi network changes
2015-11-17 08:25:29 +01:00
* RECEIVE_BOOT_COMPLETED: to start the firewall when booting the device
* WAKE_LOCK: to reliably reload rules in the background on connectivity changes
2016-02-01 21:14:50 +01:00
* WRITE_EXTERNAL_STORAGE: to export settings on Android versions before 5.0 (Lollipop) (there is no need to grant this permission on later Android versions)
2015-11-17 08:25:29 +01:00
* com.android.vending.BILLING: to accept donations via in-app billing
2015-10-25 14:36:49 +01:00
Support
-------
2015-10-26 03:12:35 -07:00
* Questions: please [use this XDA-Developers forum thread ](http://forum.xda-developers.com/showthread.php?t=3233012 )
2015-11-06 15:18:14 -08:00
* Feature requests and bugs: please [create an issue on GitHub ](https://github.com/M66B/NetGuard/issues/new )
2015-10-25 14:36:49 +01:00
Please do not use GitHub for questions.
2015-10-25 13:02:25 +01:00
Contributing
------------
2015-10-26 09:06:39 +01:00
Translations:
* Translations to other languages are welcomed
2015-11-21 10:07:11 +01:00
* You can translate online [here ](https://crowdin.com/project/netguard/ )
* If your language is not listed, please send a message to marcel(plus)netguard(at)faircode(dot)eu
2015-10-26 09:06:39 +01:00
2015-11-04 21:32:07 +01:00
Current translations:
2016-01-30 21:55:31 +01:00
1. Arabic
1. Simplified Chinese
1. Czech
1. Danish
1. Dutch
2015-11-04 21:32:07 +01:00
1. English
2016-01-30 21:55:31 +01:00
1. French
1. German
1. Greek
1. Hungarian
1. Italian
1. Japanese
1. Korean
1. Polish
1. Portuguese/Brazilian
1. Romanian
1. Russian
1. Slovak
1. Spanish
1. Turkish
1. Ukrainian
2015-11-04 21:32:07 +01:00
2015-11-23 08:45:59 +01:00
You can see the actual status of all translations [here ](https://crowdin.com/project/netguard ).
2015-10-25 13:02:25 +01:00
Please note that you agree to the license below by contributing, including the copyright.
2015-11-01 08:20:58 +01:00
Attribution
-----------
NetGuard uses:
* [Picasso ](http://square.github.io/picasso/ )
* [Android Support Library ](https://developer.android.com/tools/support-library/index.html )
2015-10-25 13:02:25 +01:00
License
-------
[GNU General Public License version 3 ](http://www.gnu.org/licenses/gpl.txt )
Copyright (c) 2015 Marcel Bokhorst ([M66B ](http://forum.xda-developers.com/member.php?u=2799345 ))
All rights reserved
This file is part of NetGuard.
NetGuard is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your discretion) any later version.
NetGuard is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with NetGuard. If not, see [http://www.gnu.org/licenses/ ](http://www.gnu.org/licenses/ ).
2015-11-29 17:52:23 +02:00
*Android is a trademark of Google Inc. Google Play is a trademark of Google Inc*