Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

TCP/IP Connection failed

Hello everybody, iam a beginner in Talend ESB.

 

I want to establish a TCP/IP connection to a Server. It's an RFID reader.

I have to send the reader an XML message via TCP / IP to a Host: "141.79.224.86" and a Port: 10001.

The XML message is called HostGreetings.

(<frame><cmd><id>1</id><hostGreetings><readerType>SIMATIC_RF680R</readerType><supportedVersions><version>V2.0</version><version>V2.1</version><version>V2.2</version></supportedVersions></hostGreetings></cmd></frame>)

After sending I have to get an answer. But that doesnt work.

 

My process is as follows:

 

0683p000009Lsi8.png

In the first step i send the whole code via tFileDelimited to the tSocketOutput (Client). This is working.

0683p000009Lsc8.png

The answer i can see only about wireshark i get one. But in Talend it does not show me.

0683p000009LsP9.png

Thats the mistake i get.

 

Does anybody know what i'm doing wrong?

 

Thanks in advance!!!!

 

Kind regards

Ao

Labels (2)
36 Replies
Anonymous
Not applicable
Author

If you are on a VPN, your machine will have an IP address assigned by the VPN. But only if your machine is creating your VPN connection. If you are sharing a VPN connection across your network (maybe if your router is creating the VPN connection) you may be sharing the VPN connection's IP address. In which case you might have to go down the route of port forwarding on your router. This sounds like a networking problem, which isn't really a Talend problem.

Anonymous
Not applicable
Author

I reach hin and he answers me. Here is whats going on in Wireshark when i play the scenario from above.

0683p000009LsaV.png

I dont think that is a network problem otherwise i would not reach it right? 0683p000009M9p6.png

Anonymous
Not applicable
Author

It looks like your tSocketInput should be bound to 141.79.36.115. If it cannot bind to that IP then you will need to investigate why Talend does not think your machine owns that IP. Try an ipconfig (or ifconfig on linux/Mac) call to see which IP addresses your machine owns.

Anonymous
Not applicable
Author

0683p000009LsNW.png

 

Since iam connected via VPN this is my new IP Adresse. I have now entered this address at tSocketInput.

It does not come immediately an error message as at 141.79.224.86.

 

Now comes:

 

[statistics] connecting to socket on port 3632
[statistics] connected
Exception in component tSocketInput_1 (SocketServer)
java.net.SocketTimeoutException: Accept timed out
    at java.net.DualStackPlainSocketImpl.waitForNewConnection(Native Method)
    at java.net.DualStackPlainSocketImpl.socketAccept(Unknown Source)
    at java.net.AbstractPlainSocketImpl.accept(Unknown Source)
    at java.net.PlainSocketImpl.accept(Unknown Source)
    at java.net.ServerSocket.implAccept(Unknown Source)
    at java.net.ServerSocket.accept(Unknown Source)
    at rfidtosap.socketserver_0_1.SocketServer.tSocketInput_1Process(SocketServer.java:470)
    at rfidtosap.socketserver_0_1.SocketServer.runJobInTOS(SocketServer.java:880)
    at rfidtosap.socketserver_0_1.SocketServer.main(SocketServer.java:729)
[statistics] disconnected
Job SocketServer endet am 12:27 21/02/2018. [exit code=1]

 

 

 

Anonymous
Not applicable
Author

This is because it is not receiving a message before its timeout period ends.....but the address is being bound.

 

You haven't answered my question about your VPN. Can your RFID server see your machine directly? If your RFID server were to ping your IP address, would it work? This is important. This is clearly a networking issue.

Anonymous
Not applicable
Author

When i connect via VPN, iam in the same network as the RFID server. I can ping him and i get a response.

I didnt unterstand what you mean by that. The RFID-Reader cant ping me? I just get a response when i ping him.

 0683p000009LsgW.png

Anonymous
Not applicable
Author

What is the green marked? This is what i see...

 

0683p000009Lsm9.png

Anonymous
Not applicable
Author

OK, I am getting confused here. Can you answer some questions?

1) Have you got a simple solution working with two jobs just posting from one job to the other (using localhost)?

2) Have you been trying this with your VPN connected?

3) Have you ensured that the port you are using is free?

4) Do you know the that RFID is receiving the message?

5) Is the RFID responding on the same port?

6) Can you try this on your local network without the VPN?

 

It looks like this is a network error. If you have tested the use of the tSocketInput/Output using localhost and it worked, then this question has been resolved in relation to Talend. We are now trying to debug your networking. Networking is notoriously complicated and trying to debug a job like this without trying it on the simplest network first is a bad idea. You need to try this on a local network.

Anonymous
Not applicable
Author

Sorry for confusing...

 

to 1) Yes, i did that. This works with Localhost. But not with my IP-Addresses (RFID)

to 2) Yes, unfortunately, in vain

to 3) Yes, i did

to 4) Yes, otherwise i would not receive any feedback from the reader (Wireshark)

to 5) Yes

to 6) No, that doesnt work (tSocketOutput would not send)

Anonymous
Not applicable
Author

The problem is that i want to send data via TCP.

(My IP: 141.79.36.115 / Port:53523 (variable) )

The RFID System wants to send me to the same IP address and the same port data. But via tSocketInput i define a different port.

Is there a solution for this?