Proxy and DNS Server on iOS
Objective-C Objective-C++ C++ C HTML CMake Shell
Switch branches/tags
Clone or download
rickyzhang82 Remove unused constant variables which have conflicts with iOS 11 sdk.
Signed-off-by: Ricky Zhang <rickyzhang@gmail.com>
Latest commit 486198f Sep 20, 2017
Permalink
Failed to load latest commit information.
AncillaryCode Added support for all iOS device sizes & slightly prettier interface Aug 14, 2016
NSLogger Refactor DNS log message and log level. Jul 20, 2016
Resources Fix icon, cleanup code Aug 15, 2016
Tethering.xcodeproj Bump up to v1.7 release Aug 15, 2016
WebServer Remove NSLog. Jul 21, 2016
ttdnsd Remove unused constant variables which have conflicts with iOS 11 sdk. Sep 20, 2017
.gitignore Add xarchive to store ipa file Aug 13, 2015
COPYING.txt Init repo. Fix couple obj-c warnings. Resize iPhone 5 view size. Nov 3, 2013
ColorC.h Simplify UIColor RGB mapping function Aug 16, 2015
ColorC.mm Simplify UIColor RGB mapping function Aug 16, 2015
MOButton.h Refactor code to enable ARC. Nov 16, 2013
MOButton.mm Refactor code to enable ARC. Nov 16, 2013
MOGlassButton.h Refactor code to enable ARC. Nov 16, 2013
MOGlassButton.mm Fix icon, cleanup code Aug 15, 2016
Main.storyboard Added support for all iOS device sizes & slightly prettier interface Aug 14, 2016
README Bump up to v1.7 release Aug 15, 2016
SocksProxy.h Refactor code to enable ARC. Nov 16, 2013
SocksProxy.mm 1. Extract readRemoteReceiveNetwork method. Jul 25, 2016
SocksProxyController.h Added support for all iOS device sizes & slightly prettier interface Aug 14, 2016
SocksProxyController.mm Added support for all iOS device sizes & slightly prettier interface Aug 14, 2016
SocksProxy_Prefix.pch Remove NSLog. Jul 21, 2016
UIDevice_Extended.h Init repo. Fix couple obj-c warnings. Resize iPhone 5 view size. Nov 3, 2013
UIDevice_Extended.mm Fix memory leak in DNS server. Aug 17, 2015
myipaddr.c Init repo. Fix couple obj-c warnings. Resize iPhone 5 view size. Nov 3, 2013
myipaddr.h Init repo. Fix couple obj-c warnings. Resize iPhone 5 view size. Nov 3, 2013

README

This project is forked from https://code.google.com/p/iphone-socks-proxy/

The current goal is to make this iOS apps up-to-date and add new features.

User guide documentation is written on https://github.com/rickyzhang82/tethering/wiki

If you like this App, please visit UNICEF tap project website http://tap.unicefusa.org/ and make a donation to the kids who need clean water supply.

Thanks for your support.

Ricky

Change log
------------------------------------------------
Release V1.7
* Add unlimited background. Feel free to close screen to save battery. Thanks @bsuh for his patch.
* Finally, we have a pull request to change ugly UI to a new modern look. Thanks @rickybloomfield for his patch.

Release V1.6
* Fix problem when remote network is faster than local network. Thanks @optimoid and @bsuh for their patch and bug report.
* Refactor socks proxy message debug log.

Release V1.5
* Refactor DNS message log
* Verify compatible with iOS 9.3

Release V1.4
* Support iPad tethering. Add http server to host socks.pac file
* Fix several memory leak issues.

Release V1.3
* Update NSLogger API compatible with iOS 8

Release V1.2
* Convert xib to storyboard
* Fix Failed to compile: ttdnsd_platform.h not found error

Release V1.1
* Fix retrieve wifi IP address bug.
* Replace naive logging with NSLogger logging API
* Enable ARC and use modern Objective-C literal

Release v1.0.
* Support DNS server and Socks5 proxy server.
* Fix crash problem when wifi is not connected.
* Listenning socket reuse address and port if previous TCP connection in TIME_WAIT state.

------------------------------------------------
 #  SOCKS - SOCKS Proxy for iPhone
 #  Copyright (C) 2009 Ehud Ben-Reuven
 #  udi@benreuven.com
 #
 # This program 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 version 2.
 #
 # This program 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 this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,USA.


This is an iPhone App that is a SOCS Proxy. It allows you to connect your laptop to the
Internet through the iPhone's 3G/Edge connection (tethering.)
If you want to install the application on your iPhone you will have to build and install
the App from the the supplied code.
 * Pay Apple for iPhone development program
 * get a development certificat from Apple's developers portal
 * download the entire source code to a Mac
 * double click SOCKS.xcodeproj
 * in the left panel select Targers and then select SOCKS
 * press the "i" Info button on the top
 * select Properties tab
 * In the Identifier field change "symfi" to your company name
 * connect an iPhone using a cable
 * click Build and Debug


In order for this to work you need to follow few steps
Instructions for Mac:
 * On your laptop start an add-hoc Wi-Fi network:
  * System Preferences->Network
  * select AirPort
  * click on Network Name and select Create Network
  * in Name enter "mywifi", press OK, press Apply
 * Connect you iPhone to the add-hoc wifi network:
  * Settings->Wi-Fi
  * select "mywifi"
 * Run this SOCKS App on your iPhone
 * In the SOCS Proxy tab press Start
 * configure your laptop to use SOCKS:
  * System Preferences->Network->Advanced...->Proxies
  * select SOCKS proxy
  * in the SOCKS Proxy Server field enter the address and port that appear on your iPhone screen
  * press OK
  * press Apply