Author |
Message
|
aboggis |
Posted: Tue Oct 02, 2007 12:58 pm Post subject: Listening on port 80? |
|
|
 Centurion
Joined: 18 Dec 2001 Posts: 105 Location: Auburn, California
|
I haven't been able to find anything obvious, so I'm asking here...
Are there any restrictions on listening on port 80 (the default for HTTP)?
My QMgr is running and starting a listener on 1414 works fine. Clients can send/receive messages, etc. Starting the listener on port 80... well, the process (runmqlsr) starts fine, but the client finally gets a rc:2059 on the connect and I see "A communications error for TCP/IP occurred." on the console of the server (WinXP, MQ 6.0.2.2).
So this leads me to think that there might be something else bound to that port on the server already. BUT - I don't have IIS running and I can't find any other Windows services that would bind to that port. Also, if there was something bound to the port, wouldn't runmqlsr report that?
Anyone else have experience on getting MQ to listen on port 80? I want to do this so that I can send messages from a system, that already has an "opening" in it's firewall for port 80. I don't want to have to open additional ports. |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Oct 02, 2007 1:16 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Maybe the server doesn't have port 80 open on the firewall.
It is not a good idea to run an MQ Listener on port 80, only because people may try to send HTTP requests to the MQ Listener.
Other than that, it should not matter.
what does netstat show, when the listener is not running?
can the client telnet to port 80 when the listener is running? what about when it isn't running? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue Oct 02, 2007 2:39 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Remember as well there are restrictions on the ports below 1024. You have to have root authority to be able to open (run) one of those ports....
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Oct 02, 2007 2:40 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
fjb_saper wrote: |
Remember as well there are restrictions on the ports below 1024. You have to have root authority to be able to open (run) one of those ports.... |
How does that work on Windows? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue Oct 02, 2007 2:44 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
jefflowrey wrote: |
fjb_saper wrote: |
Remember as well there are restrictions on the ports below 1024. You have to have root authority to be able to open (run) one of those ports.... |
How does that work on Windows? |
Sorry missed the windows. Maybe on winx you need admin privileges to open the ports below 1024... Er.... Wait as mqadmin you should have admin privileges on the box...  _________________ MQ & Broker admin |
|
Back to top |
|
 |
aboggis |
Posted: Tue Oct 02, 2007 10:28 pm Post subject: |
|
|
 Centurion
Joined: 18 Dec 2001 Posts: 105 Location: Auburn, California
|
Code: |
C:\Documents and Settings\tony.MERLIN>netstat -a -n -v -b
Active Connections
Proto Local Address Foreign Address State PID
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1112
[runmqlsr.exe]
TCP 0.0.0.0:1414 0.0.0.0:0 LISTENING 1360
[runmqlsr.exe]
TCP 0.0.0.0:1420 0.0.0.0:0 LISTENING 1200
[runmqlsr.exe] |
Nothing else is listed on port 80 (http) and the three listener process I expect to see are all there. If there was anything already bound to port 80 I would have expected the start of the listener to fail.
In the logs I get:
Code: |
-------------------------------------------------------------------------------
10/2/2007 22:49:56 - Process(2748.1) User(MUSR_MQADMIN) Program(amqzmgr0.exe)
AMQ5026: The Listener 'TEST80.TCP' has started. ProcessId(1112).
EXPLANATION:
The Listener process has started.
ACTION:
None.
-------------------------------------------------------------------------------
|
I set my MQSERVER environment variable:
Code: |
set MQSERVER=TEST/tcp/127.0.0.1(80) |
and tried amqsputc, which gives 2059, and the following in the log:
Code: |
-------------------------------------------------------------------------------
10/2/2007 23:23:42 - Process(1468.3) User(MUSR_MQADMIN) Program(runmqlsr.exe)
AMQ9209: Connection to host 'localhost (127.0.0.1)' closed.
EXPLANATION:
An error occurred receiving data from 'localhost (127.0.0.1)' over TCP/IP. The
connection to the remote host has unexpectedly terminated.
ACTION:
Tell the systems administrator.
----- amqccita.c : 3094 -------------------------------------------------------
10/2/2007 23:23:42 - Process(1468.3) User(MUSR_MQADMIN) Program(runmqlsr.exe)
AMQ9492: The TCP/IP responder program encountered an error.
EXPLANATION:
The responder program was started but detected an error.
ACTION:
Look at previous error messages in the error files to determine the error
encountered by the responder program.
----- amqrmrsa.c : 459 --------------------------------------------------------
|
The PIDs are different because I stopped & started MQ.
Just to see if it made a difference I made sure MUSR_MQADMIN is a member of the Administrators group - that didn't help.
All suggestions have been helpful - I was hoping that netstat would offer up the culprit - but no... |
|
Back to top |
|
 |
fjb_saper |
Posted: Wed Oct 03, 2007 2:41 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
If you are running MQIPT and trying to start a channel over http you really need an http proxy at both ends.
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Oct 03, 2007 3:34 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
jefflowrey wrote: |
can the client telnet to port 80 when the listener is running? what about when it isn't running? |
_________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
aboggis |
Posted: Wed Oct 03, 2007 8:43 am Post subject: |
|
|
 Centurion
Joined: 18 Dec 2001 Posts: 105 Location: Auburn, California
|
I'm not running MQIPT (I assume you mean SupportPac MS81), but I have downloaded it and am reviewing it. At first glance it doesn't seem to be what I want, since I want a [MQ] client to [MQ] server connection.
I certainly can't deploy MQIPT's to clients. If a client can talk to MQIPT which is directly connected to my MQ server... maybe.
The reason I want MQ is for the connection/messaging reliability. HTTP is not reliable.
As for the telnet question...
If the server is listening on port:80, nothing. Telnet sits there.
If the server is *not* listening, I get a connection error.
Pretty much what I'd expect. |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Oct 03, 2007 8:53 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Okay, so that means the network works and isn't causing any problems.
I assume if you type stuff in the telnet session when the listener is running, then you see an FDC thrown.
Next step after telnet is amqscnxc. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
aboggis |
Posted: Wed Oct 03, 2007 9:42 am Post subject: |
|
|
 Centurion
Joined: 18 Dec 2001 Posts: 105 Location: Auburn, California
|
Yup. Get FDC's generated (and I see the data I typed into the telnet in the FDC file - so I know it's going across the wire).
Code: |
Major Errorcode :- rrcE_BAD_DATA_RECEIVED
Probe Description :- AMQ9207: The data received from host 'test (xx.xx.xx.xx)' is not valid. |
The results from AMQSCNXC are pretty much the same as AMQSPUTC... it sits there "twiddling it's thumbs" and then finally comes back with a 2059 error.
Code: |
C:\>amqscnxc -x martini(80) -c TEST.SVRCONN TEST
Sample AMQSCNXC start
Connecting to queue manager TEST
using the server connection channel TEST.SVRCONN
on connection name martini(80).
MQCONNX ended with reason code 2059
|
Color me puzzled. |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Oct 03, 2007 9:52 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
That means that you are actually connecting to the listener, and a listener for the right queue manager.
You can either open a PMR or start digging into MQ client and server tracing on your own.
I'm puzzled too. I'd still tend to suspect something in the network, perhaps something trying to analyze and approve "http" traffic. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
PeterPotkay |
Posted: Wed Oct 03, 2007 10:05 am Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
the channel name could be wrong....
the QM could have hit max channels...
the channel could be stopped...
these scenarios could cause a 2059 even though the client is getting to the QM _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
aboggis |
Posted: Wed Oct 03, 2007 10:15 am Post subject: |
|
|
 Centurion
Joined: 18 Dec 2001 Posts: 105 Location: Auburn, California
|
Peter, While you are correct thoser scenarios could cause a 2059, in this case... I don't think so.
I have checked, double checked and even triple checked the names (and if I move the listener to a different port everything works - same QM, same channel name).
Unless something changed in MQ recently that I am not aware of (possible!), then a single client process (amqsputc) is unlikely to max out the channel count (defaults used).
Channel state is "Inactive" - indicating that no client has connected. Not stopped, or retrying or binding, but "Inactive". Once again, using a difference listener port and it works fine. |
|
Back to top |
|
 |
PeterPotkay |
Posted: Wed Oct 03, 2007 10:23 am Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
Welp, PMR time I suppose. I'm outta ideas. Let us know what you find.
Do you get anything in the QM error log when you try the amqscnxc test? _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
|