TIA S7-1200 PUT in anderes Subnetz mit NAT

hik

Level-1
Beiträge
6
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
S7-1200 PUT in anderes Subnetz

Hallo. Ich versuche mittels PUT in einen Datenbaustein einer fremden CPU zu schreiben.

Die fremde CPU befindet sich in einer Außenstelle und einem anderen Subnetz. Die Verbindung habe ich unter Netze eingerichtet. Laut tcpdump wird eine tcp-verbindung aufgebaut, Daten ausgetauscht und wieder abgebaut. Leider kommen die Daten nicht an. Beim Senden kommt zuerst kein Fehler mit Status 25. Danach Fehler und Status 1.

Die Verbindungsbeschreibung ist bei beiden SPSen aktuell.

Danke für jeden Hinweis,
Thorsten

P.S.: Ursprünglich war noch geNATet. Das ist jetzt deaktiviert und es geht immer noch nicht.
 
Zuletzt bearbeitet:
P.S.: Ursprünglich war noch geNATet. Das ist jetzt deaktiviert

Bist du da sicher? Beidseitig projektierte S7 Verbindungen funktionieren nie mit NAT.
Kannst du den tcpdump mal hochladen(einen ohne NAT).
Was sagt die online Ansicht der S7 Verbindungen?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ok, das war mal wieder ein Layer 8 und auch Layer 3 - Problem. Der Hinweis, das NAT zu prüfen, war gold wert, da tatsächlich auf dem zweiten Ende des VPN-Tunnels auch noch NAT aktiv war. Schade, dass es mit umgesetzten IP-Adressen nicht funktioniert.

Das zweite Problem war, dass ich - als NAT noch aktiv war - die Verbindungs-ID testweise geändert hatte. Die ID war nun ungleich zur lokalen ID und deshalb gab es hier auch noch Schwierigkeiten.

Hier noch der Code, falls jemand ähnliches vorhat:

Code:
"GDB".value := "AI0";

"PUT_DB_1"(REQ:="GDB".started,
         ID:=W#16#100,
         DONE=>#p_done,
         ERROR=>#p_error,
         STATUS=>#p_status,
         ADDR_1:=P#DB200.DBX0.0 Byte 2,
         SD_1:=P#DB100.DBX0.0 Byte 2);


IF NOT "GDB".started THEN
  "GDB".started := true;
END_IF;

IF #p_done OR #p_error THEN
  "GDB".started := False;
END_IF;
 
Zurück
Oben