Главная > Програмное обеспечение > для Fidonet >
BinkD FAQ

        BinkD FAQ

        Ответы на часто задаваемые вопросы по FTN-мэйлеру binkd
        Версия от 06.08.2001

    Этот FAQ составлен на основе вопросов, часто встречающихся
в эхоконференции RU.BINKD. Часть ответов основана на рекомендациях
разработчиков.
Со всеми предложениями и замечаниями пишите: Stas Degteff 2:5080/102 и 2:50/207

    1. Где взять свежую версию BinkD.
    2. Что такое binkd
    3. Протокол binkp
    4. Что такое и зачем нужен домен fidonet.net
    5. binkd не соединяется. Что делать?
    6. Как подружить binkd и HTTP-прокси.
    7. Как подружить binkd и SOCKS-прокси.
    8. IP-пойнт: как заставить binkd забрать почту с босса.
    9. binkd и диалап: автоматический дозвон и отсоединение.
    10. Изменил конфиг при работющем binkd. Когда подействуют изменения?
    11. Как подружить binkd c T-mail/IP?
    12. Существует ли в природе хоть один лог анализер под unix?
    13. Binkd долго коннектится, хотя сетка скоростная.
    14. Почему BinkD не понимает передаваемые параметры при запуске из inetd
    15. Можно ли сделать FREQ в binkd.
    16. Как добавить binkd в фидо-станцию, работающую на модеме.
    17. Флаги по приему файла не создаются.
    18. Binkd под DOS.
    19. Разные FTN-домены в binkd.
    20. Обнаружил баг в binkd!
    21. Как связаться с разработчиками.

----------------------------------------------------------------------------

    Где взять свежую версию BinkD, документацию, FAQ и пр.

    Файл-эха AFTNBINKD.

    Кроме того, в Internet'е:
    Релизы:
    ftp://happy.kiev.ua/pub/fidosoft/mailer/binkd
    ftp://ftp.procuratura.com.ua/pub/Fidosoft/Mailer/Binkd
    Бэты:
    ftp://happy.kiev.ua/pub/fidosoft/mailer/binkd/snapshot
    ftp://ftp.procuratura.com.ua/pub/Fidosoft/Mailer/Binkd/Snapshot
    Документация (англ.), анализаторы логов и пр.:
    http://www.doe.carleton.ca/~nsoveiko/fido/binkd/
    Этот FAQ:
    http://fido.grumbler.org/binkdfaq.shtml (или .txt)



----------------------------------------------------------------------------


    Что такое binkd

    Бинкд - фидошный мэйлер, работающий через интернет по протоколу binkp
(FSP-1011). Этот протокол поддерживается также мэйлерами Аргус (win32), BForce
(unix) и программой Internet Rex (DOS/W32/OS2).

    Характеристики:
    - freeware, открытые исходники
    - версии для Unix (linux, freebsd, SCO, ...), OS/2 (native & EMX),
Windows NT & Windows 95
    - возможность работы демоном под Unix и сервисом Windows NT/2000
    - простое TCP-соединение (целостность данных отслеживается на уровне TCP)
    - BSO (bink-style outbound)
    - LBSO (Long BSO)
    - имеется вариант с поддержкой ASO (Amiga-style outbound)
    - трансляция путей в ?LO файлах (используется при размещении аутбаунда
на сетевых дисках)
    - персональные файлбоксы для отправляемых и принимаемых файлов для каждого
узла
    - поддержка файлбоксов T-mail и The Brake!
    - поддержка трансляции FTN-адресов в доменное имя (*.fidonet.net)
    - поддержка файла паролей стиля T-mail, Bink/+ - начиная с 0.9.4
    - поддержка FREQ с использованием SRIF
    - создание флагов по приему файла (по маске)
    - запуск программ по приему файла (по маске)
    - отказ от приема файла (по маске) - начиная с 0.9.4
    - работа через HTTP или SOCKS прокси-сервер (начиная с версии 0.9.3.https)
    - шифрование паролей (MD5) - начиная с релиза 0.9.4
    - шифрование трафика - начиная с 0.9.5
    - проверка IP-адреса удаленного узла при входящих соединениях -
начиная с 0.9.5


----------------------------------------------------------------------------


    Протокол binkp

    Расшифровка названия: binkd protocol. Описан в FSP-1011 (FIDOnet standard
proposal - предложенный для обсуждения/рассмотрения FTSC стандарт) и
порт 24554 выделен для binkp в RFC-1700 (request for comments,
выпускаемый IANA).
    Использующий двустороннее TCP-соединение протокол обмена файлами,
разработанный для FTN-мэйлера binkd. По умолчанию использует порт 24554.
    Существуют две версии протокола: 1.0 и 1.1, обратно совместимы.
Основное отличие версии 1.1 в возможности делать FREQ во время сессии. Кроме
того, binkp 1.1 в настоящее время имеет опции NR (non-reliable mode,
режим работы с ненадежнвм каналом связи) и ND (no dupes mode, режим защиты
от повторной передачи файлов), MD5 (хеширование паролей), CRYPT (шифрование
трафика).
    Версия протокола 1.1 поддерживается мэйлером binkd и пакетом Internet Rex
(2.24 и более поздние), версия 1.0 реализована в Аргусе (в нем binkp реализован
с добавлением собственного механизма обработки FREQ).
    Описание протокола на русском языке (cp866) лежит тут:
http://fido.grumbler.org/binkp.txt


----------------------------------------------------------------------------


    Что такое и зачем нужен домен fidonet.net

    fidonet.net - домен, зарегистрированный для системы трансляции FTN-адресов
в доменные имена internet. Используется преимущественно при binkp-соединениях.
Адрес 1:2/3.4 преобразуется в домен p4.f3.n2.z1.fidonet.net, затем binkd
(или другой IP-мэйлер) получает средствами операционной системы IP-адрес узла.
Если домен существует - можно пытаться установить соединение.
    Исходя из этого, была составлена "полиси домена fidonet.net": доменное имя
в зоне fidonet.net выдается узлам, присутствующим в нодлисте, имеющим
постоянный IP-адрес и круглосуточно отвечающим на порту 24554 по протоколу
binkp.


----------------------------------------------------------------------------


    binkd не соединяется, сообщает про таймаут (timeout). Что делать?

    1. Проверьте, отвечает ли удаленный узел на порту 24554 (команда telnet).
Если соединение не устанавливается, проверьте, подключен ли этот компьютер
в данный момент к сети (команда ping). Если проверки успешные - проверяйте
настройки (при этом помогает увеличение уровня протоколирования: loglevel 6
или больше).


    Вот примеры для узла 2:5080/68:

    1.1.
    (В ответе на телнет управляющие символы убраны, разбиение на строки
    выполнено для удобства)

    m:\>telnet f68.n5080.z2.fidonet.net 24554

    -.OPT CRAM-MD5-593e3e5411515fc1cf75816bb74e41d0-SYS Academ
    -ZYZ Alexei Kuklin-LOC Ekaterinburg, Russia-NDL 115200,TCP,BINKP,HUB
    -%TIME Tue, 20 Feb 2001 15:25:20 +0500- VER binkd/0.9.4/Win32 binkp/1.1
    - 2:5080/68@fidonet-OPT ND

    M:\>ping f68.n5080.z2.fidonet.net

    Pinging fido68.imp.uran.ru [195.19.130.68] with 32 bytes of data:

    Reply from 195.19.130.68: bytes=32 time=505ms TTL=122
    Reply from 195.19.130.68: bytes=32 time=555ms TTL=122
    Reply from 195.19.130.68: bytes=32 time=406ms TTL=122
    Reply from 195.19.130.68: bytes=32 time=372ms TTL=122

    Узел работает. Проверьте настройки своего Binkd. Возможно, задан слишком
маленький таймаут (время, необходимое для становки соединения, можно оценить
по задержке перед ответом в telnet.

    Другой вариант: телнет соединяется, а пинг - нет (сообщает "Request timed
out" или "Превышен интервал ожидания"):

    M:\>ping f68.n5080.z2.fidonet.net

    Pinging fido68.imp.uran.ru [195.19.130.68] with 32 bytes of data:

    Request timed out.
    Request timed out.
    Request timed out.
    Request timed out.

    Это означает, что ICMP-пакеты запрещены на пути между вами.  а работу
binkd они не влияют.



    1.2.

    M:\>ping f68.n5080.z2.fidonet.net

    Unknown host f68.n5080.z2.fidonet.net

    Такой ответ означает, что ваш компьютер не смог обнаружить запись в DNS
для этого узла. Проверьте настройки DNS в системе. Если они верны -  убедитесь,
что DNS-сервер работает и адрес удаленного узла указан правильно.



    1.3.

    Если пинг проходит, а telnet-соединение не устанавливается - возможно,
что binkd на этом узле в данный момент не отвечает. Попробуйте
выяснить с сисопом узла, запущен ли у него binkd. Если запущен и соединяется
с другими узлами - это означает, что доступ к порту 24554 закрыт на файрволле
Вашей сети. Попробуйте запустить binkd через прокси-сервер - см. "Как
подружить binkd и HTTP-прокси", "Как подружить binkd и SOCKS-прокси"


    1.4.

    M:\>ping -w 5000 f68.n5080.z2.fidonet.net

    Pinging fido68.imp.uran.ru [195.19.130.68] with 32 bytes of data:

    Reply from 195.19.130.68: bytes=32 time=3674ms TTL=122
    Request timed out.
    Reply from 195.19.130.68: bytes=32 time=4232ms TTL=122
    Request timed out.

    Телнет на порт 24554 иногда соединяется, а чаще - нет.

    Узел работает, но канал связи между вами сильно загружен или слишком
медленный. При этом binkd соединяется не при каждой попытке (теряются
IP-пакеты) или не соединяется вовсе (слишком мало время ожидания ответа
удаленного узла). Первый случай "неизлечим", поскольку пакеты теряются
в пути и повлиять на это Вы не в состоянии. Во втором случае нужно увеличить
значение времени ожиданий в файле конфигурации binkd (значения задаются
в секундах):

    timeout 60
    connect-timeout 300
    call-delay 60

    Если увеличение этих значений не помогает - смените аплинка.


    1.5.
    Телнет на порт 24554 не соединяется, хост на пинг не отвечает.

    Узел не отвечает. Вероятные варианты :
    1 - в данный момент ваш компьютер либо удаленный узел не подключен
к интернет или нарушена маршрутизация (обрыв на линии связи, отключение
электропитания, проводятся работы у одного из провайдеров и пр.) -
предпримите несколько попыток позже;
    2 - Ваш компьютер находится в Intranet и выход в Internet возможен только
через прокси-сервер - см. "Как подружить binkd и HTTP-прокси", "Как подружить
binkd и SOCKS-прокси"


----------------------------------------------------------------------------


    Как подружить binkd и HTTP-прокси.

     ередко в ЛВС организации пользователи выходят в Internet исключитально
через прокси-сервер, установленный на единственном компьютере, имеющем выход
в Сеть.
При этом binkd не может установить прямое соединение с удаленным узлом и нужно
использовать этот прокси-сервер.
    Поддержка прокси-серверов была включена в версии 0.9.3.https, 0.9.4 и
более поздние.
    Работа через HTTP прокси возможна только в том случае, если
в прокси-сервере разрешена команда CONNECT host 24554 (соединение с портом
24554) либо команда CONNECT разрешена для любого порта назначения. Обычно эта
команда используется в протоколе "защищенный HTTP" (ссылки вида HTTPS://...),
иначе называемого S-HTTP. Из-за этого такой прокси нередко называют
"HTTPS-прокси".
    Если binkd сообщит, что произошла ошибка авторизации, значит в настройке
прокси-сервера нужная команда запрещена (или разрешена только для порта 443,
что для нас несущественно).

    Предположим, что компьютер, подключенный к Internet, имеет во внутренней
сети IP-адрес 192.168.0.1 и прокси-сервер на нем "отвечает" по порту 3128.
Вот строка в файле конфигурации binkd, нобходимая для работы через этот
HTTP-прокси:

    1. Прокси-сервер без авторизации пользователя (не требуется вводить имя
и пароль):

    proxy 192.168.0.1:3128

    2. Прокси-сервер с авторизацией пользователя (требуется вводить имя и
пароль, к примеру, имя user и пароль password):

    proxy 192.168.0.1:3128/user/password

    3. Прокси-сервер фирмы Microsoft с авторизацией пользователя по протоколу
NTLM. (Требуется входить в домен.)
К примеру, имя user и пароль password, компьютер пользователя host и домен
ntdomain:

    proxy 192.168.0.1:3128/user/password/host/ntdomain


----------------------------------------------------------------------------


    Как подружить binkd и SOCKS-прокси.

     ередко в ЛВС организации пользователи входят в Internet исключитально
через прокси-сервер, установленный на единственном компьютере, имеющем выход
в Сеть. При этом binkd не может установить прямое соединение с удаленным узлом
и нужно использовать этот прокси-сервер.
    Поддержка прокси-серверов была включена в версию 0.9.4 и более поздние.
    Binkd работает с SOCKS-прокси версий 4 и 5. Первые не требуют авторизации
(ввода имени и пароля), вторые как правило ее требуют.

    Предположим, что компьютер, подключенный к Internet, имеет во внутренней
сети IP-адрес 192.168.0.1 и SOCKS-сервер на нем "отвечает" по порту 1080.
Вот строка в файле конфигурации binkd, нобходимая для работы через этот
SOCKS-прокси:

    1. SOCKS-сервер без авторизации пользователя (не требуется вводить имя
и пароль):

    socks 192.168.0.1:1080

    2. SOCKS-сервер с авторизацией пользователя (требуется вводить имя и
пароль, к примеру, имя user и пароль password):

    socks 192.168.0.1:1080/user/password


----------------------------------------------------------------------------


    Как заставить binkd забрать почту с босса

     ужно создать полл, binkd это умеет посредством опции -P:

    binkd -P1:2/3 binkd.cfg

обычно при этом нужно, чтобы binkd завершил работу по окончании сессии,
для чего используется опция -p:

    binkd -p -P1:2/3 binkd.cfg

    Если binkd после завершения сессии долго не завершается, уменьшите
значение параметров rescan-delay и call-delay.


----------------------------------------------------------------------------


    Binkd/win и диалап: автоматический дозвон и отсоединение

    Задача: настроить систему так, чтобы binkd инициировал телефонный звонок
к провайдеру, забирал почту, после чего соединение нужно разорвать.
    Решения:

1 вариант
    Установить автоматическое установление связи и таймаут в свойствах
соединения (завершать соединение при отсутствии данных через указанное
время). При этом удобно использовать нестандартную программу дозвона
(Advanced Dialer и т.п.). binkd нужно будет периодически запускать
с ключом -p (и, возможно, -Pадрес - чтобы binkd создал полл на адрес)%

binkd -p -P1:2/3.4  binkd.cfg


2 вариант
    Используется опция командной строки -p и командный файл, в
котором запускается сервис удаленного доступа (RAS), затем запускается binkd,
после завершения binkd RAS останавливается.

для Windows NT и Windows 2000 два варианта:
    === binkdpoll1.cmd
    rasdial Соединение
    binkd -p binkd.cfg
    rasdial Соединение /disconnect
    ===

    === binkdpoll2.cmd
    net start "remote access service"
    net start "remote access auto service"
    binkd -p binkd.cfg
    net stop "remote access auto service"
    net stop "remote access service"
    ===

3 вариант (наилучший для win9x)
    Используются опции командной строки -p и -Pадрес, управление соединением
осуществляется нестандартной программой дозвона (к примеру, dialerp).
Этот вариант наиболее надежен (особенно в случае плохой связи с модемом
провайдера) благодаря тому, что dialerp при установлении соединения может
запускать указанные программы. Вот командный файл, который нужно вызывать
из параметра Execute файла конфигурации dialerp:

    ====
    binkd -p -P1:2/3.4  binkd.cfg
    dialerp BREAK *
    ====

    Остается вопрос: где взять dialerp. Ответ: спроси у автора
(Alexander Vedjakin, 2:5020/540) или поищи в архивах файл-эх и на ftp/http.


    При любом варианте в файле конфигурации binkd нужно поставить малое
значение у параметров rescan-delay и call-delay - тогда binkd будет
завершаться быстрее:

    === binkd.cfg
    # Delay calls and outbound rescans (sec)
    rescan-delay 10
    call-delay 2
    ===

----------------------------------------------------------------------------


    Изменил конфиг при работющем binkd. Когда подействуют изменения?

     ачиная с версии 0.9.1 binkd научился определять обновление файла
конфигурации. Запущенный с флагом -C он при этом завершался с кодом 3.
(После каждой входящей сессии производилась проверка времени модификации).
Вот файл для запуска binkd версий 0.9.1-0.9.3 и 0.9.4/w32:
    ====
    :aaa
    binkd -C binkd.cfg
    if errorlevel 4 goto end
    if errorlevel 3 goto aaa
    :end
    ====
    В версиях 0.9.4/unix и /os2-emx (только в этих) сделан автоматический
перезапуск binkd, если он запущен с ключом -C. Кроме того, начиная с версии
0.9.4 проверяются файлы, включенные в конфиг по include, и проверка
происходит не только при входящих соединениях, но и через каждые
rescan-delay секунд.
    В версии 0.9.4/w32 при установке binkd в качестве сервиса Windows NT, нужно
установить его с параметром -C: тогда binkd будет перечитывать конфиг.
    До версии 0.9.4 изменения конфига не проверялись, если binkd был запущен
в режиме client-only (ключ -c).


----------------------------------------------------------------------------


    Как подружить binkd c T-mail/IP?

    Hикак не подружить. Протоколы принципиально разные: binkd работает
по протоколу binkp, t-mail/IP - EMSI & etc.


----------------------------------------------------------------------------


    Существует ли в природе хоть один лог анализер под unix?

    Существует множество Perl'овых скриптов, к примеру вот:

       Генератор статистики для binkd   v. 0.1 beta2
       (c) Dmitry Sergienko, 2:464/910@fidonet, trooper@unity.net 14.08.2000
    http://www.unity.net/~trooper/fido/binkdstat
     есколько разных генераторов лежат у Nick Soveiko:
    http://www.doe.carleton.ca/~nsoveiko/fido/binkd/statistics_generators/


----------------------------------------------------------------------------


    Binkd долго коннектится (~20 секунд), хотя сетка скоростная (ЛВС).

     аверное "включен" параметр backresolv (писать в лог доменное имя
удаленного хоста) и не настроен DNS.
    Самое простое - нужно закомментировать backresolv в файле конфигурации.
    Посложнее: необходимо настроить DNS.


----------------------------------------------------------------------------


    Почему BinkD не хочет понимать передаваемые параметры при запуске из inetd

    В inetd.conf нужно первым параметром указывать имя программы (в случае
с binkd - любая строка), вторым параметром - ключи запуска (-iqs и прочее по
вкусу), третьим параметром - полнопутевое имя конфига:

binkp stream tcp nowait root /usr/fido/binkd binkd -isq /usr/fido/binkd.cfg

Если не используется опция -q, в конфиге нужно убрать вывод на консоль
(закомментировать printq, percents, conlog).


----------------------------------------------------------------------------


    Можно ли сделать FREQ в binkd.

    Запросто! Binkd настраиватеся на вызов внешнего фрек-процессора,
поддерживающего SRIF (к примеру, Allfix). Читай файл "!SRIF.TXT" и
комментарий к "exec" в конфиг-файле.
    Вот пример строки в конфиге:
    exec "\\ftn\\allfix\\allfix.exe RP -SRIF *S" *.req


----------------------------------------------------------------------------


    Как добавить binkd в фидо-станцию, работающую на модеме.

     ужно настроить модемный мэйлер и тоссер на режим BSO (binkley-style
outbound), так чтобы у всех (и binkd тоже) совпадали inbound- и
outbound-каталоги. Если же мэйлер "умеет" только AMA (arcmail-attach)
- придется сменить мэйлер.


----------------------------------------------------------------------------


    Флаги по приему файла не создаются.

     аверняка неправильно указана маска в конфиге.  ужно так (версии для
windows и os/2, в юникс-версиях аналогично, но слэши обратные и одинарные):

flag m:\\ftn\\flag\\pntseg.flg m:\\\\ftn\\\\inbound\\\\sec\\\\pntstr*.*
flag m:\\ftn\\flag\\toss.flg *.su? *.mo? *.tu? *.we? *.th? *.fr? *.sa? *.pkt

     адо прописывать полное имя файла, который должен прийти, с четырьмя
слешами или маска должна начинаться с символа "звездочка". Для флага нужно
использовать двойные слэши.
Полное имя - потому что имя файла без пути означает событие приема файла не
в инбаунд, а в текущий каталог. Если маска начинается с "*", то в любой
(а поскольку файлы принимаются в один из инбаундов, работает для всех сессий
- и парольных, и непарольных).


----------------------------------------------------------------------------


    Binkd под DOS.

    Существует версия binkd 0.9.2 для операционной системы MS DOS. Трудность
состоит в том, что она работает только с драйверами IBM TCP/IP версии 2.1
и найти эту версию проблематично (Дмитрий Родин 2:5020/5410 случайно нашел ее
у кого-то на фреках).
    Кроме того, каждый желающий может портировать binkd под имеющуюся у него
версию драйверов IP под DOS :-). Исходники - в Internet'е и файл-эхе
(см. "Где взять свежую версию BinkD.")


----------------------------------------------------------------------------


    Разные FTN-домены в binkd.

    Ситуация: два домена (с разными номерами зон, хотя это непринципиально),
почта на первый домен отправляется, на второй - нет.

domain fidonet c:\\ftn\\outbound\\boxes 2
domain omeganet c:\\ftn\\outbound\\boxes 11
address 2:5070/222@fidonet 11:58/6@omeganet

    В domain прописывается не default зона сети, а зона, которую не надо
добавлять к имени outbound'а (т.е. для зоны, указанной в строке
domain, расширения аутбаунда не обрабатываются).

    То есть, если бы твой тоссер создавал для omeganet бандлы в каталоге
boxes, то надо было бы писать 11; а раз он создает в boxes.00b (или как там?),
то писать надо 2, вот так:

domain fidonet c:\\ftn\\outbound\\boxes 2
domain omeganet c:\\ftn\\outbound\\boxes 2
address 2:5070/222@fidonet 11:58/6@omeganet


----------------------------------------------------------------------------


    Обнаружил баг в binkd!

    Попpобуйте освежить веpсию (возможно, ошибка уже исправлена). Если
не помогло - надо "пинать" pазpаботчиков:
    binkd-bugs@happy.kiev.ua
    Pavel Gulchouck 2:463/68
    pассылка binkd-dev@happy.carrier.kiev.ua
    В писме нужно подробно описать ситуацию возникновения ошибки, при
этом обязательно указать номеp веpсии и приложить вырезку из подpобного
лога (loglevel больше 5).


----------------------------------------------------------------------------


    Как связаться с разработчиками.

    Автор первых версий binkd - Дмитрий Малов - ныне отошел от проекта.
В 2000-2001 годах проект координирует Павел Гульчук 2:463/28 (Pavel Gulchouck
<gul@gul.kiev.ua>) он же и пишет большую часть кода.
    Для общения разработчиков и тестеров создана рассылка:
binkd-dev@happy.kiev.ua



Украинская Баннерная Сеть

Главная  Алфавитный индекс  Справка  Добавить FAQ  E-mail
Новости  Поиск по сайту

Copyright © 2001 - 2003 Olexandr Slobodyan.
Сайт создан в системе uCoz