2010-01-22 4 views
1

J'ai une application iPhone qui repose sur la connexion via le réseau local à un serveur fonctionnant sur mac/pc d'un utilisateur.Comment arrêter les routeurs bloquant le trafic au sein d'un réseau?

Le serveur exécute un service HTTP sur le port 8080

ajouter déjà des exceptions à la fenêtre par défaut de pare-feu ou le pare-feu de Mac par défaut pour assurer le trafic est autorisé à atteindre mon application.

Cependant, le problème le plus courant chez les clients est que l'iPhone ne peut pas communiquer avec le serveur.

Normalement, il s'agit du trafic bloquant le routeur réseau - bien que parfois l'utilisateur utilise son propre pare-feu qui bloque le trafic.

Y at-il un protocole qui me permettra de dire quelque chose à l'effet de

'seront tous les pare-feu sur ce réseau, s'il vous plaît permettre la communication à <an ip> on <a port> si le trafic provient au sein de ce réseau? J'ai examiné UPNP - mais cela semble se concentrer sur l'ouverture d'un port vers le monde extérieur que je ne veux pas faire.

suggestions?

merci d'avance.

+2

Est-ce que vous ne devriez pas essayer d'utiliser un pare-feu? :-) –

+0

bien - seulement de la même manière que upnp va à l'encontre du but d'un pare-feu. Votre 'joe moyen' n'a pas choisi d'installer un pare-feu pour arrêter les applications fonctionnant dans son réseau local - ils l'ont juste avec les paramètres par défaut sur leur routeur et ne savent pas comment le changer. –

Répondre

0

Non, il n'existe pas de méthode ou de protocole autre que UPnP. Et je ne le recommanderais pas de toute façon parce que dans les réseaux d'entreprise cela causerait toutes sortes de problèmes et de problèmes de sécurité si cela était possible. Je suggère que vous définissiez une entrée de FAQ ou une section d'installation pour votre logiciel où vous décrivez ce problème commun et fournissez des détails aux clients comment ils peuvent détecter et résoudre ce problème.

+0

J'ai fait la chose faq - mais essayer d'obtenir des clients non techniques pour configurer les pare-feu sur leurs routeurs est non trivial. Franchement, ce n'est pas le genre de choses qu'ils devraient faire pour que les applications fonctionnent (trouvez le moyen d'accéder à votre interface web, déterminez quel terme étrange votre routeur utilise pour décrire un pare-feu, etc.). Les utilisateurs s'attendent à ce que les applications «fonctionnent» ... –

+0

Bien sûr. Mais les pare-feu sont là pour une raison. Imaginez ce qui se passerait si une telle chose était possible: les virus ou les chevaux de Troie reconfigureraient les routeurs pour leur permettre d'accéder à d'autres réseaux protégés et le fil de sécurité serait difficile à maîtriser.Soyez assuré que vous n'êtes pas le seul développeur à avoir ce problème. De l'autre côté, les utilisateurs avec des pare-feu auront non seulement des difficultés avec VOTRE application, mais avec beaucoup d'autres aussi. – Kosi2801

0

En général, les ports supérieurs (supérieurs à 8 000 ou 16 000) ne sont pas bloqués ou protégés par un pare-feu. Je considérerais sérieusement l'allocation d'un port aléatoire dans cette gamme.

En outre, envisagez d'annoncer votre service avec Bonjour. L'utilisation de Bonjour a l'effet secondaire que votre application iPhone n'a pas besoin de connaître le numéro de port. Il peut simplement parcourir le réseau pour les serveurs disponibles. S'il n'y en a qu'un alors connectez-vous à cela, sinon présentez l'utilisateur avec une liste à choisir.

+0

Je fais de la publicité par bonjour - et cela aide à la découverte. -mais j'ai toujours le problème de communiquer quand je sais où est le service! par défaut, cette application utilise 8080, de sorte que répond à au moins une partie de votre définition de «haut port». bon de savoir que haute est bonne - je vais l'utiliser pour mes autres applications. –

0

Existe-t-il un moyen d'exécuter le serveur sur le port 80? Vous risquez de rencontrer moins de problèmes sur un port standard.

+0

bonne suggestion - merci. C'est peut-être possible, bien que je m'inquiète des services contradictoires. –

Questions connexes