Port forwarding TCP/IP protocol

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • Sledgers
  • Registratie: Januari 2017
  • Laatst online: 08-08-2024
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


Acties:
  • 0 Henk 'm!

  • nescafe
  • Registratie: Januari 2001
  • Laatst online: 13:33
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


Acties:
  • +1 Henk 'm!

  • aawe mwan
  • Registratie: December 2002
  • Laatst online: 10-06 21:51

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”


Acties:
  • 0 Henk 'm!

Anoniem: 718429

"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.