Воскресенье, 2018-02-25, 06:35
Приветствую Вас Гость | RSS
Главная | Standalone FRN server | Регистрация | Вход
Меню сайта
Вход на сайт
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    UNIX/Linux FRN Gateway
    Deutsch
    English
    Italiano

    FreeRadioNetwork (FRN) Server
    для FreeBSD, Linux и Windows



    AlterFRN-сервер полностью совместим по протоколу с оригинальным FRN-сервером и может одновременно взаимодействовать с тремя FRN-System-Manager в нескольких режимах:
    - 1) никак не взаимодействует - работает полностью автономно;
    - 2) с уведомлением;
    - 3) легкая проверка;
    - 4) жесткая проверка.

    Каждая сеть(комната) может использовать по желанию владельца сервера свой собственный режим взаимодействия с FRN System Manager.

    В режимах 1 и 2 регистрация в собственно сети FRN на ее FRN-System-Manager совсем не обязательна.

    Также, AlterFRN-сервер при взаимодействии с FRN-System-Manager не передает на него IP-адреса подключающихся клиентов, как это делает оригинальный FRN-сервер.

    Таким образом может быть достигнута полная или частичная независимость от FRN-System-Manager, если это необходимо владельцу сервера в конкретной ситуации, например, для построения совершенно изолированной сети ретрансляторов.

    AlterFRN-cервер позволяет использовать как оригинальный FRN-клиент так и альтернативные клиенты, например, AlterFRN-клиент или GRNClient для Android, или какие-нибудь другие.


    Текущая стабильная версия 4820 (2018-02-04):
    FRNServerConsole.FreeBSD-amd64.4820r.tgz
    FRNServerConsole.FreeBSD-i386.4820r.tgz
    FRNServerConsole.Linux-amd64.4820r.tgz
    FRNServerConsole.Linux-armv6.4820r.tgz (RaspberryPi,OrangePi,...)
    FRNServerConsole.Linux-i386.4820r.tgz
    FRNServerConsole.Win32.4820r.zip


    Предыдущаяя стабильная версия:
    FRNServerConsole.FreeBSD-amd64.r4642.tgz
    FRNServerConsole.FreeBSD-i386.r4642.tgz
    FRNServerConsole.Linux-amd64.r4642.tgz
    FRNServerConsole.Linux-armv6.r4642.tgz (RaspberryPi,OrangePi,...)
    FRNServerConsole.Linux-i386.r4642.tgz
    FRNServerConsole.Win32.r4642.zip



    Windows-версия AlterFRN-сервера отлично работает как служба Windows c помощью Non-Sucking Service Manager.


    s.0.Параметры командной строки:
    s.0.1. daemon [configfilename] -- [только UNIX/Linux, ревизия 4300+] запустить сервер в фоновом режиме (демоном); при этом PID сохраняется в pid-файл, журнал событий пишется в log-файл; сигнал SIGHUP используется для переоткрытия файла журнала для совместного использования с системами вращения журналов типа logrotate или подобных;
    s.0.2. run [configfilename] -- [ревизия 4300+] запустить в синхронном режиме, журнал событий записывается в log-файл; под Windows может использоваться совместно с Non-Sucking Service Manager;
    s.0.3. debug [configfilename] -- [ревизия 4300+] запустить в синхронном режиме, журнал событий пишется в stdout; эквивалентен запуску без параметров командной строки; под Windows может использоваться совместно с Non-Sucking Service Manager;
    s.0.4. pidfilename [configfilename] -- [только UNIX/Linux, ревизия 4300+] вывести в stdout полное имя pid-файла по параметрам из конфигурационного файла; для скриптов автоматизации обслуживания;
    s.0.5. logfilename [configfilename] -- [ревизия 4300+] вывести в stdout полное имя файла журнала по параметрам из конфигурационного файла; для скриптов автоматизации обслуживания;
    s.0.6. stop [configfilename] - [только UNIX/Linux, ревизия r4630+] - остановить ранее запущенный фоновый процесс (демон) AlterFRN-сервера; посылает фоновому процессу сигнал SIGTERM с использованием PID фонового процесса из pid-файла; см. также команду pidfilename и параметр п.8.3 PidFile;







    Описание конфигурационного файла server.ini:

    s.1.Секция Server:
    s.1.1. Параметр PresentServerAddress - адрес, который сервер будет передавать FRN-System-Manager как адрес сервера в неавтономных режимах; именно по этому адресу FRN-System-Manager будет проверять работоспособность сервера;
    s.1.2. Параметр PresentServerPort - номер порта, который сервер будет передавать FRN-System-Manager как номер порта сервера в неавтономных режимах; именно по этому номеру порта FRN-System-Manager будет проверять работоспособность сервера;
    s.1.3. Параметр ServerOwnerEMail - адрес е-почты владельца сервера;
    s.1.4. Параметр ServerCharsetName - имя кодировки для всего сервера, в которую будут перекодироваться национальные имена сетей(комнат) из списка в файле networks.cfg для последующей передачи списка сетей(комнат) для FRN-клиентов с поддержкой только локальных ANSI-кодировок; FRN-клиенты с поддержкой UNICODE будут всегда получать список сетей(комнат) в кодировке UTF-8; для каждой из сетей(комнат) по желанию может быть назначена своя собственная кодировка;
    s.1.5. Параметр BackupServerAddress - адрес резервного сервера для FRN-клиента;
    s.1.6. Параметр BackupServerPort - номер порта резервного сервера для FRN-клиента;
    s.1.7. Параметр ListenServerPorts - [ревизия 4210+] список номеров фактически прослушиваемых портов для входящих соединений от FRN-клиентов; может быть несколько через пробел; по умолчанию используется значение из параметра PresentServerPort;
    s.1.8. Параметр DefaultNetworkName - [ревизия 4210+] имя сети(комнаты), в которую будут подключаться FRN-клиенты, пытающиеся подключиться в отсутствующую на сервере сеть(комнату);
    s.1.9. Параметр IPVersion - [ревизия 4210+] используемые для входящих соединений версии протокола IP: "4" - IPv4; "6" - IPv6; "46" - оба, используется по умолчанию;
    s.1.10. Параметр ManagerMode - [ревизия 4630+] режим взаимодействия с FRN-System-Manager для всего сервера целиком; до ревизии 4630 этот параметр находился в секции Manager; каждой сети(комнате) в файле networks.cfg может быть назначен свой собственный режим; допустимые значения:
    s.1.10.1. - значение Standalone или S - автономный режим, взаимодействие с FRN-System-Manager не производится; по умолчанию;
    s.1.10.2. - значение Notify или N - сервер делает попытку уведомить FRN-System-Manager о подключающемся FRN-клиенте, однако отрицательные ответы от FRN-System-Manager игнорируются, а клиент допускается в сеть(комнату) с учетом прав доступа к конкретной сети(комнате);
    s.1.10.3. - значение Light или L - в случае, если FRN-System-Manager недоступен, то сервер допускает подключающегося FRN-клиента с учетом прав доступа к конкретной сети(комнате), при восстановлении работоспособности FRN-System-Manager клент будет проверен и отключен при получении отрицательного ответа от FRN-System-Manager; если же FRN-System-Manager работоспособен, то подключающийся FRN-клиент допускается с учетом ответа от FRN-System-Manager и прав доступа к конкретной сети(комнате);
    s.1.10.4. - значение FRN или F - в случае, если FRN-System-Manager недоступен, то сервер не допускает подключающихся клиентов; если же FRN-System-Manager работоспособен, то подключающийся FRN-клиент допускается с учетом ответа от FRN-System-Manager и прав доступа к конкретной сети(комнате);
    s.1.10.5. Примечание: сервер не ведет список (кэш) корректных паролей клиентов; эта функция заменена режимом Light;
    s.1.11. Параметр MaxTotalConnections [ревизия 4630+] - общее максимальное число входящих соединений на весь сервер; по умолчанию - 1000;
    s.1.12. Параметр ClientHandshakeTimeout [ревизия 4630+] - время в секундах, за которое клиент должен авторизоваться после подключения к серверу; минимальное - 1 секунд; максимальное - 20 секунд; по умолчанию - 2 секунды;
    s.1.13. Параметр ClientActivityTimeout [ревизия 4630+] - время в секундах, через которое соединение с клиентом будет разорвано в случае, если клиент не отвечает на какие-либо команды протокола, например, из-за плохого сетевого соединения; минимальное - 3 секунды; максимальное - 30 секунд; по умолчанию - 8 секунд;
    s.1.14. Параметр MaxSpeechTime [ревизия 4690+] - максимальная длительность одного включения (разговора) корреспондента в секундах для всего сервера; минимальное - 10 секунд; максимальное - 1800 секунд (30 минут); по умолчанию - 300 секунд (5 минут); для каждой комнаты можно установить свое собственное максимальное время разговора;
    s.1.15. Параметр SpeechPause [ревизия 4690+] - принудительная пауза между включениями корреспондентров для всего сервера в миллисекундах; минимальная и по умолчанию - 0 мс; максимальная - 10000 мс (10 секунд); для каждой сети(комнаты) можно установить свою собственную принудительную паузу;

    s.2. Секция Manager [ревизия 4210+] и секции Manager1, Manager2 [ревизия 4642+]:
    s.2.2. Параметр ManagerAddress - доменное имя или IP-адрес FRN-System-Manager; по умолчанию sysman.freeradionetwork.eu;
    s.2.3. Параметр ManagerPort - номер порта FRN-System-Manager; по умолчанию 10025;
    s.2.4. Параметр ManagerAuthEMail - адрес е-почты для авторизации на FRN-System-Manager; по умолчанию используется значение из параметра ServerOwnerEMail;
    s.2.5. Параметр ManagerAuthPassword - пароль для авторизации на FRN-System-Manager;

    s.3. Секция System [ревизия 4210+]:
    s.3.1. Параметр PidFile - [только UNIX/Linux] - имя PID-файла в фоновом (демоническом) режиме сервера; по умолчанию /var/run/frnserver.pid;
    s.3.2. Параметр LogFile - имя файла журнала событий сервера; по умолчанию ./frnserver.log;
    s.3.3. Параметр LogClientLevel - [ревизия 4642+] уроверь журналирования событий на клиентстких подключениях:
    s.3.3.1. Значение 0 - не журналировать клиентских событий вообще;
    s.3.3.2. Значение 1 - опасные события, например, пустые подключения или подключения неверным протоколом;
    s.3.3.3. Значение 2 - предупреждения и опасные события; по умолчанию;
    s.3.3.4. Значение 3 - ошибочные клиентские подключения и всё предыдущее;
    s.3.3.5. Значение 4 - успешные подключения клиентов и всё предыдущее;
    s.3.3.6. Значение 5 - входящие соединения и всё предыдущее;

    Возможные дополнительные параметры для каждой сети(комнаты). Параметры дописываются в файле networks.cfg после имени сети(комнаты) через символ '|', разные параметры отделяются друг от друга точкой с запятой:

    - OwnerEMail - адрес электронной почты владельца сети(комнаты); при наличии;
    - MaxClients - максимальное количество корреспондентов, которые могут подключиться в комнату одновременно, по умолчанию 65535;
    - MaxSpeechTime - максимальное время в секундах, которое может непрерывно говорить корреспондент, после чего клиенту будет послана команда прервать трансляцию сигнала в комнату; минимальное - 10 секунд; максимальное - 1800 секунд (30 минут); по умолчанию - 300 секунд (5 минут);
    - ParrotEnable - разрешить работу попугая в сети(комнате); допустимые значения: No, Yes; по умолчанию: No;
    - ParrotStartStopEnable - разрешить включение/выключение попугая через сообщения start и stop; допустимые значения: No, Yes; по умолчанию: No;
    - ParrotMuteEnable - разрешить блокировку самого попугая; допустимые значения: No, Yes; по умолчанию: No;
    - ParrotMaxRecordTime - максимальное время звука в секундах, которое может записать попугай для последующего повтора; по умолчанию: 600 секунд (5 минут);
    - ParrotPause - время в миллисекундах перед началом воспроизведения попугаем записанного звука; по умолчанию: 2000 мс (2 секунды);
    - ParrotRepeatCount - количество повторов попугаем записанного звука; по умолчанию: 1 (один);
    - CharsetName - [ревизия 4210+] имя кодировки, в которую будет перекодировано имя этой конкретной сети(комнаты) для передачи списка сетей(комнат) FRN-клиентам без поддержки Unicode(UTF-8);
    - ManagerMode - [ревизия 4210+] режим взаимодействия с FRN-System-Manager для этой конкретной сети(комнаты), если режим отличается от режима всего сервера;
    - ManagersMask - [ревизия 4690+] битовая маска, разрешающая или запрещающая работу сети(комнаты) с конкретным FRN-System-Manager; используются биты 0-2; по умолчанию значение 7 - все FRN-System-Manager разрешены;
    - SpeechPause - [ревизия 4690+] - принудительная пауза между включениями корреспондентов для этой конкретной сети(комнаты) в миллисекундах; минимальная и по умолчанию - 0 мс; максимальная - 10000 мс (10 сек);
    - AccessInfoMode - [ревизия 4690+] - режим выдачи сообщения о правах доступа AccessInfo:
    -- ORIGINAL / O - выдавать только при активированных правах доступа, как в оригинальном FRN-сервере; по умолчанию;
    -- ALWAYS / A - всегда выдавать, если сообщение определено;
    -- NEVER / N - никогда не выдавать;



    Полезные факты об этом сервере:

    - Для того чтобы различать клиентов между собой в пределах одной комнаты(сети) сервер использует только адрес электронной почты. При работе сервера или сети(комнаты) в автономном режиме (ManagerMode=Standalone) это может быть просто уникальная строка текста длиной не более 64 ASCII-символов; реальным адресом е-почты она быть не обязана, т.к. в этом режиме сервер никак не взаимодействует с центром авторизации (FRN System Manager) и никаких проверок не осуществляет, и, например, два клиента с абсолютно одинаковыми реквизитами могут быть подключены к разным комнатам одновременно.

    - Алгоритм формирования этим сервером идентификатора клиента:
    echo -n name@email.com | md5 | perl -e 'print pack "H32", ' | openssl base64 | cut -c 1-22 | sed 's/\+/\[/g' | sed 's/\//\]/g'


    Бесплатный конструктор сайтов - uCozCopyright MyCorp © 2018