Search code examples
network-programmingcmdclientibm-mqhost

IBM MQ :: Remote Configuration - Can't Start Sender Channel


I am working with IBM MQ. I managed to get a basic Handshake / Put Message(s) / Get Message(s) / Disconnect .net solution going on, a couple of days ago, but it only works on a local level, and I now need to update the solution so it works remotely as well.

After reading and experimenting for a while, I decided to follow IBM Knowledge Center's Point to Point scenario step by step. However, I can't start the Sender Channel as instructed by the guide's last step; the Sender Channel's status ping-pongs between Binding and Retrying, and the logs come up with the following error codes; AMQ9002, AMQ9202 and AMQ9999, meaning, as far as I can tell, there is some kind of trouble finding and/or connecting with the host, as explained by the error logs.

I have looked through a lot of questions regarding these errors in particular, but while I have followed most of the proposed solutions (I made sure the Receiver's listener is running, I tried turning off Firewalls, I tried with different ports, I have performed tests Telnet, I have stopped/restarted/resolved the Sender channel a few times, and I have tried setting this up from both, the command line and MQ Explorer), I have yet to get a successful communication going on between two different PCs.

I am aware the error could be either temporary, or the result of problems within the Network itself, but I have been trying to establish a successful connection for almost three days now, and before I pass this unto my bosses I would like to make sure I have exhausted every other possibility.

How can I complete IBM's Point To Point set up guide, or is there anything that could point me towards a different / better approach to get two PCs talking with each other via IBM MQ v9?

Although hastily translated from Japanese, you can find the detailed error logs below.

2017/09/19 17:34:09 - Process (234212.1) User (MUSR_MQADMIN) Program (runmqchl.exe) Host (DESKTOP - UP 4 D 363) Installation (Installation 1) VRMF (9.0.3.0) QMgr (QM 1) Time (2017-09-19T08: 34: 09.201 Z)

AMQ9002: Channel 'TO.QM2' is starting.

Description: Channel 'TO.QM2' is starting.

ACTION: None.


2017/09/19 17:34:30 - Process (234212.1) User (MUSR_MQADMIN) Program (runmqchl.exe) Host (DESKTOP - UP4D363) Installation (Installation 1) VRMF (9.0.3.0) QMgr (QM 1) Time (2017-09-19T08: 34: 30.824Z)

AMQ 9202: The remote host 'DESKTOP-1AV4LM3 (The correct ip address) (1415)' can not be used.Please try again later.

Description: Using TCP / IP to host 'DESKTOP-1AV4LM3 (The correct ip address) of channel TO.QM2 (1415) 'trying to allocate a conversation, but it did not succeed. However, It is temporary and there is also the possibility that TCP / IP conversation can be allocated normally later.

If the remote host can not be determined, '????' is displayed. .

ACTION: Please try the connection later. If the failure persists, record the error value Please contact the stem administrator. The return code from TCP / IP is 10060 (X'274C ').The cause of this failure may be that the host can not reach the destination host. Alternatively, There is a possibility that the host 'DESKTOP-1AV4LM3 (The correct ip address) (1415)' listener isn't running. If that is the case, start the listener and try again.


2017/09/19 17:34:30 - Process (234212.1) User (MUSR_MQADMIN) Program (runmqchl.exe) Host (DESKTOP - UP 4 D 363) Installation (Installation 1) VRMF (9.0.3.0) QMgr (QM 1) Time (2017-09-19T08: 34: 30.825Z)

AMQ9999: Channel 'TO.QM2' for host 'DESKTOP-1AV4LM3 (1415)' terminated abnormally

Description: The host 'DESKTOP-1AV4LM3 (1415)' cannot be determined.

ACTION: Check the error log for the preceding error message for this channel program Please determine the cause of failure.... ".


Solution

  • The 'interesting' bit of the error messages above is that the sender is attempting to start a channel to port 1415 on the destination and is getting a 10060 return code (WSAETIMEDOUT). This is different from an immediate rejection because the other end doesnt have a socket open, for example.

    You will also note its timing out after about 21 seconds if your times are to be believed. The only time I've seen this kind of things is DNS resolution - There was an APAR for example showing that reverse DNS can cause delays in channel startup, and this could be for a successful or unsuccessful startup http://www-01.ibm.com/support/docview.wss?uid=swg1IC96408

    A new attribute was added to MQ to disable reverse DNS lookups if its the cause - See https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_8.0.0/com.ibm.mq.pro.doc/q113120_.htm#q113120___chlauth

    If this is the case, on the receiving end (or both!) try runmqsc , 'ALTER QMGR REVDNS(DISABLED)'. You might have to restart the qmgr for it to be effective (I'm not sure, sorry)

    I'd also echo the comment added to your question by JoshMc, to check the receiving end logs for messages (both global errors but more likely the qmgr specific AMQERR01.LOG files) when this occurs - I have a feeling that the timeout is only part of your problem.