How can file/screen/other sharing on Mac OS X be enabled only when on a certain network, such as the home Wi-Fi network? Sharing should not be enabled when on public Wi-Fi network.

Currently it seems that it is only possible to globally enabled or disable sharing per service in System Preferences, Sharing.

  • 1
    The de facto program for this used to be MarcoPolo, but I haven't used it for a while and based on their site, Snow Leopard support seems spotty, specifically for Wi-Fi. – fideli Sep 12 '10 at 22:55

Even if slightly expensive, you can use NetworkLocation to autodetect your location, and after configuring it for your home network, add Application > Open an Application / Run Script and configure it so that it runs this StartInternetSharing script. Repeat, only this time check the box saying Launch when leaving location and add the StopInternetSharing script instead.

Scripts weren't written by me, but I've updated them and hosted them on my Dropbox because I have a checkbox for Xgrid, and so the original version wasn't working. I've tested them and they both work. Here is the MacRumors post where these scripts were originally posted.

P.S. I don't know if I have Xgrid because of something I installed, or everyone with 10.6 does. Could you read/follow the instructions in either script's headers (open in AppleScript Editor) and let me know if you do? I'd like to update the scripts to have the most-used option as default. Thanks.

|improve this answer|||||

A friend of mine found an open source app called ControlPlane, which looks very promising and seems to be able to do exactly what we need. I just read that it is based on MarcoPolo, which fideli had mentioned above.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.