Updating IP of machine - freeswitch failure

37 views
Skip to first unread message

RichP10

unread,
Mar 11, 2020, 5:00:29 PM3/11/20
to BigBlueButton-Setup
I have succesfully installed with install.sh with everything working. Latest version, on clean xenial. 

For my use case, I need to be able to update the IP address of the machine (these are virtual servers) and also the hostname. 

I run --setip with the new hostname and I have scripted sed's to replace remaining IP addresses in the config files.  

I think I have found them all; but on restarting bbb - I get an error (and a 1002 error when connecting audio): 

# Error: Could not detect FreeSWITCH listening on port 5060

I used netstat to compare this server with the original (before the IP change - and all working) - it appears that freeswitch is binding only to ipv6 interface. 

netstat -tulpn | grep 5060

### WORKING

tcp        0      0 10.154.0.9:5060         0.0.0.0:*               LISTEN      -               
tcp6       0      0 ::1:5060                :::*                    LISTEN      -               
udp        0      0 10.154.0.9:5060         0.0.0.0:*                           -               
udp6       0      0 ::1:5060                :::*                                -   

## NOT WORKING - su

tcp6       0      0 ::1:5060                :::*                    LISTEN      -               
udp6       0      0 ::1:5060                :::*    

# Using bbb-conf --debug, I see an error that looks relevent: 

# /opt/freeswitch/var/log/freeswitch/freeswitch.log

2020-03-11 20:27:33.626576 [ERR] sofia.c:3254 Error Creating SIP UA for profile: external (sip:mod_...@34.69.89.44:5060;maddr=10.128.0.6;transport=udp,tcp)
The likely causes for this are:
1) Another application is already listening on the specified address.
2) The IP the profile is attempting to bind to is not local to this system.

I have confirmed that the 'maddr' value is the local IP address and the mod_sofia@xxxx:5060 is the external one. 

(I tried the suggestion under the documents "FreeSWITCH fails to bind to IPV4" - and it made no difference. Made sure freeswitch was properly shut down, nothing listening on 5060 before restart. )

Both show the correct external IP in external.xml
/opt/freeswitch/etc/freeswitch/sip_profiles/external.xml (FreeSWITCH)
                        ext-rtp-ip: $${external_rtp_ip}
                        ext-sip-ip: $${external_sip_ip}
                        ws-binding: :5066
                       wss-binding: externalip:7443

So I *think* I am looking for a setting which tells freeswitch to bind to the internal IP:5060 as well as ::1:5060

I tried clearing the freeswitch database as recomended in the docus for failure to bind to ipv4 - but it made no difference. 

Thanks for any pointers..

R

Chad Pilkey

unread,
Mar 11, 2020, 5:32:11 PM3/11/20
to BigBlueButton-Setup
What about the --check output for FreeSWITCH vars.xml.

The FreeSWITCH log lists the two likely causes. The IP that it's trying to bind to isn't assigned to a network adapter on that server or something else is already binding to that port. The former is the most likely option. You can also restart freeswitch on its own for quicker testing.

RichP10

unread,
Mar 12, 2020, 4:09:53 AM3/12/20
to BigBlueButton-Setup
Thanks for that - I found the problem. 

install.sh creates /lib/systemd/system/dummy-nic.service and hard codes the IP address, so the dummy NIC is trying to bind to an out of date address. 

I sorted the problem by running this: 

/sbin/ip addr add $(dig +short myip.opendns.com @resolver1.opendns.com) dev lo

It might work to have this within the dummy-nic.service but I have not tested it yet. If it worked, it might be worth a code tweak to head off the likelihood of this problem arising in future. 

Thanks again..

R




Reply all
Reply to author
Forward
0 new messages