greg
greg

Reputation: 2006

iOS / Mac Bonjour service not found on network

I have an iOS app that publishes a Bonjour service. On my network, the Mac app recognizes the service and everything runs smoothly. On some networks however, the Bonjour service is not "seen" by the Mac. I can't reproduce this on my own network. I have had users check for the service using Bonjour Browser and it's not found. Is there a way to diagnose this problem further? I thought it might be a firewall / router issue but some users have very simple Apple-based networks (Airport). Any ideas on what could be causing this?

Upvotes: 4

Views: 2323

Answers (3)

greg
greg

Reputation: 2006

Another followup: modifying the device name seems to resolve the issue. One user noted that his iPad was discovered but not his iPhone. Bonjour Browser confirmed the presence of the iPad service with no iPhone service. Renaming the iPhone resolved the issue. This is truly an odd behavior.

Upvotes: 0

Chris Mowforth
Chris Mowforth

Reputation: 6723

Make sure you implement ...didNotPublish... as above. Some routers filter out multicast packets, and unfortunately if you don't control the network there's not an awful lot you can do about it.

Upvotes: 1

jbat100
jbat100

Reputation: 16827

Have you tried implementing the

- (void)netService:(NSNetService *)sender didNotPublish:(NSDictionary *)errorDict

method? it can occasionally provide useful information although I have found the NSNetService to have strange behaviour sometimes also. Stopping the NSNetService and re-publishing is an ugly option which seemed to work for me to some extent.

Upvotes: 3

Related Questions