@Ogre network beacon is just a bonjour announcer and has to run on the network side, where the announcements are missing (client network). It doesn't even need to run on the iphone itself, but can run on a Mac in the same Network (assuming the iPhone is connected per Wireless in this network).
But in general, this is a hard problem that I was fighting with for years. Before solving it for the iPhone you should try to get it working for a Mac VPN connection. And it's my believe that it's impossible to do with PPTP or L2TP.
Problem is the VPN Server, which always has to route the package to and from the target network.
e.g. My L2tp Server has IP 192.168.184.59. iMac with HS and iTunes Library 192.168.184.11. Client (e.g. Macbook) gets 192.168.184.80 assigned from the VPN Server.
If you do a traceroute from the client (Macbook), you'll see it always takes 1 hop:
$ traceroute 192.168.184.11
traceroute to 192.168.184.11 (192.168.184.11), 64 hops max, 52 byte packets
1 192.168.184.59 (192.168.184.59) 73.990 ms 70.363 ms 69.136 ms
2 imac.XXXX.lan (192.168.184.11) 79.933 ms 70.047 ms 71.875 ms
I spend many hours to get the VPN Server to route the bounjour stuff over the link. (e.g. Settings up an announcment service (repeater) on the VPN Server). But always failed. If someone gets it working.. please let me know.
Well if you want it working, you need OpenVPN. Since an OpenVPN Server does not create a new Network Interface on the Server for each Client connection, but rather works with a constant interface that is BRIDGED to the Interface of the Subnet Things work much(!) smoother and all the Bounjour stuff works just fine (HomeSharing, Remote, AirPlay etc...).
If I do a traceroute from the client know, I can see that there is no actual routing taking place on the VPN Server.
$ traceroute 192.168.184.11
traceroute to 192.168.184.11 (192.168.184.11), 64 hops max, 52 byte packets
1 imac.XXXX.lan (192.168.184.11) 70.129 ms 69.211 ms 69.275 ms
Nice. Long Story Short. Jailbreak your iPhone and use OpenVPN
.