2016-08-06 3 views
0

J'ai cherché et n'a pas trouvé de réponse pour cela .. même pas une discussion à ce sujet ...Comment accéder à une adresse IP dans un sous-réseau d'une autre carte NC?

Je dois développer une application pour parler à un robot dans notre atelier ... pas grand-chose à propos de la code ... Le problème est le suivant:

Ce robot est connecté à un PC industriel connecté à notre réseau de production. Ce PC industriel a deux NIC, NIC# 1 a des paramètres TCP/IP définis pour se connecter à notre réseau de production (IP quelque chose comme 10.9.100.100), et le NIC# 2 est configuré pour avoir son adresse IP sur une adresse de sous-réseau (192.168 .127.10).

Le robot possède également une adresse IP, qui se trouve dans le sous-réseau de la carte réseau n ° 2 du PC industriel. L'adresse IP du robot est quelque chose comme 192.168.127.20

Une application est en cours d'exécution sur le PC industriel qui conserve les données d'interrogation du robot, comme son statut, le temps de cycle, etc. Cette application envoie ensuite les données collectées à partir de le robot à un serveur de notre réseau de production. En termes simples, c'est comme saisir des données via la carte réseau n ° 2 et l'envoyer à un serveur du réseau de production via la carte réseau n ° 1. Pour tester mon application à partir de l'EDI et la déboguer, je souhaite me connecter au robot depuis mon bureau (qui se trouve dans le réseau de production (10.9.100.200) ...), jusqu'à cette adresse IP. Dans le sous-réseau, le robot est le sous-réseau IP défini dans la carte réseau n ° 2 du PC industriel.

J'ai accès au PC industriel et je pourrais y installer Visual Studio et le code via le bureau à distance. Alors à coup sûr, je pourrais accéder à ce robot. Mais ce ne serait pas cool ...

Existe-t-il un moyen, un réglage ou une application qui me permet d'atteindre ce robot à partir de mon réseau de production?

Répondre

0

Ce que vous cherchez est le transfert de port. Vous pouvez configurer le PC industriel pour écouter un certain numéro de port x sur NIC 1 et transmettre toutes les connexions à l'adresse IP du robot sur le port numéro y (où y peut être égal à x si le port x n'est pas utilisé par PC industriel, sinon vous le définissez à une valeur différente).

Ce serait trivial à mettre en place sur la plupart des Unix, mais puisque vous utilisez Windows, c'est un peu plus compliqué. Si votre trafic est TCP, Windows prend en charge la redirection de port via netsh. Si votre trafic est UDP, vous devez utiliser une application tierce. Avec un peu de Googling, j'ai trouvé this one (cherchez "Simple UDP proxy/pipe"). Notez que je n'ai aucune expérience avec ce programme et vous devriez être prudent lors du téléchargement des exécutables à partir de sources inconnues; mais AFAICT le code source est également fourni, donc vous pouvez le compiler vous-même si nécessaire.

Sur the same page, vous pouvez également trouver un redirecteur TCP si le Windows natif ne fonctionne pas pour vous.