Skip to main content
Inspiring
March 23, 2011
Answered

Streams internally but not externally.

  • March 23, 2011
  • 2 replies
  • 1304 views

We have FMS 3 on a server I'll call "Streamer"  We have a public webserver running IIS on a server I'll call "Web Server".  We host our website on Web Server, and both Streamer and Web Server are behind our firewall.

I made a page on Web Server with a flash file that has a Player which goes to rtmp://Streamer:1935/vod/media/steaming_video.flv

When we navigate to www.domain.com/test.html (which has the embedded video) from inside the network, we get the video streamed to us.  However, when we get a laptop with an aircard connection up (to simulate a request from the web), the user gets a blank flash file with no video whatsoever.

On Streamer, the log file shows the IP address of my PC (the PC that made the request from the video inside the network) so that makes sense.  But it shows no other request being made (like when the laptop/aircard made the request from the web).

We used wire shark and sure enough it showed that from Web Server to Streamer, there was traffic when it packet captured the internal request.  But there was no traffic when the public request was made.

Our troubleshooting with our firewall company stated this issue is not a fault of any rule in the firewall, and say the error exists at the "application" level.  Does anyone have any suggestions I can try?

    This topic has been closed for replies.
    Correct answer

    Ok... there's the issue. The thing to understand is that the connection to FMS comes from the client, not from the web server (there is no relationship between the web server and the FMS server)

    So, you'll need a WAN IP the outside world will use to access your FMS, and that WAN IP should NAT to the  FMS LAN IP.

    2 replies

    Inspiring
    March 23, 2011

    Is the option to allow the stream to buffer first or, better yet, automatically determine the downloading speed and determine when to start playback or is this outside the scope of FMS?

    (BTW, we got the FMS successfully setup to request to both public/private requests, thanks!)

    March 24, 2011

    Buffering happens on the client side. You can adjust the bufferTime property of your netstream to increase or decrease the amount of data to buffer.

    Testing bandwidth between the client and server involves code on both the client side and the server side. FMS has a "built in" bandwidth detection setup whereby it sends some data to the client and times how long it takes to respond. Have a look at the sample applications that ship with FMS, I think the required code is illustrated in there somewhere.

    March 23, 2011

    some questions:

    1. I am assuming the "streamer" server is behind NAT or a router. Is the network configured to route requests to port 1935 on the external IP to the streamer local IP?

    2. What IP is FMS configured to bind to? All IP's, or a specific IP. If the later, is it binding to the correct IP for NAT or port forwarding from the WAN IP?

    Inspiring
    March 23, 2011

    Hey Jay, thanks for the response.

    1. Yes the streaming server is behind a NAT/router.  But, no, the router is configured to NAT to the web server.  Port 1935 is open on the web server.

    2. The FMS is running on the LAN IP address of the Steaming Server.  To my knowledge, there is currently no NAT to the LAN IP address of the FMS from the WAN IP.  The NAT goes to the web server, and the web server uses the embeded rtmp://streamer:1935/vod/media/file.flv to get the stream.

    Correct answer
    March 23, 2011

    Ok... there's the issue. The thing to understand is that the connection to FMS comes from the client, not from the web server (there is no relationship between the web server and the FMS server)

    So, you'll need a WAN IP the outside world will use to access your FMS, and that WAN IP should NAT to the  FMS LAN IP.