More than two users results in no video [AWS EC2]

I have a Jitsi-meet installation on an AWS EC2 instance and p2p video works but 3 users (videobridge) does not work. I see the users appear in the room but there is no video or audio.

It seems videobridge2 is running but possibly misconfigured.

I have tried the configuration steps found here but it does not help.

Here is the log when jitsi-videobridge2 is restarted:

Here is the log when a user joins:

Make sure your jvb is using the correct public address (the public address of the machine)? grep -i harvest /var/log/jitsi/jvb.log These logs are printed once after restart.
Make sure that port udp 10000 is opened for incoming connections in your security group.
Make sure there is no firewall running.

It appears to be using the internal private address. How can I change it to use the public address?

Use:

NAT_HARVESTER_LOCAL_ADDRESS

and

NAT_HARVESTER_PUBLIC_ADDRESS

As described here:

I had already made those changes. But When I run grep -i harvest /var/log/jitsi/jvb.log I get the following. (the local/private IP appears)

    2020-04-18 01:09:16.460 INFO: [18] org.ice4j.ice.harvest.AbstractUdpListener.<init>: Initialized AbstractUdpListener with address 172.31.5.112:10000/udp. Receive buffer size 10485760 (asked for 10485760)
    2020-04-18 01:09:16.460 INFO: [18] org.ice4j.ice.harvest.SinglePortUdpHarvester.<init>: Initialized SinglePortUdpHarvester with address 172.31.5.112:10000/udp
    2020-04-18 01:09:46.192 INFO: [17] org.ice4j.ice.harvest.MappingCandidateHarvesters.initialize: Using org.ice4j.ice.harvest.MappingCandidateHarvester, face=null, mask=/18.144.162.197
    2020-04-18 01:09:46.195 INFO: [17] org.ice4j.ice.harvest.MappingCandidateHarvesters.initialize: Initialized mapping harvesters (delay=18ms).  stunDiscoveryFailed=false
    2020-04-18 01:09:56.522 INFO: [18] org.ice4j.ice.harvest.AbstractUdpListener.<init>: Initialized AbstractUdpListener with address 172.31.5.112:10000/udp. Receive buffer size 10485760 (asked for 10485760)
    2020-04-18 01:09:56.522 INFO: [18] org.ice4j.ice.harvest.SinglePortUdpHarvester.<init>: Initialized SinglePortUdpHarvester with address 172.31.5.112:10000/udp

Here is the contents of my /etc/jitsi/videobridge/sip-communicator.properties file.

org.ice4j.ice.harvest.DISABLE_AWS_HARVESTER=true
org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS=192.168.123.456
org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS=<my public IP address>
#org.ice4j.ice.harvest.STUN_MAPPING_HARVESTER_ADDRESSES=meet-jit-si-turnrelay.jitsi.net:443
org.jitsi.videobridge.ENABLE_STATISTICS=true
org.jitsi.videobridge.STATISTICS_TRANSPORT=muc
org.jitsi.videobridge.xmpp.user.shard.HOSTNAME=localhost
org.jitsi.videobridge.xmpp.user.shard.DOMAIN=auth.meet.vevomo.com
org.jitsi.videobridge.xmpp.user.shard.USERNAME=jvb
org.jitsi.videobridge.xmpp.user.shard.PASSWORD=4eyVrhbu
org.jitsi.videobridge.xmpp.user.shard.MUC_JIDS=JvbBrewery@internal.auth.meet.vevomo.com
org.jitsi.videobridge.xmpp.user.shard.MUC_NICKNAME=a90b5948-fe9d-4819-a925-56afb56d60b1

If I uncomment org.ice4j.ice.harvest.STUN_MAPPING_HARVESTER_ADDRESSES=meet-jit-si-turnrelay.jitsi.net:443
or set org.ice4j.ice.harvest.DISABLE_AWS_HARVESTER=false

I do see the public IP appear in the log but I still get no video via videobridge.

If I comment out org.ice4j.ice.harvest.DISABLE_AWS_HARVESTER=true
and org.ice4j.ice.harvest.STUN_MAPPING_HARVESTER_ADDRESSES=meet-jit-si-turnrelay.jitsi.net:443

It is detected that this is an AWS server and the public IP is detected. From the log:

Still I get no video via the videobridge.

yes I have the same problem too and in same aws server :frowning:

1 Like

I have had issues before with AWS EC2 where the private IP was getting used by a Plesk rdnc extension for DNS propagation where it should have been the public IP.

I suspect there is some clue to resolving this in that the following lines from the jvb.log show that the private IP is getting used for initializing the AbstractUdpListener (despite the AWS harvester finding the public IP).

2020-04-18 10:38:25.041 INFO: [18] org.ice4j.ice.harvest.AbstractUdpListener.<init>: Initialized AbstractUdpListener with address 172.31.5.112:10000/udp. Receive buffer size 10485760 (asked for 10485760)
2020-04-18 10:38:25.042 INFO: [18] org.ice4j.ice.harvest.SinglePortUdpHarvester.<init>: Initialized SinglePortUdpHarvester with address 172.31.5.112:10000/udp

@damencho any thoughts on this?

Private is always used, the important is to have the public one also listed .

Any thoughts to why the videobridge is not passing video? Or is this the problem? If I enable p2p I get video but if p2p is disabled or more than 2 users are in a room the video does not pass. This leads me to believe videobridge is not working. As can be seen in the log snippet below the AWS harvester is finding the public IP address. (1.2.3.4 substituted for public IP)

What does your security group looks like? In and out?

1 Like

Thank you!
That was it, I thought I had a wide open security group but it was All traffic IN and All TCP out.
UDP was not open. All is working now!

1 Like

I have the same problem, but i already allow the udp 10000 in the inbound, am I doing anything wrong?

Allow All traffic on the outbound. See if that helps.

already done that in http and https and I setup using ip for the hostname , is that affected?

You need to allow outbound UDP traffic.

let me test this one! thank you!