大型企业、医院、高校、银行等安全需求较高的机构会部署防火墙将办公环境与外网隔离开来,保护内部信息安全。
为避免这些企业用户因防火墙无法使用 Agora 的服务,Agora 提供云代理服务。你只需将特定的 IP 及端口加入防火墙白名单,就可以实现内网访问 Agora 服务。
Agora 云代理的工作原理如下:
Agora Web SDK v2.5.1 及以上版本支持使用云代理。
联系 sales@agora.io,提供 App ID,并提供代理服务使用区域、并发规模、网络运营商等信息,申请开通云代理服务。
将以下测试 IP 及端口添加到企业防火墙的白名单。
源地址为集成了 Agora Web SDK 的客户端。
协议 | 目标地址 | 端口 | 端口用途 |
---|---|---|---|
TCP | 150.138.153.78 | 443, 4000 3433 - 3460 |
消息数据传输 媒体数据交换 |
TCP | 47.74.211.17 | 443 | 边缘节点通信 |
TCP | 52.80.192.229 | 443 | 边缘节点通信 |
TCP | 52.52.84.170 | 443 | 边缘节点通信 |
TCP | 47.96.234.219 | 443 | 边缘节点通信 |
UDP | 150.138.153.78 | 3478 - 3500 | 媒体数据交换 |
协议 | 目标地址 | 端口 | 端口用途 |
---|---|---|---|
TCP | 23.236.115.138 | 443, 4000 3433 - 3460 |
消息数据传输 媒体数据交换 |
TCP | 69.28.51.149 | 443, 4000 3433 - 3460 |
消息数据传输 媒体数据交换 |
TCP | 164.52.87.25 | 443, 4000 3433 - 3460 |
消息数据传输 媒体数据交换 |
TCP | 47.74.211.17 | 443 | 边缘节点通信 |
TCP | 52.80.192.229 | 443 | 边缘节点通信 |
TCP | 52.52.84.170 | 443 | 边缘节点通信 |
TCP | 47.96.234.219 | 443 | 边缘节点通信 |
UDP | 23.236.115.138 | 3478 - 3500 | 媒体数据交换 |
UDP | 164.52.87.25 | 3478 - 3500 | 媒体数据交换 |
UDP | 69.28.51.149 | 3478 - 3500 | 媒体数据交换 |
调用 startProxyServer
方法打开云代理功能,测试是否能正常实现音视频通话或直播。
测试完成后,Agora 会为你部署云代理服务正式环境,并提供相应的 IP 和端口。将 Agora 提供的 IP 和端口添加到企业防火墙的白名单。
如果需要关闭代理,调用 stopProxyServer
。
var client = AgoraRTC.createClient({mode: 'live',codec: 'vp8'});
// 开启云代理
client.startProxyServer();
// 加入频道
client.init(key, function() {
client.join(channelKey, channel, null, function(uid) {
.......
})
})
// 开启云代理并加入频道后
...
// 离开频道
client.leave();
// 关闭云代理服务
client.stopProxyServer();
// 重新加入频道
client.join(channelKey, channel, null, function(uid) {
...
}
startProxyServer
和 stopProxyServer
必须在加入频道前或离开频道后调用。setProxyServer
和 setTurnServer
两个方法给用户自行部署代理服务器。这两个方法与 startProxyServer
不可同时调用,调用了其中任一个方法,再调用 startProxyServer
会报错,反之亦然。stopProxyServer
会关闭所有代理服务,包括通过 setProxyServer
和 setTurnServer
设置的代理。