X-Git-Url: https://tinc-vpn.org/git/browse?p=wiki;a=blobdiff_plain;f=examples%2Fosx-install.mdwn;h=adbf8536d3134cd659f8d4efe941b2fc07834296;hp=48669144f7a8cb73b123ce4d2fe3c75bd2f6b6a2;hb=4a8ff30c03c43d74b2870a9a4b8c832768f994e1;hpb=7cbdb673f0c7f0279a8620802db69880e5a73099 diff --git a/examples/osx-install.mdwn b/examples/osx-install.mdwn index 4866914..adbf853 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,66 @@ 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 +120,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 +166,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 +235,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