FMS (端口问题)如何穿透防火墙
先1111
是管理端口,就是fms2_console文件连接到server远程管理的时候需要用到的。
首先明确关系:
-
RTMP
(默认端口:1935
)
-
RTMPT
( http 隧道 - 默认端口: 80
)
-
RTMPS
( https 隧道- 默认端口: 443
)
-
nc.connect( "rtmp
://127.0.0.1:1935
/myapp");
-
nc.connect( "rtmpt
://
127.0.0.1
:80
/myapp");
-
nc.connect( "rtmps
://
127.0.0.1
:443
/myapp");
rtmps
用得很少。。。
连接为难题:
fms_nc.connect("rtmp://127.0.0.1/test");
这行代码会自动尝试RTMP:1935 以及 RTMPT:80 两种连接方式。
如果你想提高效率,指定端口来连接,那么就这样写:
fms_nc.connect("rtmp://127.0.0.1:1935
/test"); 这样他不会再尝试其他端口。说明:127.0.0.1是本地网关地址
当然你会问如果要改成其他端口,在哪里可以更改:
X(c/d..):\Program Files\Macromedia\Flash Media Server 2\conf\_defaultRoot_\Adaptor.xml
第42行:
修改为:<HostPort>:1935,443,8080
</HostPort>或者你想要的:<HostPort>:8080,80
</HostPort>
如果你的server有多个ip:
<HostPort>XXX.XXX.XXX.XXX:1935, 443, 80
</HostPort>
然后重启FMS(先stop,再start),如果你的iis或者web站点占用了80
,那么会报错,更改端口为空闲的端口。
协议:
rtmp
全名为:real time message protocol
如果rtmp
的连接方式失败(通常是防火墙阻止了该协议),那么flash可以使用rtmpt
协议来建立
HTTP tunneling.
fms_nc.connect("rtmpt://ip/test")
就可以连接成功了。
若防火墙关闭了1935
,只允许80
端口。那么此时你需要这么写:fms_nc.connect("rtmpt://ip:80/test")
防火墙允许1935、80
端口。
服务器端我们如果可以控制,当然会尽可能的打开常用端口,当然也会允许rtmp协议。如果问题出现在客户端呢?看下图:
客户端只允许80端口,那么此时只有80端口可以连接成功。
总结:
鉴于客户端端口以及协议的不确定性,你需要准备好处理各种情况:
思路如下:
1、<HostPort>:1935,8080,80</HostPort>
2、默认使用rtmp协议以及1935、8080、80来连接,尝试2次。如果仍然failed,那么:
3、使用rtmpt协议(HTTP tunneling)来连接。
//开始
fms_nc.connect("rtmp://127.0.0.1/test"); //会自动尝试可以使用的端口
//在onStatus函数里面监测状态 如果连续两次failed,
fms_nc.connect("rtmpt://127.0.0.1:8080/test")
//结束
通过HTTP tunneling建立的连接在传输视频的时候会不稳定,所以你要时刻监测nc的状况,如果断开要自动重连,简单的办法就是通过js刷新页面。
分享到:
相关推荐
【流媒体服务器——FMS3教程】 在信息技术领域,流媒体服务器扮演着至关重要的角色,它们使得音频、视频等多媒体内容能够实时传输到用户的设备上,无需等待整个文件下载完毕。Adobe Flash Media Server(FMS)是...
《全套FMS流媒体系统管理与开发文档中文版》涵盖了Adobe Flash Media Server(FMS)的全面知识,是深入理解和操作这一流媒体平台的重要资源。本文将深入解析这些文档所包含的关键知识点,帮助读者掌握FMS的核心技术...
Flash Media Server (FMS) 是Adobe公司推出的一款强大的多媒体服务器,主要用于实时流媒体传输、互动应用程序的开发与管理。本教程将深入探讨如何管理和利用FMS进行高效的内容发布,以及如何开发基于Flash的媒体应用...
- **服务器设置**:FMS需要在服务器端安装,配置包括服务器端口、流媒体发布点、权限设置等。 - **应用创建**:通过FMS管理控制台,开发者可以创建应用程序,如聊天室,定义其功能和逻辑。 - **负载均衡**:对于...
3. **安装与配置**:这部分会指导用户如何下载、安装FMS2.0,并进行基本的系统配置,如设置端口、服务器地址、权限等。 4. **语言支持**:作为“fms端语言概述”,文档会详细介绍FMS2.0如何支持中文界面,包括菜单...
- **基本服务器设置**:安装FMS后,需进行基本的服务器配置,包括设置服务器端口、指定日志位置、定义应用程序路径等。 - **创建开发环境**:为了开发和调试FMS应用,需要配置合适的开发环境,包括Flash ...
**Flash Media Server (FMS) 是一款由Adobe公司开发的流媒体服务器软件,主要用于实时音频、视频的发布、录制和互动。本资料旨在提供Flash Media Server的配置与开发基础,帮助初学者快速入门。** ## 一、Flash ...
RED5开源FLASH流媒体服务器是一种类似Adobe Flash Media Server (FMS)的解决方案,它提供了实时流传输服务,支持多种媒体格式,并且完全免费且开放源码。RED5由Java编写,因此具有跨平台的特性,可以在运行Java环境...
FMS(Flash Media Server)是Adobe公司推出的一款强大的流媒体服务器,它为开发者提供了一种高效、稳定的方式来实现这样的功能。本教程将详细介绍如何利用FMS构建一个简单的视频聊天程序。 【描述】:“利用FMS实现...
Flash Media Server (FMS) 是Adobe公司推出的一款流媒体服务器软件,主要用于实时音频、视频的发布和交互。这个入门教程将带你逐步了解FMS的基本概念、安装过程、配置方法以及如何利用它进行多媒体内容的传输。 一...
FMS(Flash Media Server)是由Adobe公司推出的一款多媒体服务器,主要用于流媒体服务,支持实时音频、视频传输以及数据交互。FMS3作为其第三个主要版本,提供了许多增强的功能和优化,为开发者和内容提供商提供了更...
FMS(Flash Media Server)3.5.2 是 Adobe Systems 开发的一款功能强大的流媒体服务器软件。它主要用于提供高质量的实时视频传输服务,支持多种格式,包括 FLV 和 F4V 文件等。FMS 3.5.2 版本是在原有的基础上进行了...
1. **安装与配置**:指导如何在服务器上安装FMS3,并配置服务器设置,包括端口设置、权限配置等。 2. **基础概念**:解释RTMP协议、流媒体、数据服务等基本概念,帮助读者理解FMS3的工作原理。 3. **AS3 API**:详细...
4. 启动服务器:启动FMS2服务,使其监听指定的端口并准备接受连接。 5. 运行NCTest.swf:使用Flash Player或相关的开发工具运行NCTest.swf。这个程序应该能够成功连接到本地运行的FMS服务器,并输出日志信息。 6. ...
FMS服务器是Adobe提供的用于实时媒体流处理的服务。安装过程通常包括以下几个步骤: 1. 下载FMS服务器软件包。 2. 在服务器上运行安装程序,按照向导指示进行。 3. 配置服务器,包括设置许可证、指定监听端口等。 4...
FMS是一种强大的流媒体服务器,用于实时流传输、录制、播放和交互式应用程序。在开发使用Flex与FMS交互的应用时,可能会遇到这些常见问题。 1. **访问FMS连接失败(NetConnection.Connect.Failed)** 当遇到此错误...
Flash Media Server(FMS)3是Adobe公司推出的一款强大的流媒体服务器软件,它在Web上提供实时的音频、视频内容分发和服务,广泛应用于在线直播、点播、互动应用等领域。本文将基于提供的“Flash Media Server的安装...
使用 Windows Media Server 建立流媒体服务器 Windows Media 是一整套的流媒体制作、发布的播放产品。目前最新的 Windows Media 9 技术携带着大量的新特性并在 Windows Media Player 的配合下表现已经不可同日而语...