RestComm / media-core

RMS - Restcomm Media Server for Real Time Cloud Communications
http://www.restcomm.com/
GNU Affero General Public License v3.0
162 stars 124 forks source link

Expose MS external address on MGCP Endpoints #160

Open hrosa opened 8 years ago

hrosa commented 8 years ago

If Media Server is configured to expose a public address, then this address should be bound to the MGCP endpoints as well. Currently, the endpoints are always bound to the private address.

If Media Server is installed in a different server than RestComm and it only exposes the private address as result of MGCP operations, then this may cause interop issues with RestComm:

The attached pcap remoteRMS1RC.pcap shows an example of the problem.

hamsterksu commented 8 years ago

seems we have similar issue in aws env.

In aws env to integrate with external mediaserver on Restcomm side you should provide private and public ip addresses of mediaserver

MS_ADDRESS should be private ip address of mediaserver MEDIASERVER_EXTERNAL_ADDRESS - public address of mediaserver

so MGCP will use private network

hrosa commented 8 years ago

Correct @hamsterksu But that only works for AWS scenario if servers belong to same network. Otherwise, we must expose the public address of the media server.

hrosa commented 8 years ago

A new configuration parameter should be added to MS configuration file, to rule which address (private or public) should be used as domain name for MGCP endpoints. This will be necessary to cope with every possible deployment scenario.

gvagenas commented 8 years ago

A very common topology that we need to support is the fillowing:

"Restcomm and RMS on the same server, restrictive firewall rules, SIP ports open for Restcomm, RTP range open for RMS. RMS uses external ip address bur MGCP traffic is only possible on the LAN. This is very common topology and if RMS will use external address for MGCP there will be a problem In this topology, Restcomm will use internal ip address of RMS to reach it so the MGCP stack will initialized on the internal ip address"