I am looking to merge both a P2P WCF service (for LAN support and accessible hops) and a publish-subscribe server to coordinate everything, this is just a post to keep track of the URL's related to doing this as I find them :)
WCF can't use its PeerChannel to connect to both hosts on the internet and local network at the same time, so there'll need to be two PeerChannel's and a Publish-Subscriber service bus connection to work out where everything else is.
Writing a custom peer resolver (new one needs to handle non-local hosts by requesting from the publish subscribe service): http://msdn.microsoft.com/en-us/library/ms751466.aspx
Sample WCF P2P chat app: http://msdn.microsoft.com/en-us/library/ms751502.aspx
(This post will be updated with more links as I find them)
Update: What I didn't realise when I started looking into this is that the PeerResolver service is not a magic 'find everything on your network' concept, but rather just a WCF service you register and unregister at, so it's basically already the public-subscriber list I was looking at. That leaves the question of if the PeerResolver service does that, how on earth is it supposed to find things on the local network? Well that would be the PNRP service, which happens to not be compatible with loads of OS' and isn't installed by default. Great one there guys!
So instead I'll just make my own UDP transport for the peer resolver, and if anything I'll get to learn how to make a new transport :).Permalink