DNSCloak for iOS

Related tags

Networking dnscloak
Overview

DNSCloak for iOS

iOS GUI and wrapper for dnscrypt-proxy 2.

Uses Apache Cordova as app platform & Framework7 as UI.

Available on the App Store.

Master Branch

This branch works with Xcode 10.0 and supports iOS 10.0+.

Build Instructions for Master

  1. Install the latest Xcode developer tools from Apple.
  2. Install Node.js & npm.
  3. Install golang. 1.12+ is required for TLS 1.3 support.
  4. Clone the repository:
git clone https://github.com/s-s/dnscloak.git
  1. Pull in the project dependencies:
cd dnscloak
npm install && npm install --only=dev
  1. Build framework, (re)build www folder for cordova and prepare project for Xcode:
npm run build
  1. Open platforms/ios/DNSCryptApp.xcworkspace in Xcode.
  2. Build the DNSCryptApp scheme.
Comments
  • Unable to connect to any DNS server

    Unable to connect to any DNS server

    I do use this APP everyday because to avoid my government shitty DNS resolver but today I found that it stopped working.

    When I click start, it just never connects Reading the log I think the fault is at the list file

    Here’s an error log I got:

    
    [2020-06-22 01:19:27] [CRITICAL] Unable to use source [public-resolvers]: [Multiple stamps for server [faelix-ch-ipv4] in source from [[https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v2/public-resolvers.md]]]
    [2020-06-22 01:19:27] [FATAL] No servers configured
    
    

    Thank you so much if you can fix this

    opened by haru1945 6
  • VPN fails to start on iOS 15.1 betas

    VPN fails to start on iOS 15.1 betas

    DNSCloak fails to start its VPN service on all iOS 15.1 betas so far. It just stays in “Starting” state, but never actually connects.

    53097302-4340-49C1-911F-E0DE2D9AA8DC

    The work-around so far for me has been to move to Blokada.

    opened by tomayac 5
  • Doesn't start anymore

    Doesn't start anymore

    For no apparent reason, DNSCloak no longer starts. And this on 2 different devices. Problem exists since yesterday. I have not changed anything in the settings. Suddenly nothing worked anymore. What can I do?

    PXL_20210627_113602644 MP

    opened by Woelkchen80 4
  • dnscloak does not change dns servers, this must be done manually

    dnscloak does not change dns servers, this must be done manually

    When de dnscloak dns service is started it does not change the devices dns settings to 127.0.0.1 from the dnscloak dns service. Without this the dnscloak dns service is not used.

    opened by gitthehubs 3
  • Support for query_meta?

    Support for query_meta?

    Trying to add query_meta in the config file, but it seems doing so makes it so the vpn fails to start. I can't seem to get it to output any logs either, even on debug setting.

    opened by eterry1388 3
  • platforms/ios/DNSCryptApp/config.xml file missing?

    platforms/ios/DNSCryptApp/config.xml file missing?

    Hi,

    I tried to compile DNSCloak, but it stopped here:

    > [email protected] prepare:dev /Users/j/src/dnscloak
    > cordova prepare ios
    
    Unhandled error. ('Parsing /Users/j/src/dnscloak/platforms/ios/DNSCryptApp/config.xml failed')
    

    And sure enough, there is no config.xml file in this directory.

    Is it expected?

    Thanks in advance.

    opened by jedisct1 3
  • Testflight dnsCloak expired 26/10/20

    Testflight dnsCloak expired 26/10/20

    Hi, please update the testflight for dnsCloak. It completly stopped working and one had to fall back to the AppStore version with the old dnscrypt version (e.g. no CNAME filtering).

    Thanks in advance

    opened by privacy-advo 2
  • Support iOS DNS settings without a VPN profile

    Support iOS DNS settings without a VPN profile

    As iOS 14 supports encrypted DNS without creating a VPN profile and it can be used together with a VPN (when VPN is disconnected, the DNS app is returned to), I think DNSCloak should support it.

    The native DNS settings also show indication when current network is blocking connection to the server and it doesn't show a logo on the status bar (unlike the constant [VPN].

    opened by Mikaela 2
  • Feature request: auto-reloaded blacklist

    Feature request: auto-reloaded blacklist

    Thx for the app; it is very useful. As I understand, there is currently only a manual way to add a blacklist file. Could the functionality be extended to automatically refresh it either via a link (i.e. I would specify a link to file like this https://download.dnscrypt.info/blacklists/domains/mybase.txt)? I think right now I have to manually re-add it to DNSCloak every time the list changes.

    opened by fantom-x 2
  • “Hide VPN Icon in Statusbar” gone in latest update (2.2.2)

    “Hide VPN Icon in Statusbar” gone in latest update (2.2.2)

    The toggle for “showIcon” has been removed from the UI for some reason. This bug has seemed to happen after the 2.2.2 update. I tried adding “showIcon = false” to the config, but that just gives me a unsupported key error.

    opened by frontiergd 1
  • ios 14.5 blacklist not working

    ios 14.5 blacklist not working

    Whenever i use it on ios 14.5 i am still getting ad s when using many diffrent ad black lists files and preset dns on the app when it would work on all previous versions

    opened by technogrady 1
  • DNSCloak is not listed in Background app refresh

    DNSCloak is not listed in Background app refresh

    I always see dnscloak vpn icon being refreshed if I wake it up from sleep and change from wifi to cell or vice versa, shouldn't dnscloak stay in the background like other vpn app, does this delay notification at all? Should dnscloak be listed in background app refresh so that it can stays on?

    opened by privacyonly 0
  • Works fine on Wi-Fi, but stops working on cellular

    Works fine on Wi-Fi, but stops working on cellular

    I have DNSCloak 2.2.2 installed on iOS 15.3 beta (build 19D5026g) and it works perfectly fine on Wi-Fi, but doesn't let network traffic through on cellular. I have Private Relay off. The VPN starts flawlessly and the "VPN" symbol appears as usual. The logs show the DNS requests to go through or be blocked as expected, but all apps including Safari think they are offline. What could be the reason for this? Thanks for any ideas!

    opened by tomayac 7
  • dnscloak (29.12.2019) : can't connect to github.com

    dnscloak (29.12.2019) : can't connect to github.com

    Hi,

    using my iphone (15.2) I cannot connect to some websites for example:

    • duckduckgo.com
    • github.com

    if I am using mobile data and dnscloak (29.12.2019).

    When I turn dnscloak off I can see the website.

    When I use my home wifi it work with dnscloak on and off I can see the website.

    I configured dnscloak to use the "altername" resolver for this, but this does not seem to be relevant.

    The log file says:

    [2021-12-22 14:34:43] 127.0.0.1 lb._dns-sd._udp.1.0.0.192.in-addr.arpa PTR NXDOMAIN 229ms altername [2021-12-22 14:34:43] 127.0.0.1 lb._dns-sd._udp.0.2.0.192.in-addr.arpa PTR NXDOMAIN 244ms altername [2021-12-22 14:34:44] 127.0.0.1 mediandr-a.akamaihd.net HTTPS PASS 198ms altername [2021-12-22 14:34:44] 127.0.0.1 apple.com AAAA PASS 204ms altername [2021-12-22 14:34:45] 127.0.0.1 a1101.w4.akamai.net HTTPS PASS 655ms altername [2021-12-22 14:34:45] 127.0.0.1 ipv4only.arpa AAAA PASS 707ms altername [2021-12-22 14:34:45] 127.0.0.1 mediandr-a.akamaihd.net AAAA PASS 183ms altername [2021-12-22 14:34:45] 127.0.0.1 a1101.w4.akamai.net AAAA PASS 185ms altername [2021-12-22 14:34:47] 127.0.0.1 mediandr-a.akamaihd.net AAAA PASS 2886ms altername [2021-12-22 14:34:47] 127.0.0.1 github.com HTTPS PASS 313ms altername [2021-12-22 14:34:47] 127.0.0.1 github.com AAAA PASS 438ms altername

    and:

    [2021-12-22 14:34:43] [NOTICE] dnscrypt-proxy 2.0.44 [2021-12-22 14:34:43] [NOTICE] Firefox workaround initialized [2021-12-22 14:34:43] [INFO] Current reachability is [WR -t-----] [2021-12-22 14:34:43] [INFO] Waiting for available resolvers check. [2021-12-22 14:34:43] [DEBUG] Refreshing certificates [2021-12-22 14:34:43] [DEBUG] [altername] fetch DNSCrypt server info - start [2021-12-22 14:34:43] [DEBUG] [altername] public key retrieval succeeded [2021-12-22 14:34:43] [NOTICE] [altername] OK (DNSCrypt) - rtt: 138ms [2021-12-22 14:34:43] [DEBUG] [altername] refresh DNSCrypt server info - OK [2021-12-22 14:34:43] [NOTICE] Server with the lowest initial latency: altername (rtt: 138ms) [2021-12-22 14:34:43] [NOTICE] dnscrypt-proxy is ready - live servers: 1 [2021-12-22 14:34:43] [INFO] Found available resolvers, tell iOS we are ready [2021-12-22 14:34:43] [DEBUG] clients count: 1 [2021-12-22 14:34:43] [DEBUG] Using candidate [altername] RTT: 138 [2021-12-22 14:34:43] [DEBUG] Handling query for [lb._dns-sd._udp.1.0.0.192.in-addr.arpa] [2021-12-22 14:34:43] [DEBUG] clients count: 2 [2021-12-22 14:34:43] [DEBUG] Using candidate [altername] RTT: 138 [2021-12-22 14:34:43] [DEBUG] Handling query for [lb._dns-sd._udp.0.2.0.192.in-addr.arpa] [2021-12-22 14:34:44] [DEBUG] clients count: 1 [2021-12-22 14:34:44] [DEBUG] clients count: 2 [2021-12-22 14:34:44] [DEBUG] Using candidate [altername] RTT: 154 [2021-12-22 14:34:44] [DEBUG] Handling query for [mediandr-a.akamaihd.net] [2021-12-22 14:34:44] [DEBUG] clients count: 3 [2021-12-22 14:34:44] [DEBUG] Using candidate [altername] RTT: 154 [2021-12-22 14:34:44] [DEBUG] Handling query for [mediandr-a.akamaihd.net] [2021-12-22 14:34:44] [DEBUG] Using candidate [altername] RTT: 154 [2021-12-22 14:34:44] [DEBUG] Handling query for [apple.com] [2021-12-22 14:34:44] [DEBUG] clients count: 3 [2021-12-22 14:34:44] [DEBUG] Using candidate [altername] RTT: 148 [2021-12-22 14:34:44] [DEBUG] Handling query for [a1101.w4.akamai.net] [2021-12-22 14:34:44] [DEBUG] clients count: 3 [2021-12-22 14:34:44] [DEBUG] Using candidate [altername] RTT: 145 [2021-12-22 14:34:44] [DEBUG] Handling query for [ipv4only.arpa] [2021-12-22 14:34:45] [DEBUG] clients count: 2 [2021-12-22 14:34:45] [DEBUG] Using candidate [altername] RTT: 308 [2021-12-22 14:34:45] [DEBUG] Handling query for [mediandr-a.akamaihd.net] [2021-12-22 14:34:45] [DEBUG] clients count: 2 [2021-12-22 14:34:45] [DEBUG] Using candidate [altername] RTT: 279 [2021-12-22 14:34:45] [DEBUG] Handling query for [a1101.w4.akamai.net] [2021-12-22 14:34:46] [DEBUG] [altername] Retry on timeout [2021-12-22 14:34:46] [DEBUG] [altername] Retry over TCP after UDP timeouts [2021-12-22 14:34:47] [DEBUG] clients count: 1 [2021-12-22 14:34:47] [DEBUG] Using candidate [altername] RTT: 510 [2021-12-22 14:34:47] [DEBUG] clients count: 2 [2021-12-22 14:34:47] [DEBUG] Using candidate [altername] RTT: 510 [2021-12-22 14:34:47] [DEBUG] Handling query for [github.com] [2021-12-22 14:34:47] [DEBUG] Handling query for [github.com] [2021-12-22 14:36:05] [DEBUG] clients count: 2 [2021-12-22 14:36:05] [DEBUG] clients count: 1 [2021-12-22 14:36:05] [DEBUG] Using candidate [altername] RTT: 446 [2021-12-22 14:36:05] [DEBUG] Using candidate [altername] RTT: 446 [2021-12-22 14:36:05] [DEBUG] Handling query for [api.revenuecat.com] [2021-12-22 14:36:05] [DEBUG] Handling query for [api.revenuecat.com] [2021-12-22 14:36:05] [DEBUG] clients count: 3 [2021-12-22 14:36:05] [DEBUG] clients count: 4 [2021-12-22 14:36:05] [DEBUG] Using candidate [altername] RTT: 446 [2021-12-22 14:36:05] [DEBUG] Handling query for [inappcheck.itunes.apple.com] [2021-12-22 14:36:05] [DEBUG] Using candidate [altername] RTT: 446 [2021-12-22 14:36:05] [DEBUG] Handling query for [inappcheck.itunes.apple.com] [2021-12-22 14:36:05] [DEBUG] clients count: 4 [2021-12-22 14:36:05] [DEBUG] Using candidate [altername] RTT: 386 [2021-12-22 14:36:05] [DEBUG] Handling query for [e69896.dscapi6.akamaiedge.net] [2021-12-22 14:36:06] [DEBUG] clients count: 3 [2021-12-22 14:36:06] [DEBUG] Using candidate [altername] RTT: 299 [2021-12-22 14:36:06] [DEBUG] clients count: 4 [2021-12-22 14:36:06] [DEBUG] Using candidate [altername] RTT: 299 [2021-12-22 14:36:06] [DEBUG] Handling query for [api.revenuecat.com] [2021-12-22 14:36:06] [DEBUG] Handling query for [api.revenuecat.com] [2021-12-22 14:36:06] [DEBUG] clients count: 5 [2021-12-22 14:36:06] [DEBUG] Using candidate [altername] RTT: 299 [2021-12-22 14:36:06] [DEBUG] clients count: 6 [2021-12-22 14:36:06] [DEBUG] Using candidate [altername] RTT: 299 ... [2021-12-22 14:36:08] [DEBUG] [altername] Retry on timeout [2021-12-22 14:36:08] [DEBUG] [altername] Retry over TCP after UDP timeouts [2021-12-22 14:36:08] [DEBUG] [altername] Retry on timeout [2021-12-22 14:36:08] [DEBUG] [altername] Retry over TCP after UDP timeouts

    Is there a workaround/solution/explanation for this?

    opened by soundart 0
  • ipad: vpn connection keeps reconnecting after turning off wifi

    ipad: vpn connection keeps reconnecting after turning off wifi

    When I turn off the wifi connection on an ipad the dnscloak vpn connection keeps trying to reconnect. I turn it off manually.

    Same on iphone without sim card or no cellular connection, when wifi is turned of the dnscloak vpn keeps trying to reconnect.

    opened by gitthehubs 0
Owner
Sergey
Sergey
Approov-service-ios-swift-grpc - Approov service layer for iOS clients using GRPC

Approov Service for GRPC A wrapper for the Approov SDK to enable easy integratio

Approov Integration Examples 0 Jan 21, 2022
Approov Integration Examples 0 Jan 26, 2022
iONess is HTTP Request Helper for iOS platform used by HCI iOS App

iONess iONess (iOS Network Session) is HTTP Request Helper for the iOS platform used by Home Credit Indonesia iOS App. It uses Ergo as a concurrent he

OSFE Homecredit Indonesia 1 Mar 28, 2022
🌸 Powerful Codable API requests builder and manager for iOS.

This lib is about network requests with blackjack, roulette and craps! Using it you will be able to convert your massive API layer code into an awesom

CodyFire 251 Jan 8, 2023
Easy to use OAuth 2 library for iOS, written in Swift.

Heimdallr Heimdallr is an OAuth 2.0 client specifically designed for easy usage. It currently supports the resource owner password credentials grant f

trivago N.V. 628 Oct 17, 2022
A lightweight, one line setup, iOS / OSX network debugging library! 🦊

Netfox provides a quick look on all executed network requests performed by your iOS or OSX app. It grabs all requests - of course yours, requests from

Christos Kasketis 3.4k Dec 28, 2022
OAuth2 framework for macOS and iOS, written in Swift.

OAuth2 OAuth2 frameworks for macOS, iOS and tvOS written in Swift 5.0. ⤵️ Installation ?? Usage ?? Sample macOS app (with data loader examples) ?? Tec

Pascal Pfiffner 1.1k Jan 8, 2023
Swift based OAuth library for iOS

OAuthSwift Swift based OAuth library for iOS and macOS. Support OAuth1.0, OAuth2.0 Twitter, Flickr, Github, Instagram, Foursquare, Fitbit, Withings, L

OAuthSwift 3.1k Jan 6, 2023
A simple OAuth library for iOS with a built-in set of providers

SwiftyOAuth is a small OAuth library with a built-in set of providers and a nice API to add your owns. let instagram: Provider = .instagram(clientID:

Damien 477 Oct 15, 2022
🌏 A zero-dependency networking solution for building modern and secure iOS, watchOS, macOS and tvOS applications.

A zero-dependency networking solution for building modern and secure iOS, watchOS, macOS and tvOS applications. ?? TermiNetwork was tested in a produc

Bill Panagiotopoulos 90 Dec 17, 2022
iOS network debugging, like a wizard 🧙‍♂️

Start debugging iOS network calls like a wizard, without extra code! Wormholy makes debugging quick and reliable. What you can do: No code to write an

Paolo Musolino 2.1k Jan 8, 2023
Websockets in swift for iOS and OSX

Starscream is a conforming WebSocket (RFC 6455) library in Swift. Features Conforms to all of the base Autobahn test suite. Nonblocking. Everything ha

Dalton 7.5k Jan 4, 2023
SwiftSoup: Pure Swift HTML Parser, with best of DOM, CSS, and jquery (Supports Linux, iOS, Mac, tvOS, watchOS)

SwiftSoup is a pure Swift library, cross-platform (macOS, iOS, tvOS, watchOS and Linux!), for working with real-world HTML. It provides a very conveni

Nabil Chatbi 3.7k Dec 28, 2022
The civilized way to write REST API clients for iOS / macOS

The elegant way to write iOS / macOS REST clients Drastically simplifies app code by providing a client-side cache of observable models for RESTful re

Bust Out 2.2k Nov 20, 2022
Fast Websockets in Swift for iOS and OSX

SwiftWebSocket Conforming WebSocket (RFC 6455) client library for iOS and Mac OSX. SwiftWebSocket passes all 521 of the Autobahn's fuzzing tests, incl

Josh 1.5k Dec 28, 2022
MQTT for iOS and macOS written with Swift

CocoaMQTT MQTT v3.1.1 client library for iOS/macOS/tvOS written with Swift 5 Build Build with Xcode 11.1 / Swift 5.1 Installation CocoaPods Install us

EMQ X MQTT Broker 1.4k Jan 1, 2023
Socket framework for Swift using the Swift Package Manager. Works on iOS, macOS, and Linux.

BlueSocket Socket framework for Swift using the Swift Package Manager. Works on iOS, macOS, and Linux. Prerequisites Swift Swift Open Source swift-5.1

Kitura 1.3k Dec 26, 2022
WKZombie is an iOS/OSX web-browser without a graphical user interface.

WKZombie is a Swift framework for iOS/OSX to navigate within websites and collect data without the need of User Interface or API, also known as Headless browser. It can be used to run automated tests / snapshots and manipulate websites using Javascript.

Mathias Köhnke 1.1k Dec 16, 2022
Minimalistic Swift HTTP request agent for iOS and OS X

Agent Table of Contents Introduction Usage HTTP Verbs Overloading Method Chaining Response Closure Verbs Methods NSMutableURLRequest Contributing Lice

null 589 Jun 29, 2022