
Ich arbeite an einer Handy-Anwendung, die einen TCP-Befehl von einem externen Netzwerk (wie einem Café oder einer 3G-Verbindung) an ein bestimmtes Gerät im Heimnetzwerk senden muss. Sagen wir
- Ein Router hat die reale IP-Adresse 123.123.123.123 und die private IP-Adresse 192.168.0.1
- Ein Gerät hat die private IP-Adresse 192.168.0.101
- Ein Gerät wartet auf eingehende TCP-Befehle auf Port 1000 und 2000
Meine Fragen sind:
- In meiner mobilen Anwendung muss ich den Befehl an 123.123.123.123 senden, richtig? Wenn ja, an welchen Port?
- Welche Konfiguration muss ich am Router vornehmen, damit er diesen Befehl an das gewünschte Gerät weiterleitet?
Ich habe keine Ahnung, wie das geht, da ich seit meinem Abschluss vor Jahren noch nie mit Netzwerkkram gearbeitet habe.
Antwort1
welcher Port? entweder Port 1000 oder 2000 Also, es geht an 123.123.23.123:1000
oder :2000
Welche Konfiguration hat Ihr Router? Sie würden NAT/PAT/Portweiterleitung verwenden, d. h. Sie stellen den NAT-Router so ein, dass er alles, was er auf Port 1000 oder 2000 empfängt, an das Gerät weiterleitet 192.168.0.101:1000
oder :2000
…
Antwort2
Sie müssen Ihren Router so konfigurieren, dass der Router weiß, dass, wenn er ein Paket empfängt, das an die Adresse 123.123.123.123 und Port 1000 (oder 2000) gerichtet ist, das Paket an 192.168.0.101 und Port 1000 (oder 2000) weitergeleitet werden muss.
Diese Funktion wird von verschiedenen Herstellern unterschiedlich benannt. Suchen Sie nach „virtueller Server“, „Portweiterleitung“, „Ziel-NAT“, „Reverse-NAT“ usw.