Toon posts:

Port forwarding TCP/IP protocol

Pagina: 1
Acties:

Vraag


  • Sledgers
  • Registratie: Januari 2017
  • Laatst online: 21-05 15:30
Beste Tweakers

Alvast mijn excuses als deze vraag hier niet thuishoort, maar ik denk van wel.

Ik ben bezig met een project waarbij ik een toestel aan wil sturen met behulp van een PLC via TCP/IP over een ethernet verbinding. Het programmeren van netwerken is niet echt mijn ding waardoor ik nu tegen een probleem aanloop dat ik niet meteen opgelost krijg. Het zit zo dat het toestel dat ik wens aan te sturen een instelbaar IP adres heeft, maar een vast poortnummer (51243). Echter bij het instellen van de poort op de PLC is deze beperkt tot poortnummer 49151.

Het klinkt als een vrij banaal probleem maar zowel in de PLC als in het extern toestel vind ik geen mogelijkheid om de poortnummers te matchen.

Bestaat er eenvoudige hardware (iets als een programmeerbare switch ofzo?) waarmee ik bijvoorbeeld de PLC een signaal kan laten versturen naar poort 300, en de switch dit signaal voor poort 300 automatisch forward naar poort 51243?

Of mis ik iets in mijn troubleshooting en is het veel eenvoudiger te omzeilen?

Alvast bedankt voor de hulp!

Alle reacties


  • nescafe
  • Registratie: Januari 2001
  • Laatst online: 01:30
Dit is iets wat (bijna) elke huis-tuin-en-keuken-router doet, namelijk NAPT (Network Address/Port Translation).

Je zou dus het aan te sturen apparaat achter een router kunnen zetten en een port forward in kunnen stellen (mits internal/external port apart zijn in te stellen).

Op je eigen pc zou je dit m.b.v. netsh interface portproxy kunnen emuleren:
code:
1
netsh interface portproxy add v4tov4 listenport=300 connectaddress=192.168.x.x connectport=51243 protocol=tcp


(Portproxy werkt alleen met tcp, een router ondersteunt doorgaans ook udp)

* Barca zweert ook bij fixedsys... althans bij mIRC de rest is comic sans


  • aawe mwan
  • Registratie: December 2002
  • Laatst online: 23:29

aawe mwan

Wat ook leuk is:

Is een tijdelijke oplossing ook goed?

Ik denk dat de gemakkelijkste oplossing dan is om het via je internetrouter te laten lopen en daar de port-forward die je nodig hebt gewoon op in te stellen.

Als je de beschikking hebt over een Unix systeem (een Raspberry Pi of zo), dan zou het ook moeten kunnen met de juiste toverspreuk op de command-line. Met netcat start je een proces dat luistert naar verbindingen die binnenkomen op poort 3000 (op het IP-adres van diezelfde computer). De data die op deze poort binnenkomt, stuur je door naar poort 51243 op IP-adres 192.168.0.100 op de volgende manier:

netcat -l -p 3000 >/dev/tcp/192.168.0.100/51243

Dit werkt dan voor 1 connection, wat misschien genoeg is om het uit te proberen.

Maar misschien doe ik het te moeilijk en is er een tweaker die een handigere oplossing weet.

„Ik kan ook ICT, want heel moeilijk is dit niet”


  • drie van acht
  • Registratie: December 2015
  • Niet online
"TCP/IP" is een hele brede term, en in het bijzonder zowel TCP als UDP gebruiken poortnummers voor zowel de afzender als de ontvanger, net als IP dat doet met IPadressen. Dus het is mischien wel een goed idee om even precies na te kijken wat je nou eigenlijk aan beide kanten probeert in te stellen.

Je kan eens beginnen met vertellen welke apparaten het over gaat, en wat voor software we het hier over hebben. Mischien zijn er wel handleidingen van online te vinden en dan kunnen er mischien meer specifieke zinnige dingen gezegd worden.


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee