<div dir="ltr"><div>Since a couple of people said they were interested in Big Blue Button, this is an issue that you might actually come across, though hopefully not frequent.... and how I fixed it</div><div><br></div><div><br></div><div><br></div><div>++ Problem description</div><div><br></div><div>When trying to share either webcams or screen shares, the attempt fails with an error message in the client:<br></div><div><br></div><div>"Error 1020 : media could not connect"</div><div><br></div><div>The effect is that no actual video sharing is possible, even if audio and slides are working fine.<br></div><div><br></div><div>++ Underlying issue</div><div><br></div><div>The problem is due to the use of public STUN servers, and an old issue got renewed interest just a few days ago:<br></div><div><br></div><div><a href="https://github.com/bigbluebutton/bigbluebutton/issues/6797#issuecomment-653735722">https://github.com/bigbluebutton/bigbluebutton/issues/6797#issuecomment-653735722</a></div><div><br></div><div>It turns out that Big Blue Button does its setup using a public STUN server - the one in my config was from Google - and that the configured server in question simply stopped operating as a STUN server... a few days ago. (so it wasn't my fault after all !!! :-P)<br></div><div><br></div><div>Because Big Blue Button likes using IPs instead of domain names, BBB was not able to follow to where Google had moved the server to, IP-wise.<br></div><div><br></div><div>++ What is STUN</div><div><br></div><div>As far as I understand, a STUN server allows a client behind a NAT to know what its external IP address is, as well as some information about the gateways between it and the Internet, to be able to build UDP packets properly. I must presume that both the HTML5 client (in browser) and the BBB server (behind its NAT sometimes) both use the STUN server to be able to establish their mutual connection.<br></div><div><br></div><div><a href="https://www.3cx.com/pbx/what-is-a-stun-server/">https://www.3cx.com/pbx/what-is-a-stun-server/</a></div><div><a href="https://en.wikipedia.org/wiki/STUN">https://en.wikipedia.org/wiki/STUN</a></div><div><a href="https://www.ietf.org/rfc/rfc3489.txt">https://www.ietf.org/rfc/rfc3489.txt</a></div><div><br></div><div>++ Resolution</div><div><br></div><div>1. See a public list of STUN servers <a href="https://gist.github.com/sagivo/3a4b2f2c7ac6e1b5267c2f1f59ac6c6b">https://gist.github.com/sagivo/3a4b2f2c7ac6e1b5267c2f1f59ac6c6b</a></div><div><br></div><div>I chose to use the University of Nottingham's server because it's UK based, to potentially reduce latency.<br></div><div><br></div><div><a href="http://stun.nottingham.ac.uk:3478">stun.nottingham.ac.uk:3478</a></div><div><br></div><div>2. Get the IP address of that STUN server - because BBB doesn't like DNS names</div><div><br></div><div style="margin-left:40px"><span style="font-family:monospace">$> <span style="color:rgb(153,0,255)">nslookup <a href="http://stun.nottingham.ac.uk">stun.nottingham.ac.uk</a></span></span></div><div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div><br></div><div>---> 128.243.40.39</div><div><br></div><div>3. On the BBB server edit "<span style="color:rgb(106,168,79)">/etc/kurento/modules/kurento/WebRtcEndpoint.conf.ini</span>"<br></div><div><br></div><div>Locate the uncommented lines configuring stunServerAddress and stunServerPort</div><div><br></div><div>Comment them out and replace them with the new STUN server IP and port:</div><div><br></div><div style="margin-left:40px"><span style="color:rgb(153,0,255)"><span style="font-family:monospace">;; New config<br>;; Using Uni of Nottingham (need to use IP address)<br>;; <a href="http://stun.nottingham.ac.uk:3478">stun.nottingham.ac.uk:3478</a><br>stunServerAddress=128.243.40.39<br>stunServerPort=3478</span></span><br></div><div><br></div><div>4. Save and reboot BBB server</div><div><br></div><div style="margin-left:40px"><span style="font-family:monospace">$> <span style="color:rgb(153,0,255)">sudo bbb-conf --restart</span></span><br></div><div><br></div><div><br></div><div>It works again now for me.</div><div><br></div><div>Is anybody here in the networking line of work? I'm a little confused about what specifically happens once a (3rd party) STUN server is queried - how does that become a connection between NAT'd hosts....?</div><div><br></div><div><br></div><div>Tai<br></div><div><br></div><div>===<br>Tai Kedzierski<br></div><div>Linux Operations and Deployments Engineer<br></div><br><div dir="ltr"><span></span><font size="1"><br>I use <a href="https://www.libreoffice.org/" target="_blank">LibreOffice</a> , a free, Freedom-respecting replacement for MS Office<br><br><i>Open Source Free Software is a matter of liberty, not price.</i><br>
<a href="https://www.fsf.org/about/what-is-free-software" target="_blank">https://www.fsf.org/about/what-is-free-software</a><br></font><font size="2"><br></font></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>