X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=examples%2Fosx-install.mdwn;h=adbf8536d3134cd659f8d4efe941b2fc07834296;hb=HEAD;hp=48669144f7a8cb73b123ce4d2fe3c75bd2f6b6a2;hpb=7cbdb673f0c7f0279a8620802db69880e5a73099;p=wiki diff --git a/examples/osx-install.mdwn b/examples/osx-install.mdwn index 4866914..5a4f7fe 100644 --- a/examples/osx-install.mdwn +++ b/examples/osx-install.mdwn @@ -29,7 +29,7 @@ Macports is recommended because it does not modify your system files. It keeps i XCode is a required prerequisite. It must be installed before installing Macports. Download and install the Macports system from MacForge. -* [XCode](http://developer.apple.com/technology/Xcode.html) (requires +* [XCode](https://developer.apple.com/xcode/) (requires free online ADC Membership); it can also be obtained from original OSX installation DVD * [Macports](http://www.macports.org/install.php) @@ -40,7 +40,7 @@ Update the ports system and ports list. sudo port selfupdate sudo port sync -This command will install tinc and all the necessary dependancies. +This command will install tinc and all the necessary dependencies. sudo port install tinc @@ -49,6 +49,68 @@ Configuration files are located in /opt/local/etc/tinc. Tinc can now be configured and executed. +### Start tinc automatically on system boot + +[launchd](https://en.wikipedia.org/wiki/Launchd) is a system for monitoring services and make sure services are started if certain conditions are met. This system is available on OS X 10.5 and later versions. + +To use launchd, you have to create a property-list file for tinc and put it under /Library/LaunchDaemons/ + +The following example is a plist file for the tinc network name: myvpn + +*/Library/LaunchDaemons/myvpn.tinc.plist*: + +``` + + + + + KeepAlive + + Label + tinc.myvpn + ProgramArguments + + /opt/local/tinc/sbin/tincd + -n + myvpn + -D + + + +``` + +This will configure tincd to start the myvpn configuration in the foreground (-D). If tincd is started as background daemon, launchd will not function correctly with tinc. Launchd will directly start tincd if this file is found. The `KeepAlive` element will ensure that tincd is always running, and to be restarted if it stops. To stop tincd, use the *launchctl* command. Some commands to remember are: + + launchctl unload -w /Library/LaunchDaemons/myvpn.tinc.plist + +This adds a *disabled* key to the file and stops tincd. The disabled key ensure that launchd will not start tincd anymore. The inverse operation is: + + launchctl load -w /Library/LaunchDaemons/myvpn.tinc.plist + +This removes the *disabled* key from the file and starts tincd. + +To stop tinc: + + launchctl stop tinc.myvpn + +To list all services monitored by launchd: + + launchctl list + +If tinc has been configured with launchd, you will see tinc.myvpn listed with a process id. + + +#### Handle standby and other network interrupts + +Tinc automatically tries to reconnect, but this takes time and the longer there +is no connection, the longer tinc waits to try and reconnect again. A small +tool is available at https://gitorious.org/tinc-on-osx/networknotify which will +signal tinc to reconnect when the network connection is available. It uses OS +X its network reachability framework and can be build using Xcode. + +--- + + ### Alternative Installation Methods There are two alternative methods of getting tinc: @@ -60,14 +122,14 @@ getting tinc to work. In the case of compiling tinc the following is required: -* [XCode](http://developer.apple.com/technology/Xcode.html) +* [XCode](https://developer.apple.com/xcode/) * [LZO libraries](http://www.oberhumer.com/opensource/lzo/) Before starting, create a new folder `tmp` in your home directory and enter it (it can be any other location). From Terminal level it can be done in the following way: -[[!img examples/osx-tmp.png]] +[[!img examples/osx/tmp.png]] ##### LZO @@ -106,12 +168,6 @@ Enter the directory, and execute configure, make, make install: Having installed Tinc, you can move to the [next section](#config). -#### Download it - -Link: [tincd-1.0.9.zip](/packages/osx/tincd-1.0.9.zip). Please note that this archieve -provides only the executable and does not include any manual. Once -downloaded, place the extracted executable into `/usr/sbin/`. - ### Configuring tinc Tinc on OS X looks for configuration files in `/usr/etc/tinc`. In @@ -181,5 +237,6 @@ the two existing files (if applicable). * * * * * +- Mike Bentzen (mike (at) bentzen . com . au) - Grzegorz Dymarek (gd58 (at) alumni . st-andrews . ac . uk) -- Mike Bentzen (mike (@) goodlook . com . au) +- wizztick