Описание ошибки =============== 1. Настроить сервер с freeswitch: # apt-get install -y freeswitch-daemon freeswitch-lang-ru freeswitch-sounds-ru-ru-elena-* # sed -i "/default_password/s/1234/Pa##word/" /etc/freeswitch/vars.xml # sed -i "s/<include>/<include>\n<X-PRE-PROCESS cmd=\"set\" data=\"force_local_ip_v4=$(hostname -i)\"\/>\n<X-PRE-PROCESS cmd=\"set\" data=\"local_ip_v4=\$\${force_local_ip_v4}\"\/>/" /etc/freeswitch/vars.xml # systemctl enable freeswitch; systemctl start freeswitch; systemctl status freeswitch 2. Настроить linphone на клиенте. * При запуске закрыть мастер настройки. * Открыть Опции > Параметры > вкладка по умолчанию Управление учётными записями SIP > в разделе Учётные записи нажать Добавить. * Ввести данные: ** Ваш идентификатор SIP: sip:1000@<ip-адрес сервера c freeswitch> ** Адрес SIP прокси: sip:<ip-адрес сервера c freeswitch>:5080 ** Остальные параметры оставить по умолчанию. ** При запросе ввести пароль по умолчанию (Pa##word). * Закрыть окно настроек. 3. Перезагрузить сервер с freeswitch (# reboot). 4. Выйти из linphone (нажать ПКМ на значок в системном трее > Выйти) и заново открыть его, после чего подождать, пока индикатор загрузки в выпадающем списке "Мой текущий идентификатор" изменится на другой значок. Фактический результат: * Linphone не подключается к серверу (в выпадающем списке "Мой текущий идентификатор" отображается "x"). * Перенастройка linphone не помогает. Ожидаемый результат: * Linphone должен подключаться к серверу. Дополнительно ============= (# systemctl restart freeswitch) не помогает. (# systemctl stop freeswitch && systemctl start freeswitch) не помогает. (# /etc/init.d/freeswitch restart) помогает в [sisyphus], не помогает в [p10]. См. также: https://freeswitch-users.freeswitch.narkive.com/yLFqKN5y/sofia-listens-only-on-127-0-0-1-after-server-vm-reboot Воспроизводимость ================= Воспроизводится с серверами на виртуальных машинах: [p10] server-10.1-x86-64 freeswitch-daemon-1.10.9-alt1.x86_64 [sisyphus] server-10.1-x86-64 freeswitch-daemon-1.10.10-alt1.x86_64 Клиент - реальная машина: [p10] kworkstation-10.1-x86-64 linphone-3.12.0-alt7.x86_64
А если IP адрес прописать статически, то всё начинает работать нормально ?
(Ответ для Anton Farygin на комментарий #1) > А если IP адрес прописать статически, то всё начинает работать нормально ? Ошибка воспроизводится в [sisyphus] и после настройки IP-адреса вручную с помощью alterator > Ethernet-интерфейсы. Примечание: в freeswitch IP-адрес уже задан принудительно в шаге 1: > # sed -i "s/<include>/<include>\n<X-PRE-PROCESS cmd=\"set\" data=\"force_local_ip_v4=$(hostname -i)\"\/>\n<X-PRE-PROCESS cmd=\"set\" data=\"local_ip_v4=\$\${force_local_ip_v4}\"\/>/" /etc/freeswitch/vars.xml
hostname -i это не принудительно. А напишите там принудительно адрес.
(Ответ для Anton Farygin на комментарий #3) > hostname -i это не принудительно. А напишите там принудительно адрес. Подстановка вывода команды hostname -i производится в процессе изначальной настройки, поэтому в конфигурационном файле задан конкретный ip-адрес (cм. первую строку вывода): > # cat /etc/freeswitch/vars.xml | grep local_ip > <X-PRE-PROCESS cmd="set" data="force_local_ip_v4=1.2.3.4"/> > <X-PRE-PROCESS cmd="set" data="local_ip_v4=$${force_local_ip_v4}"/> > local_ip_v4 > local_ip_v6 > FreeSWICH will default to $${local_ip_v4} unless changed. Changing this setting does > <X-PRE-PROCESS cmd="set" data="domain=$${local_ip_v4}"/>
Актуально для freeswitch-daemon-1.11.1-alt1.x86_64
freeswitch-1:1.11.2-alt1 -> sisyphus: Thu Aug 13 2026 Anton Farygin <rider@altlinux> 1:1.11.2-alt1 - 1.11.1 -> 1.11.2 - fs_encode: treat only the part after the last dot as the file extension (Closes: 56577) - fs_encode: only use the output extension as a codec when it names a real codec; formats encoded by the file module (wav, flac, ogg, ...) now work as output, wav -> wav included (Closes: 47345, 47348) - fs_encode: do not encode twice when the output extension is claimed by mod_sndfile (gsm, ...): the file was gsm-compressed by the codec and then again by libsndfile, producing short noise-only files (Closes: 47344) - fs_tts: fixed argument handling: the text argument was ignored unless an extra argument followed it, and -i FILE was unreachable so the tool hung on stdin instead of reading the file; extra arguments are rejected now (Closes: 54889) - switch_xml: do not abort on assert in switch_xml_open_cfg() when the main configuration could not be loaded; fixes fs_tts/fs_encode/ tone2wav crash under a regular user (Closes: 47334) - fs_tts: load mod_dptools (tts:// provider) instead of mod_ssml removed upstream, and load the module of the selected TTS engine (mod_flite by default), so text-to-speech actually works (Closes: 47335) - mod_imagick: bound the lazy loading thread by the real page count; fixes endless re-reading of GIF frames with lazy=1 ending in an OOM kill (Closes: 47382) - mod_xml_rpc: build against the bundled xmlrpc-c as upstream intends instead of mixing bundled private headers with the system library; fixes the HTTP server failing to start and every /api, /webapi, /portal request answered with 404, which broke freeswitch-webui (Closes: 47399, 54894) - added a native systemd unit ordered after network-online.target; the unit generated from the SysV script started freeswitch before the network was up, so after a reboot sofia bound to the wrong address and clients could not connect (Closes: 47333) - freeswitch-vlc: require vlc-mini: without the VLC core plugins libvlc_new() returns NULL and mod_vlc fails with "cannot initialise VLC handle" on every call (Closes: 47403) - freeswitch-lang-he: package mod_say_he.so; the subpackage shipped the Hebrew prompts without the module that speaks them - packaged gentls_cert, the TLS certificate helper for sofia and verto - dropped mod_say_hu, mod_say_it and mod_say_nl from the build: they were built and thrown away, upstream ships no lang data for them - do not install the switch_eavesdrop unit test into the bin dir, the unnamespaced /usr/include/test headers, and the Flash-era htdocs leftovers - run the network-free part of tests/unit at build time (switch_utils, switch_hash, switch_event, switch_xml, switch_console); the binaries were already being built and thrown away