Caching Server is a cool part of OS X Server: once you turn it on, it basically becomes a local cache of the App Store (Mac and iOS), keeping a copy of downloaded apps on your local network. This results in faster app downloads, as they’re coming from within your network, and less use of your broadband connection. Which is nice.
Unfortunately I’ve never been able to get it to work as my school is part of London Grid for Learning (LGfL). LGfL is a broadband consortium, which allows schools to buy broadband at much cheaper rates because the LGfL trust has built a lovely big network (with the help of Virgin Media Business) just for schools in London. With an eye to safeguarding children, this network is built to be very safe and secure. The upshot of this is that our little Mac server is buried deep within the network behind many firewalls and switches and routers and so on. Which has meant that Caching Server hasn’t worked, as it needs to sit pretty close to the open Internet.
Until Yosemite that is.
We recently had our server updated to OS X 10.10, and with that comes some improvements to Caching Server. One of these is the ability to set the public IP addresses/ranges that will use the Caching service, thus making it all work.
- Open the Server app and click on ‘Caching’. Turn it on.
- Click on ‘edit’ next to where it says ‘Permissions’.
- On the drop-down menu next to ‘Serve clients with public addresses’, choose ‘on other networks’.
- Click the plus in the box below and add the public IP address of the server. You can find this out by clicking the server name under ‘Server’ in the sidebar.
- Enter in the public IP address for all LGfL-connected, which is 188.8.131.52. Apparently!
- You then need to set some client configuration on your DNS server. Our DNS is on a Windows server, so I click ‘Client Configuration’, choose ‘Windows’ as the DNS type and then copy the command. I then open up the Windows server, type ‘CMD’ into the search box to open the command line, then copy the command.
And that seems to do the trick! Lovely.