Unable to remotely access streaming engine

Hello,

I’m new to Wowza streaming engine, but I have read and watched every piece of tutorial regarding installing the Wowza streaming engine on a local machine, in my case Azure Windows cloud machine.

  1. I went through the tutorial about setting up an Azure machine with Wowza engine installed and it worked -checked!

  2. I was able to login to the engine from the local machine (Azure) and from outside [my-azure-machine-ip]:8088 - checked!

  3. I went through the tutorial about setting up the REST API, and the documentation server, I edited the Server.xml as instructed and indeed from the local machine (localhost:8089) I was able to connect to the documentation server, using Swagger, and also I was able to connect to port 8087 which is the REST API server - checked!

  4. And now the issue - when I try to connect to my Azure machine public IP from outside with the 8087 and 8089 ports I get connection timed out (remember 8088 worked, and from localhost all 3 ports worked!).

It doesn’t stop here- I tried from the Azure machine itself to connect to the above ports but instead of using localhost I used the outside IP of itself - again connection timed out (8088 is the only port that is working).

I checked the Windows firewall settings and it’s all good. Ports are open. (Remember localhost with those ports worked)

It is not a CORS issue because the respond is time out, and I configured correctly the CORS headers.

I also whitelisted my office’s IP and 127.0.0.1, I even tried to use * in the IP whitelist in the Server.xml and still no go.

I need your help to direct me to what I’m missing, because I need to access the REST API from outside the local machine, and to do so I need the public IP of the machine to be accessible when connecting to ports 8087 and 8089

I’m including the Server.xml REST part:

true

*

8087

none

true

false

JKS

TLS

SunX509

*

false

true

8089

none

restUserHTTPHeaders

Access-Control-Allow-Origin:*|Access-Control-Allow-Methods:OPTIONS,GET,PUT,DELETE,POST|Access-Control-Allow-Headers:Content-Type

Thanks in advance,

Uri

Hello again,

I continued my testing and I’m starting to believe that the IPWhiteList property doesn’t work for us.

Because the only two ports that don’t work from the public IP are the API’s 8087, 8089

The other 8088, 1935 do work from the public IP.

Please advice…

Hi,

It is odd that you are getting a connection timeout, rather than any other type of rejection.

It suggests a connectivity issue.

A simple test would be to telnet from your client to that server : port just to rule that out

and/or to check that there’s a listener on that port for all interfaces.

You could even use a browser to do the check:

http://[wowza-ip]:8087 (or 8089). It should return the version number if accessible, or a blocked message if not.

Daren

Uri, thank you for the update and for sharing your solution with the community. Glad to hear this is resolved.

Regards,

Salvadore

Hi Daren, thank you for your reply, I just figured and fixed the issue few hours ago.

It is important to note because this issue might happen to others:

The issue was a firewall issue but not from the Windows VM firewall but rather the firewall you set from the Azure control panel.

I installed the Azure using your tutorial which send to the Marketplace.

The automatic Azure-Wowza bundle setup the firewall with not all the necessary ports.

This is something you should fix because others might encounter this issue.

Indeed it had all the ports that were working to me open and the ones that were missing were 8087 and 8089.

I guess the Wowza team didn’t pre configure them because they are not mandatory to be open to outside communication but it is worth mentioning in the tutorial!

Hope it will help others,

Uri