To allow users to use the Agora RTC Native SDK in environments with restricted network access, Agora provides a cloud proxy. Users only need to add specific IP addresses and ports to the firewall whitelist, and call the API to configure the Agora cloud proxy service.
Download the Agora RTC Native SDK.
Integrate the SDK and prepare the development environment. For details, see QuickStart Guide.
Contact Agora technical support and provide the following information:
Refer to the corresponding table according to the SDK version you are using, add all the IP addresses and ports in the table to your firewall whitelist.
When using the UDP cloud proxy, whitelist the following addresses and ports:
Protocol | Destination IP address | Port | Comment |
---|---|---|---|
UDP | 140.210.77.68 (Mainland China) | 8443 | Used to access the signaling service |
UDP | 125.88.159.163 (Mainland China) | 8443 | Used to access the signaling service |
UDP | 128.1.87.146 (Asia, excluding Mainland China) | 8443 | Used to access the signaling service |
UDP | 128.1.77.34 (Europe) | 8443 | Used to access the signaling service |
UDP | 128.1.78.146 (Europe) | 8443 | Used to access the signaling service |
UDP | 69.28.51.142 (North America) | 8443 | Used to access the signaling service |
UDP | 107.155.14.132 (North America) | 8443 | Used to access the signaling service |
UDP | 106.3.140.194 (Mainland China) | 8001 - 8005, 4590 - 4600 | Used to access the media service (for testing purposes only) |
UDP | 106.3.140.195 (Mainland China) | 8001 - 8005, 4590 - 4600 | Used to access the media service (for testing purposes only) |
UDP | 164.52.53.77 (Asia, excluding Mainland China) | 8001 - 8005, 4590 - 4600 | Used to access the media service (for testing purposes only) |
UDP | 164.52.53.78 (Asia, excluding Mainland China) | 8001 - 8005, 4590 - 4600 | Used to access the media service (for testing purposes only) |
UDP | 128.1.78.94 (Europe) | 8001 - 8005, 4590 - 4600 | Used to access the media service (for testing purposes only) |
UDP | 148.153.53.105 (North America) | 8001 - 8005, 4590 - 4600 | Used to access the media service (for testing purposes only) |
UDP | 148.153.53.106 (North America) | 8001 - 8005, 4590 - 4600 | Used to access the media service (for testing purposes only) |
Protocol | Destination IP address | Port | Comment |
---|---|---|---|
TCP | 47.74.211.17 | 1080, 8000, 25000, 9700 | Used to access the signaling service |
TCP | 52.80.192.229 | 1080, 8000, 25000, 9700 | Used to access the signaling service |
TCP | 52.52.84.170 | 1080, 8000, 25000, 9700 | Used to access the signaling service |
TCP | 47.96.234.219 | 1080, 8000, 25000, 9700 | Used to access the signaling service |
UDP | 47.74.211.17 | 1080, 8000, 25000, 9700 | Used to access the signaling service |
UDP | 52.80.192.229 | 1080, 8000, 25000, 9700 | Used to access the signaling service |
UDP | 52.52.84.170 | 1080, 8000, 25000, 9700 | Used to access the signaling service |
UDP | 47.96.234.219 | 1080, 8000, 25000, 9700 | Used to access the signaling service |
TCP | 120.92.118.34 | 4000 | Used to access the media service (for testing purposes only) |
TCP | 120.92.18.162 | 4000 | Used to access the media service (for testing purposes only) |
UDP | 120.92.118.34 | 4500 - 4650 | Used to access the media service (for testing purposes only) |
UDP | 120.92.18.162 | 4500 - 4650 | Used to access the media service (for testing purposes only) |
For SDKs v3.3.0 or later, you can call setCloudProxy
to enable cloud proxy.
After adding the whitelist, call setCloudProxy
, and set proxyType
as UDP_PROXY(1)
.
Test the audio and video call functionality.
To disable the cloud proxy service, call setCloudProxy
and set proxyType
as NONE_PROXY(0)
.
For SDKs v3.2.1 or earlier, you can call setParameters
to enable cloud proxy.
After adding the whitelist, refer to the following sample code to enable cloud proxy:
// Enables the cloud proxy server and configures the service by default.
setParameters("{\"rtc.enable_proxy\":true}");
Test the audio and video call functionality.
To disable the cloud proxy service, call setParameters("{\"rtc.enable_proxy\":false}");
.
setCloudProxy
before using the cloud proxy function. For example, if you need to enable cloud proxy to join a channel, call setCloudProxy
before joinChannel
. If you need to enable cloud proxy to conduct a lastmile test, call setCloudProxy
before startLastmileProbeTest
. The settings of setCloudProxy
takes effect within the lifecycle of RtcEngine
.