Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

diald - демон для дозвона по требованию для IP соединений по телефонным сетям


diald.ru(8)           Документация по diald           diald.ru(8)


НАЗВАНИЕ
       diald  - демон для дозвона по требованию для IP соединений
       по телефонным сетям.

КРАТКИЙ ОБЗОР
       /usr/sbin/diald [устройство1  ...]  [опции...]  [--  [pppd
       опции...]]


ОПИСАНИЕ
       Внешние  соединения  с  IP  сетями  по телефонным линиям с
       помощью SLIP или PPP  по  модему  или  с  помощью  PPP  по
       ISDN-линии    обычно   явно   включаются   и   выключаются
       оператором.

       Diald может  использоваться  для  автоматического  подъема
       соединения,  когда  имеются  IP-пакеты, которые необходимо
       доставить на другую машину, и для прекращения  соединения,
       когда оно не используется.


       Diald     работает,     создавая     SLIP-соединение    на
       псевдо-терминале   и   устанавливая    маршрутизацию    на
       получившийся интерфейс. Этот интерфейс называется "прокси"
       (proxy).  Diald следит  за  прокси,  чтобы  узнать,  когда
       следует  установить  настоящее  соединение,  а  когда  оно
       установлено, то diald маршрутизирует пакеты между прокси и
       настоящим  соединением  и следит за настоящим соединением,
       чтобы узнать, когда его требуется  закрыть.  Также,  когда
       соединение  неожиданное  прерывается, diald будет пытаться
       возобновить его.  Правила,  контролирующие  эти  операции,
       обширно настраиваются в конфигурационных файлах.

       Эта  страница  --  справочник по diald.  Она документирует
       все  опции  конфигурации,  которые  можно  задать   diald.
       Возможно,  чтение этой страницы -- не самый простой способ
       начать   работу   с   diald.    Страница    diald-examples
       предоставляет  несколько работающих примеров конфигурации,
       чтобы помочь вам начать использовать diald.   На  странице
       dctrl  можно  прочитать  о программе, помогающей управлять
       запущенной копией diald, используя графический  интерфейс.
       Вдобавок, на страницах diald-control и diald-monitor можно
       подробно прочитать о командах, которые dctrl  может  слать
       diald и об информации, которую diald может сообщить dctrl.


ПАРАМЕТРЫ КОМАНДНОЙ СТРОКИ
       Diald обычно настраивается с помощью файлов  конфигурации.
       По историческим причинам почти все, что может находиться в
       файле конфигурации, также может появиться  и  в  командной
       строке.  Однако,  за  исключением  передачи  diald  опции,
       указывающей,  из  какого  файла  загрузить   конфигурацию,
       передача  аргументов  в командной строке не требуется и не
       приветствуется.

       При    старте    diald    читает    опции    сначала    из
       /usr/lib/diald/diald.defs,  затем  из  /etc/diald.conf,  а
       затем из командной строки. Дополнительные  файлы,  которые
       нужно прочитать, могут быть заданы из командной строки или
       внутри самих файлов конфигурации. Первая  часть  командной
       строки  --  список  из  нуля  или  более  последовательных
       устройств.   Заметьте,   что   diald   поддерживает   ISDN
       устройства,  которые  выглядят как Ethernet устройства, но
       такие устройства не могут  быть  указаны  в  первой  части
       командной строки. Эта возможность существует исключительно
       для обратной совместимости с  существующими  приложениями.
       Предпочтительно   указывать  устройства  с  помощью  опции
       "device", документированной в секции "Конфигурация"  этого
       руководства.

       Первый    параметр   командной   строки,   не   являющийся
       последовательным   устройством,   указывает   на    начало
       последовательность  из  нуля  или более опций конфигурации
       diald.  Все опции  конфигурации  diald,  документированные
       ниже,  за  исключением  опции  "pppd-options",  могут быть
       указаны в командной строке.

       Каждая из этих опций  принимает  фиксированное  количество
       параметров,  которые  должны немедленно следовать за ней в
       командной  строке.   Например,   команда   "-f"   получает
       единственный параметр, обозначающий имя файла. В командной
       строке это выглядит так:

                      diald -f /etc/diald/config.18

       Эта   командная   строка    указывает    diald    получить
       дополнительные опции конфигурации из файла /etc/diald/con-
       fig.18.   На   самом   деле,   это   единственная    опция
       конфигурации,   которая   должна  появляться  в  командной
       строке.  Более  того,  если  вы  не  запускаете  несколько
       процессов  diald,  то  он  может  быть  запущен вообще без
       параметров. Для этого надо поместить опции конфигурации  в
       файл /etc/diald.conf, который всегда читается diald.

       Любые   параметры  после  "--"  являются  опциями  pppd  и
       передаются ему, когда он  выполняется  diald.   Эти  опции
       также  могут  быть  помещены  в  файл /etc/ppp/options или
       указаны в файле  конфигурации  с  помощью  команды  "pppd-
       options".  Если вы используете эту возможность, прочитайте
       важное  замечание  в  следующей  секции,   документирующей
       команду "pppd-options".


ФАЙЛЫ КОНФИГУРАЦИИ
       Как уже упоминалось, при старте diald читает опции сначала
       из    файла    /usr/lib/diald/diald.defs,     затем     из
       /etc/diald.conf,    а    затем    из   командной   строки.
       Дополнительные файлы, которые нужно прочитать, могут  быть
       указаны  в  командной  строке,  или  внутри  самих  файлов
       конфигурации.

       Заметьте, что файл /usr/lib/diald/diald.defs  предназначен
       только   для   указания   опций   var  и  prule.   Это  не
       обязательно, но не следует нарушать это соглашение.  Более
       того,  во  всех,  за  исключением  самых  сложных случаев,
       поставляемый файл diald.defs не требует редактирования. На
       самом  деле,  изменение  правил,  указанных  в этом файле,
       изменяет  язык,  который  понимает  diald  при  дальнейшем
       чтении   конфигурационных   файлов.  Необходимость  такого
       редактирования следует тщательно обдумать.

       Каждая команда в файле конфигурации должна  быть  записана
       на    одной   строке.   Каждая   строка   разбивается   на
       последовательность  слов,  разделенных   пустыми   местами
       (пробелами   или   символами   табуляции).   Слова   могут
       заключаться в кавычки ( пустое место. В слове, заключенном
       в  кавычки,  можно  использовать последовательности (\ или
       (?). Остальные escape-последовательности  интерпретируются
       в  стиле  языка  C.  Пустые  строки,  равно  как и строки,
       содержащие первым символом символ (#), игнорируются.


   Основная конфигурация
       Нижеследующие команды управляют основным поведением diald.
       Оно  включает  в  себя  файлы,  из  которых читаются опции
       конфигурации, пути  к  важным  файлам  или  программам,  и
       несколько  других  команд, которые менее легко разбиваются
       на категории.


       -f <f> Прочитать дополнительные команды из файла <f>.

       -file <f>
              Это синоним команды -f

       include <f>
              Это еще один синоним команды -f.  Заметьте, что эти
              команды   могут   использоваться   в  файле,  чтобы
              включить в него другой файл.


       mode <m>
              Устанавливает   режим   работы   <m>.     Возможные
              варианты:

              slip      Режим SLIP.
              cslip     Режим сжатого SLIP (CSLIP).
              slip6     Режим 6-битного SLIP.
              cslip6    Режим сжатого 6-битного SLIP.
              aslip     Режим адаптивного SLIP.
              ppp       Режим PPP.
              dev       Режим устройства Ethernet.

              Все    режимы,   кроме   последнего,   работают   с
              последовательными  устройствами.  Последний   режим
              необходим  для адаптеров ISDN, которые выглядят как
              Ethernet  устройства.  Эти  устройства  звонят   по
              требованию,  но  делают  это  для  всех пакетов без
              каких-либо policy-decisions.  Эта  опция  позволяет
              использовать diald как интерфейс к этим устройствам
              и обеспечивать более сложный механизм управления.

              В директории "contrib/isdn4linux"  в  пакете  diald
              находятся примеры файлов конфигурации, использующих
              этот   режим.   Заметьте,   что    бОльшая    часть
              конфигурации  управления  модемом не используется в
              этом режиме и просто игнорируется.

       -m <m> Это синоним команды mode.


       keepalive <t>
              Эта опция указывает diald  установить  таймер  SLIP
              keepalive  на  <t> секунд. Это работает только если
              ядро скомпилировано с опцией SLIP keepalive. С этой
              опцией  ядро  положит  трубку  на  SLIP  линии,  на
              которой нет ни одного пакета в течении <t>  секунд.
              Если  другая  сторона  SLIP соединения может делать
              SLIP outfill, то эта опция может использоваться для
              проверки линий с проблемами оборудования. Вы можете
              достичь того же эффекта, если сделаете  так,  чтобы
              во   время   соединения  другая  сторона  регулярно
              посылала вам  пакеты.  Один  из  способов  добиться
              этого  -- настроить diald так, чтобы он игнорировал
              ping-пакеты и посылать ping-пакеты  каждую  секунду
              на  ваш  маршрутизатор. Если он перестает отвечать,
              то опция keepalive приведет к  закрытию  соединения
              (положит  трубку)  через  <t> секунд. Заметьте, что
              <t> должно находиться в пределах от 0 до 255.


       outfill <t>
              Эта опция указывает diald  установить  таймер  SLIP
              outfill  на  <t>  секунд.  Это работает только если
              ядро скомпилировано с опцией SLIP outfill.  С  этой
              опцией ядро будет посылать пустой SLIP пакет каждые
              <t> секунд, если в течение этого  времени  не  было
              послано   никакого   другого   трафика.  Это  может
              использоваться  в  сочетании  с  опцией  keepalive,
              чтобы  убедиться,  что  соединение существует, даже
              если в текущий момент отсутствует IP трафик.


       accounting-log <f>
              Имя  файла,  в  который  diald  дописывает  учетную
              информацию.  Эта команда позволяет diald записывать
              время  начала  и  завершения  соединения  и  размер
              данных,  переданных  в  течение каждого соединения.
              Это   предназначено   для    учета    использования
              телефонов.


       pidfile <f>
              Изменяет  имя  файла,  которое diald использует для
              хранения своего собственного PID,  с  diald.pid  на
              указанное  имя  файла. Обычно этот файл находится в
              директории /var/run, хотя на некоторых системах  он
              помещается в /etc.


       fifo <f>
              Включает  управляющий  FIFO-канал. Diald попытается
              открыть именованный канал  с  именем  <f>.  Внешние
              программы  могут  писать  команды  в  этот канал, и
              diald будет  реагировать  на  них.  Список  команд,
              которые  можно дать diald, смотрите ниже в секции о
              сигналах и FIFO-командах.  Если  именованный  канал
              уже  существует,  diald  просто  попытается открыть
              его. Если он не существует, то будет создан.  Diald
              создает   канал,   владельцем   которого   является
              пользователь, запускающий diald  (обычно  root),  с
              правами "0600". Заметьте, что обычно предоставление
              слишком большому количеству пользователей доступа к
              управляющему  каналу  diald  -- плохая идея. Также,
              бОльшая безопасность, вероятно, обеспечивается  при
              создании  FIFO  и  установке  его владельцев и прав
              доступа заранее, нежели  чем  при  создании  канала
              самим diald.

       debug <mask>
              Устанавливает   отладочную  маску.  Маска  является
              двоичным ИЛИ следующих шестнадцатиричных флагов:

                   0x0001         FILTER_MATCH
                   0x0004         PROXYARP
                   0x0008         VERBOSE
                   0x0010         STATE_CONTROL
                   0x0020         TICK
                   0x0040         CONNECTION_QUEUE

              Флаг   FILTER_MATCH   указывает   diald    выдавать
              информацию   о   пакетах,   которые   соответствуют
              правилам фильтрации и об этих правилах.  Флаг PROX-
              YARP   указывает   diald   выдавать   информацию  о
              настройке proxyarp.  Флаг VERBOSE  указывает  diald
              выдавать    подробную    информацию   о   различных
              нормальных операциях.  Флаг STATE_CONTROL указывает
              diald  выдавать  информацию  о  конечном  состоянии
              управления   статусом   соединения.    Флаг    TICK
              указывает diald выдавать heartbeat сообщение каждые
              несколько секунд.  Флаг CONNECTION_QUEUE  указывает
              diald   выдавать   подробную  информацию  о  каждом
              изменении  в  очереди   соединения.    Значение   0
              отключает   отладочную  выдачу.  По  умолчанию  это
              именно так и есть.

       -daemon
              Не исполняться в режим демона.  Это  означает,  что
              стандартный  ввод,  стандартный вывод и стандартный
              ошибочный  вывод  не  закрывается,  все   сообщения
              печатаются  как на стандартный ошибочный вывод, так
              и в syslog, и diald не уходит в фоновое выполнение.
              В  основном  это полезно, когда вы запускаете его в
              отладочном режиме и хотите видеть, что  происходит.

       pppd-options <arg1> ...
              Когда   diald  используется  в  режиме  PPP,  можно
              передать дополнительные параметры pppd,  указав  их
              после   команды  pppd-options,  или  после  "--"  в
              командной строке.

              Обычно этого  не  требуется,  так  как  команды  по
              умолчанию  помещаются  в  файл /etc/ppp/options. Но
              если вам требуется запускать много  копий  diald  с
              разными  опциями pppd, то вам придется использовать
              эту способность.   ПРЕДУПРЕЖДЕНИЕ:   Заметьте,  что
              некоторые команды pppd не должны быть указаны, даже
              в файле  /etc/ppp/options,  потому  что  они  будут
              мешать нормальной работе diald.

              В  частности,  не  следует  указывать  терминальное
              устройство, скорость  передачи,  и  опции  crtscts,
              xonxoff,  -crtscts,  defaultroute,  lock,  netmask,
              -detach, modem, local, mtu и proxyarp.  Используйте
              соответствующие  команды diald для управления этими
              настройками pppd.

       lock-prefix <path>
              Устанавливает  префикс  пути,   используемого   для
              создания  файловых  флагов  модемов.  По  умолчанию
              равно "/var/lock/LCK..".

       pidstring
              Пишет   файловые   флаги   в   виде   ASCII-строки,
              содержащий    идентификатор   процесса   программы,
              создающей файловый флаг.  Включено по умолчанию.

       -pidstring
              Создает файловые флаги в двоичном формате.

       run-prefix <path>
              Указывает директорию, в которую diald пишет файл со
              своим PID. По умолчанию это "/var/run".

       path-route <path>
              Устанавливает  путь  к команде route.  По умолчанию
              это "/sbin/route". Diald  должен  знать  правильный
              путь для нормальной работы.

       path-ifconfig <path>
              Устанавливает  путь  к  команде  По  умолчанию  это
              "/sbin/ifconfig".  Diald  должен  знать  правильный
              путь для нормальной работы.

       path-pppd <path>
              Устанавливает  путь  к  команде pppd.  По умолчанию
              это "/usr/sbin/pppd". Diald должен знать правильный
              путь для нормальной работы в режиме PPP.

       path-bootpc <path>
              Устанавливает  путь к команде bootpc.  По умолчанию
              это   "/usr/sbin/bootpc".   Diald   должен    знать
              правильный   путь   для   нормальной   работы   при
              использовании режима bootp опции "dslip-mode".

       buffer-packets
              Указывает   diald   буферизовать   пакеты,   ожидая
              появления  соединения. По умолчанию это именно так.

       -buffer-packets
              Указывает  diald  не  буферизовать  пакеты,  ожидая
              появления соединения.

       buffer_size <n>
              Устанавливает  размер  буфера  для хранения пакетов
              при ожидании  появления  соединения.  По  умолчанию
              равно 65536 байт.

       buffer-fifo-dispose
              Указывает   diald   отбрасывать  пакеты  в  порядке
              "первый пришел -- первый ушел", если ему не хватает
              места  для  буфера  пакетов  при ожидании появления
              соединения. По умолчанию это именно так.

       -buffer-fifo-dispose
              Указывает diald не отбрасывать старые пакеты, когда
              буфер  наполняется. Не могу представить себе, зачем
              вам это может понадобиться, но я все равно  включил
              эту опцию.

       buffer-timeout <n>
              Устанавливает  таймаут  для  отбрасывания пакетов в
              буфере. По умолчанию это 600 секунд (10 минут). Это
              хорошая   идея,   так   как  вы  не  хотите,  чтобы
              отсылались пакеты,  которым  уже  несколько  часов,
              если  diald  поднимает  соединение  по какой-нибудь
              другой причине.


   Конфигурация устройств
       Команды в этой секции управляют устройством(ами),  которые
       diald использует для внешнего IP соединения.

       device <f>
              Добавляет   устройство   <f>  в  список  устройств,
              которые   могут   использоваться   для    исходящих
              соединений.  Для режимов SLIP и PPP параметр должен
              быть  именем  последовательного   устройства.   Для
              режима  "dev"  параметр должен быть именем Ethernet
              устройства.

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


       rotate-devices
              Обычно  diald  пытается  открыть  каждое  возможное
              устройство,  указанное  в   командной   строке,   в
              порядке,   в   котором  они  заданы.   Если  первое
              устройство отказывает,  причем  так,  что  оно  еще
              может   быть  открыто,  но  неспособно  соединиться
              (например, кто-то наступил на модемный кабель),  то
              diald  окажется  неспособным  совершить соединение,
              пока эта проблема  не  будет  решена.  Эта  команда
              заставляет   diald   циклически   обходить   список
              устройств при  каждом  открытии  устройства.  Таким
              образом, в вышеприведенном сценарии diald не сможет
              соединиться с помощью поврежденного устройства,  но
              в    следующий   раз   сначала   попробует   второе
              устройство.


       connect <p>
              Использовать исполняемый файл или shell-script  <p>
              для  установки  соединения. Обычно этот файл звонит
              по модему и устанавливает SLIP или PPP сессию.

              Команда <p> выполняется со  стандартными  вводом  и
              выводом  перенаправленными  в  модемное устройство.
              Вдобавок, устанавливаются переменные среды MODEM  и
              FIFO.   Переменная   среды   MODEM   содержит   имя
              устройства. Это полезно  в  случаях,  когда  скрипт
              должен  вести  себя  по-разному  в  зависимости  от
              устройства, с которым он работает.

              Переменная среды  FIFO  содержит  имя  управляющего
              FIFO,  используемого  diald. Это позволяет скриптам
              передавать   информацию   обратно    diald    через
              управляющий  канал.  Заметьте, что переменная среды
              FIFO   не    будет    установлена,    если    diald
              сконфигурирован,  чтобы не использовать управляющий
              fifo.

              Программа  chat,   поставляемая   с   pppd   обычно
              используется  для  создания  скрипта  соединения. В
              случаях,   когда   chat'а    недостаточно,    можно
              использовать скрипты на sh, csh, perl или expect.

              Эта  команда  требуется, если опция mode отличается
              от "dev",  в  этом  случае  опция  "connect"  будет
              игнорирована.


       disconnect <p>
              Использовать  исполняемый файл или shell-script для
              закрытия последовательного  соединения.  Эту  опцию
              можно  использовать,  чтобы положить трубку модема,
              который не умеет делать это сам.  Так же, как и  со
              скриптом  соединения,  этот  скрипт  исполняется со
              стандартными вводом и выводом  перенаправленными  в
              модем  и переменной среды MODEM установленной в имя
              устройства, с которым работает скрипт.


       lock   Производить блокирование последовательной  линии  в
              стиле UUCP.


       speed <baud-rate>
              Устанавливает  скорость  передачи,  используемую на
              последовательной линии. Значение  по  умолчанию  --
              38400.


       modem  Указывает  работать  с последовательным устройством
              как с модемом.  Эта команда  также  будет  передана
              pppd при работе в режиме PPP.


       crtscts
              Использовать  аппаратный  контроль  передачи (RTS и
              CTS) по последовательной линии. Эта  команда  также
              будет передана pppd в режиме PPP.  Скорее всего, вы
              будете использовать эту команду.


   Сетевая конфигурация
       Нижеследующие   команды   указывают,   как   diald   будет
       конфигурировать  свои  сетевые  интерфейсы  и какие строки
       будут добавлены в таблицу маршрутизации.


       local <a>
              Задает     локальный      IP-адрес      соединения,
              устанавливаемого   diald.   Эта  опция  обязательно
              должна присутствовать. Если вы не используете опцию
              dynamic,   то  этот  адрес  должен  соответствовать
              локальному  IP-адресу,   присвоенному   вам   вашим
              провайдером.


       remote <a>
              Задает      удаленный      IP-адрес     соединения,
              устанавливаемого   diald.     Эта    опция    также
              обязательно   должна  присутствовать.  Если  вы  не
              используете опцию dynamic,  то  этот  адрес  должен
              совпадать с удаленным IP-адресом вашего провайдера.
              (Заметьте, что по природе IP-маршрутизации  это  не
              обязательно,  но  ваши  таблицы маршрутизации будут
              выглядеть запутанно, если эти адреса не  совпадают.


       dynamic
              Динамически    изменять   локальный   и   удаленный
              IP-адреса так, чтобы они совпадали с полученными во
              время  установки  соединения  (по  SLIP  или  PPP).
              Заметьте,  что  в  динамическом  режиме   начальные
              локальный  и  удаленный  IP-адреса все равно должны
              быть  указаны,   но   необязательно   должны   быть
              правильны.  Обычно  это  означает,  что вам следует
              использовать  адреса   из   интервала   IP-номеров,
              зарезервированных  для  приватных сетей, которые не
              могут появляться в самом Интернете. Такими адресами
              являются   адреса   в   сетях   10.0.0.0/255.0.0.0,
              172.16.0.0/255.240.0.0, и  192.168.0.0/255.255.0.0.

              Если вы уже используете их, то адреса 192.168.0.1 и
              192.168.0.2 являются удобным  вариантом  для  ваших
              локального  и  удаленного адресов. Заметьте, что вы
              можете знать только локальный либо удаленный адрес,
              не  зная  второй  из  них.  В этом случае вы можете
              указать тот, который знаете.


       strict-forwarding
              Если у вас динамический локальный IP адрес, то если
              соединение   прервется   во  время  TCP-сессии,  то
              возобновить ее будет  невозможно.  Это  ограничение
              TCP.  Однако, обычно diald все равно будет пытаться
              восстановить соединение, так как в имеется трафик в
              рамках  вашей  старой  TCP  сессии.  Это  -- потеря
              времени   соединения.    Опция    strict-forwarding
              помогает  избежать  этого.  Когда strict-forwarding
              включен, diald будет  игнорировать  все  пакеты,  у
              которых  как  исходный,  так  и  конечный адреса не
              совпадают  с  текущим  локальным   адресом.    Если
              соединение  отсутствует,  то  это  локальный адрес,
              указанный в опции "local". Если соединение есть, то
              это   --  текущий  динамически  присвоенный  адрес.
              Скорее всего, вам захочется использовать эту опцию,
              если  у  вас  динамический  локальный адрес. Скорее
              всего, вам не нужно использовать эту опцию, если  у
              вас статический локальный адрес. Эта опция никак не
              связана с опцией "dynamic", потому что у вас  могут
              быть   динамический   удаленный   и   фиксированный
              локальный адреса, в этом случае опция  "strict-for-
              warding" нежелательна.


       dslip-mode <mode>
              Устанавливает     интерпретацию     информации    о
              динамических адресах  для  режима  SLIP.  Возможные
              варианты:  bootp,  remote,  local,  remote-local, и
              local-remote.  Если  режим   --   bootp,   то   для
              определения  динамического SLIP адреса используется
              протокол BOOTP.  В  противном  случае  динамический
              SLIP   адрес   определяется   путем  чтения  строки
              приветствия, которую выдает удаленный  SLIP  сервер
              при   старте.   Строка  может  выглядеть  следующим
              образом:

              Annex address is 137.130.1.14. Your  local  address
              is 137.130.2.44.

              Опция dslip-mode указывает, какие IP адреса следует
              прочитать из  начального  сообщения  сервера,  и  в
              каком   порядке   они   появляются  там.  Режим  по
              умолчанию -- remote-local.


       netmask <a>
              Устанавливает   маску   сети,   используемую    для
              интерфейса.


       mtu <m>
              Устанавливает   MTU   (Maximum  Transmission  Unit,
              Максимальная Единица Передачи) в значение  <m>.  По
              умолчанию  равно  1500.   Это  максимальный  размер
              пакета, который  сетевой  уровень  будет  слать  по
              физическому соединению. Используются значения между
              296 и 3000. Если вы выберете небольшое значение, то
              получите  лучшее  время  ответа  при  интерактивных
              сессиях, тогда  как  большие  значения  приведут  к
              лучшей  пропускной  способности,  за  счет скорости
              интерактивной  работы.  Заметьте,  что  pppd  может
              выбрать  значение, отличающееся от того, которое вы
              задали. Если вы  используете  режим  SLIP,  то  это
              значение    должно   в   точности   соответствовать
              значению, требуемому вашим SLIP  провайдером.  Если
              значения   MTU   на   обоих  концах  соединения  не
              совпадают, вы столкнетесь с серьезными проблемами с
              производительностью.

              Если  вы  используете  pppd,  и  pppd устанавливает
              значение  меньшее,  чем   вы   задали,   то   diald
              попытается  изменить MTU на значение, установленное
              pppd.  Безошибочная  работа  этого   механизма   не
              гарантируется,   так   как  изменение  MTU  на  уже
              работающем  интерфейсе  не  поддерживается   ядром.
              Возможно,  будущие версии ядра и будут поддерживать
              это.  Если  требуется  изменение,   diald   напишет
              предупреждение в системный журнал. Чтобы убедиться,
              что   проблем   не   возникает,   вам,    вероятно,
              потребуется  перезапустить  diald  с  тем значением
              MTU, которое diald сообщил в системном журнале.


       mru <m>
              Устанавливает   MRU    (Maximum    Receive    Unit,
              Максимальная  Единица  Приема)  в значение <m>. Это
              имеет смысл только в режиме  PPP  и  задает  размер
              MTU,   о   котором  pppd  будет  просить  удаленную
              сторону.  Это  может  быть  полезно  для  установки
              совпадающих   значений  MTU  на  обоих  концах  PPP
              соединения.


       window <s>
              Эта опция задает  размер  окна  TCP,  помещаемый  в
              таблицу   маршрутизации.   Установка  размера  окна
              ограничивает     количество     байт,     которые
              TCP-соединение  будет помещать в очередь передачи в
              каждый момент времени. Это может сильно повлиять на
              производительность       интерактивных      сессий.
              Теоретически,  размер  окна  должен  быть   немного
              больше,  чем произведение пропускной способности на
              время  задержки,  и  большие  размеры  окна   могут
              отрицательно  повлиять  на  производительность. Для
              модема на 33.2 kbps с  временем  полного  обращения
              (round-trip   time),   равным  120ms,  произведение
              пропускной  способности  на  время  задержки  равно
              всего   лишь   576   байт!  Это  слишком  мало  для
              практических целей, но размер  окна  между  2048  и
              4096  является нормальным для MTU между 296 и 1500.
              Вам также следует задавать размер окна кратным MTU,
              в   противном   случае   всегда   будет  оставаться
              неиспользуемая часть окна.


       reroute
              Эта  команда  указывает  diald  изменить  системный
              маршрут   так,   чтобы  он  указывал  на  настоящее
              соединение, когда оно появляется, а  не  пересылать
              пакеты с прокси-соединения на настоящее соединение.
              Это -- поведение diald по умолчанию.


       -reroute
              Эта команда указывает  diald  пересылать  пакеты  с
              прокси-соединения  на  настоящее  соединения,  а не
              изменять системный маршрут так, чтобы  он  указывал
              на настоящее соединение. Это может быть необходимо,
              чтобы  избежать  зависания  TCP  сессий,  если   вы
              работаете  с  ядром Linux старше 2.0.0 и у вас есть
              несколько выходящих SLIP или PPP соединений.

              Также  это  может  быть  полезно,  если  какие-либо
              программы,  которые  вы запускаете, смущаются из-за
              постоянных изменений выходного сетевого устройства.
              (Сообщают,   что  пакет  SOCKS-прокси  сталкивается
              из-за этого с проблемами.)

              Обычно этой опции следует избегать, потому что  она
              может  вызвать замедление исходящего трафика вплоть
              до 20%.


       defaultroute
              Указывает diald установить маршрут по умолчанию  на
              SLIP соединение.


       proxyarp
              Указывает   diald  добавить  строку  с  IP  адресом
              удаленной системы и Ethernet адресом этой системы в
              системную таблицу ARP [Address Resolution Protocol]
              (Протокол Сопоставления Адресов).


       addroute <script-name>
              Указанные скрипт или  исполняемый  файл  вызывается
              diald,  когда  он  устанавливает прокси-устройство.
              Скрипту передается пять аргументов:  <iface>  <net-
              mask> <local-ip> <remote-ip> <metric>.

              Аргумент   <iface>  обозначает  интерфейс,  который
              использует   прокси-устройство,    следующие    три
              аргумента  задают  текущую маску сети, локальный IP
              адрес  и  удаленный  IP  адрес  этого   интерфейса.
              Аргумент  <metric> задает метрику маршрута, которую
              diald хотел бы установить.

              Diald устанавливает этот параметр в 1 для маршрутов
              через прокси-соединение или в 0 для маршрутов через
              физическое    соединение.     Следует     соблюдать
              аккуратность  при  установке  маршрутов в этих двух
              случаях.  Маршруты  для  прокси-соединения   должны
              иметь в качестве маршрутизатора "0.0.0.0".

              Маршруты  для  физического  соединения  в  качестве
              маршрутизатора должны иметь <remote-ip>. Если вы не
              сделаете   этого,   то   появится   окно  во  время
              переключения между прокси и физическим соединением,
              во    время   которого   маршрутизация   не   будет
              установлена. Это может привести к  прекращению  TCP
              соединений  при  использовании Linux версии 1.3.x и
              выше.

              Заметьте,   что   параметры   маршрутизации   могут
              измениться в промежутке между первым вызовом вашего
              скрипта   и   моментом,   когда   diald   установит
              динамическое  соединение.  Это приведет к тому, что
              скрипт будет вызван еще раз.


       delroute <script-name>
              Указанный скрипт или  исполняемый  файл  вызывается
              diald  перед  тем,  как он удалит прокси-устройство
              (когда  diald  готовится  к   завершению).   Скрипт
              получает  те  же  параметры, что и скрипт addroute.
              Эта команда присутствует для  симметрии,  и  скорее
              всего,  она  вам  не понадобится, так как ядро само
              удаляет  маршруты,  проходящие   через   интерфейс,
              который прекращает работу.


       ip-up <script-name>
              Указанный  скрипт  или  исполняемый файл вызывается
              diald каждый раз, когда уровень  IP  начинает  свою
              работу. Этот скрипт получает те же параметры, что и
              скрипт addroute. Diald не ждет,  пока  этот  скрипт
              завершит  свою  работу, а переходит к другим делам.
              Это   означает,    что    существует    вероятность
              одновременного   выполнения   более   одной   копии
              скрипта. Учитывайте это при его написании.


       ip-down <script-name>
              Указанный скрипт или  исполняемый  файл  вызывается
              diald  каждый раз, когда уровень IP прекращает свою
              работу. Этот скрипт получает те же параметры, что и
              скрипт  addroute.  Diald  не ждет, пока этот скрипт
              завершит свою работу, а переходит к  другим  делам.
              Это    означает,    что    существует   вероятность
              одновременного   выполнения   более   одной   копии
              скрипта. Учитывайте это при его написании.


   Настройка таймаутов
       Нижеследующие опции конфигурируют, сколь долго diald будет
       ждать разнообразных событий, и до  некоторой  степени  то,
       что будет предпринято, когда такие таймауты произойдут.


       connect-timeout <t>
              Устанавливает     максимальное    время    ожидания
              завершения работы скрипта connect в <t> секунд.  По
              умолчанию -- 60 секунд.


       disconnect-timeout <t>
              Устанавливает     максимальное    время    ожидания
              завершения работы скрипта disconnect в <t>  секунд.
              По умолчанию -- 60 секунд.


       redial-timeout <t>
              Устанавливает  время  между попытками дозвона в <t>
              секунд.  По умолчанию -- 30 секунд.


       nodev-retry-timeout <t>
              Устанавливает  задержку  между  попытками  дозвона,
              если  в  течение  <t>  секунд  недоступно  ни  одно
              модемное устройство. По умолчанию -- 1 секунда.


       stop-dial-timeout <t>
              Устанавливает   максимальное   количество   времени
              ожидания  завершения  скрипта connect после посылки
              ему сигнала SIGINT. По умолчанию -- 60 секунд.


       kill-timeout <t>
              Устанавливает    максимальное    время     ожидания
              завершения   работы   запущенного   процесса  после
              посылки ему  сигнала  SIGKILL.  После  этого  diald
              будет  считать,  что  что-то  заклинило  и завершит
              работу (этого  никогда  не  должно  произойти).  По
              умолчанию -- 60 секунд.


       start-pppd-timeout <t>
              Устанавливает  максимальное  время  ожидания,  пока
              pppd выберет PPP устройство.  По  умолчанию  --  60
              секунд.


       stop-pppd-timeout <t>
              Устанавливает  максимальное  время  ожидания,  пока
              pppd не прекратит свою  работу  после  посылки  ему
              сигнала SIGINT. По умолчанию -- 60 секунд.

       first-packet-timeout <t>
              Устанавливает  таймаут  для  первого  пакета. После
              того, как соединение было установлено, может пройти
              небольшое  время перед тем, как будет послан первый
              пакет,  например,  пока   pppd   договаривается   о
              параметрах  соединения.  Если в течение <t> секунд,
              не появилось ни одного пакета, то diald  посчитает,
              что  что-то сломалось и закроет соединение. Таймаут
              по умолчанию -- 120 секунд.


       retry-count <n>
              Устанавливает максимальное число раз, которые diald
              должен пытаться совершить перед тем, как прекратить
              попытки и опять ждать появления  сетевого  трафика.
              По умолчанию -- 0.


       died-retry-count <n>
              Устанавливает  максимальное количество раз, которые
              diald  должен  пытаться  восстановить  прервавшееся
              соединение  перед  тем,  как  прекратить  попытки и
              опять  ждать   появления   сетевого   трафика.   По
              умолчанию -- 1 раз.


       redial-backoff-start <n>
              Задает   количество   последовательных  неудач  при
              соединении, после которого diald удваивает задержку
              между  попытками  дозвона после каждой попытки. Эта
              команда  может  использоваться  для  предотвращения
              загрузки  телефонной линии, когда удаленная сторона
              сильно занята. Если  эта  команда  не  указана,  то
              считается  бесконечностью, что фактически отключает
              этот  алгоритм.  Когда  опция  redial-backoff-start
              установлена,  diald будет использовать redial-time-
              out в качестве времени задержки между  первыми  <n>
              неудачными   попытками.  После  этого  diald  будет
              удваивать время ожидания после каждой неудачи, пока
              не достигнет предела в redial-backoff-limit секунд.
              Успешное соединение начинает этот алгоритм сначала.


       redial-backoff-limit
              Устанавливает   максимальное   количество   секунд,
              которые  diald   будет   ждать   между   неудачными
              попытками   дозвона,   при  срабатывании  алгоритма
              замедления звонков. Значение по  умолчанию  --  600
              секунд (10 минут).


       dial-fail-limit
              Устанавливает        максимальное        количество
              последовательных неудачных попыток соединения. Если
              этот  предел превышен, diald заблокирует дальнейшие
              соединения до тех пор, пока  в  командный  FIFO  не
              будет  послана  команда  "unblock".  Если эта опция
              установлена  в  0,  diald  не  будет  устанавливать
              никакого  предела.  Значение по умолчанию 0.  Когда
              произойдет превышение, diald  запишет  в  системный
              журнал такое сообщение:

              "Too  many dialing failures in a row. Blocking con-
              nection."

              Эта  команда  предназначена  для  использования   в
              системах,   которым  необходимо  избежать  большого
              количества  оплачиваемых  звонков  на   некорректно
              работающую    машину.    Когда    diald   блокирует
              соединение,  оператор   может,   узнав   об   этом,
              исправить  проблему  и  выдать  команду  "unblock",
              чтобы разрешить diald продолжение работы.


       route-wait
              На некоторых плохо сконфигурированных PPP  серверах
              трафик не будет пересылаться до тех пор, пока демон
              маршрутизации  не  заметит,  что   PPP   соединение
              установлено,  и пакет с информацией о маршрутизации
              не пройдет по соединению от  сервера  на  локальную
              машину.  Эта опция указывает diald, что он общается
              с сервером, имеющим такую проблему,  и  что  он  не
              должен  считать  IP  уровень работающим до тех пор,
              пока не получит хотя бы один пакет с  той  стороны.
              Надеюсь, никому не придется использовать эту опцию.


       two-way
              Обычно, если соединение прервалось из-за того,  что
              другая сторона положила трубку, то diald немедленно
              будет перезванивать. Эта команда  заставляет  diald
              перезванивать только если имеется выходящий трафик.
              Это предназначено для  использования  тогда,  когда
              другая  сторона  тоже использует систему дозвона по
              требованию (возможно, тоже diald).


       give-way
              Обычно, если команда connect выдается в FIFO, когда
              выполняется  скрипт соединения, то она игнорируется
              (the FIFO connect request shell is terminated). Эта
              команда  вызывает противоположное поведение: скрипт
              соединения завершается, и выполняется команда  con-
              nect.  Это предназначено для использования на одном
              (или обоих) концах двусторонних  соединений,  чтобы
              избежать   проблем   при   одновременных   попытках
              дозвониться друг до друга.


   Команды настройки правил фильтрации пакетов
       Diald  постоянно  поддерживает  виртуальное  соединение  с
       другой  системой.  Это соединение может находиться в одном
       из  двух  режимов  --  либо   соответствующее   физическое
       соединение  должно  быть установлено, либо оно должно быть
       разорвано.

       Когда физическое соединение должно быть установлено, diald
       будет   поддерживать   физическое   соединение,   звоня  и
       перезванивая при необходимости. Также он будет отслеживать
       пакеты,   проходящие   по   виртуальному   каналу,   чтобы
       определить, когда следует разорвать физическое соединение.

       Когда  физическое  соединение должно быть разорвано, diald
       будет  отслеживать  пакеты,  проходящие  по   виртуальному
       каналу,   чтобы   определить,  что  физическое  соединение
       следует установить.   Общий  подход,  используемый  diald,
       чтобы  определить,  когда  переключиться между этими двумя
       режимами, заключается в создании набора  соединения  (con-
       nection  set), состоящего из предметов соединения (connec-
       tion identities), каждому из которых присвоен таймаут.

       Когда таймаут, присвоенный предмету соединения,  истекает,
       этот  предмет  удаляется из набора. Когда набор соединения
       пуст, diald считает, что физическое соединение должно быть
       разорвано,  в  противном  случае  --  что  оно должно быть
       установлено.

       Эта секция описывает опции конфигурации, управляющие  тем,
       как  diald  создает  предметы  для  наборов соединения. На
       странице  diald-examples  находятся   несколько   примеров
       использования этих опций.


       prule <name> <protocol> <spec>
              Определяет новое правило протокола с именем <name>,
              которое будет использоваться в опциях filter.  Поле
              <protocol>    должно    быть    именем   протокола,
              определенного в файле  /etc/protocols,  специальным
              словом   "any"  либо  целым  числом  от  0  до  254
              включительно.  Поле  <spec>  --   это   список   из
              шестнадцати     кодов     смещений,     разделенных
              двоеточиями, которые указывают  байты,  извлекаемые
              из пакетов, чтобы создать идентификатор соединения.
              Каждый код смещения -- это целое число, возможно, с
              префиксом   значения  с  префиксом  --  смещения  в
              сегмент данных IP пакета.


       var <name> <spec>
              Определяет  новую  переменную  с   именем   <name>,
              которая  будет использоваться в опциях filter. Поле
              <spec>  определяет,  как  создать   значение   этой
              переменной   на   основе  пакета.  Оно  состоит  из
              однобайтового смещения  к  четырехбайтовому  слову,
              возможно,  с  префиксом  '+', за которым, возможно,
              следует значение в скобках для  сдвига  вправо,  за
              которым,  возможно,  следует  символ '&' и значение
              битовой маски. Смещения с  префиксом  '+'  являются
              смещениями  в сегмент данных IP пакета, в противном
              случае они являются смещениями в заголовке  пакета.
              Например,  IP адрес отправителя пакета определяется
              как

                   var ip.saddr 12

              что означает "получить четыре байта, находящихся со
              смещения 12 в заголовке пакета."

              Похожим образом определяется IP-протокол пакета:

                   var ip.protocol 9(24)&0xff

              что означает "получить четыре байта, находящихся со
              смещения 9 байт в  заголовке,  сдвинуть  полученное
              значение  вправо  на 24 бита и маскировать побитово
              значением 0xff."

              В качестве заключительного примера, порт отправки в
              заголовке tcp определяется как

                   var tcp.source +0(16)&0xffff

              что  указывает  "получить  четыре  байта, начиная с
              начала сегмента данных ip, сдвинуть значение вправо
              на 16 бит, и маскировать побитово с 0xffff."


       accept <protocol-rule> <timeout> <packet-rule>
              Определяет    правило    фильтрации   пакетов   для
              управления     соединением.     Пакеты,     которые
              соответствуют    этому    правилу,    приведут    к
              установлению соединения и поддержанию его в течение
              как   минимум   <timeout>  секунд.  <protocol-rule>
              должно указывать на протокольное правило, созданное
              предварительно  с помощью оператора prule. Значение
              <timeout> должно быть неотрицательным целым числом.
              Значение  0  означает,  что  соединение,  созданное
              из-за этого пакета, будет немедленно разорвано.


              Параметр <packet-rule> --  это  список  одного  или
              более   условий,   которым  должен  соответствовать
              пакет.  Специальное  правило  "any"   соответствует
              любому   пакету.   В   противном   случае,  правило
              записывается  как   список   условий,   разделенных
              запятыми, и без пробелов между ними. Каждое условие
              является  проверкой  значения  какого-либо  поля  в
              пакете. Простые условия записываются в виде

                   <variable-name><op><value>

              или

                   <variable-name>&<bitmask><op><value>

              Где  <bitmask>  --  необязательная  битовая  маска.
              Перед сравнением производится  логическая  операция
              AND  между  битовой  маской  и значением переменной
              <variable-name>. <op> -- один  из  операторов  "=",
              "!=", "<=" или ">=".

              Также  существует  две  короткие формы: "<variable-
              name>"  и  "!<variable-name>",   которые   являются
              сокращениями для "<variable-name>!=0" и "<variable-
              name>=0".

              В правилах для пакетов  могут  использоваться  лишь
              переменные,   предварительно  созданные  с  помощью
              оператора var.  Значения для  сравнения  и  битовые
              маски могут задаваться как десятичные, восьмиричные
              и шестнадцатиричные числа, цифровые IP-адреса,  или
              как символические имена.

              Символические     имена    вида    "tcp.<service>",
              "udp.<service>"      соответствуют       значениям,
              определенным  в /etc/services.  Символические имена
              могут  также  соответствовать   любому   протоколу,
              определенному в /etc/protocols.

              См.   обсуждение  управления  временем  поддержания
              соединения за дальнейшей  информацией  о  том,  как
              применяются эти "accept"-правила.


       bringup <protocol-rule> <timeout> <packet-rule>
              Определяет    правило    фильтрации   пакетов   для
              управления  соединением.   Пакеты,  соответствующие
              правилу   bringup,   вызовут   попытку   установить
              соединение  на  время  по  крайней  мере  <timeout>
              секунд.   Эти правила игнорируются, если соединение
              в  настоящий  момент  уже  установлено.   Параметры
              полностью    соответствуют    параметрам    команды
              "accept".

              См.  обсуждение  управления  временем   поддержания
              соединения  за  дальнейшей  информацией  о том, как
              применяются "bringup"-правила.


       keepup <protocol-rule> <timeout> <packet-rule>
              Определяет   правило   фильтрации    пакетов    для
              управления     соединением.      Пакеты,    которые
              соответствуют правилу "keepup", вызывают  продление
              поддержания  соединения  на  время  по крайней мере
              <timeout> секунд. Эти  правила  игнорируются,  если
              соединение   в  настоящий  момент  не  установлено.
              Параметры   полностью   соответствуют    параметрам
              команды "accept".

              См.   обсуждение  управления  временем  поддержания
              соединения за дальнейшей  информацией  о  том,  как
              применяются "keepup"-правила.


       ignore <protocol-rule> <packet-rule>
              Определяет    правило    фильтрации   пакетов   для
              управления  соединением   Пакеты,   соответствующие
              правилу  "ignore"  будут игнорироваться и не станут
              соответствовать   больше   никаким   правилам.   За
              исключением   отсутствующего  параметра  <timeout>,
              параметры   полностью   соответствуют    параметрам
              команды "accept".

              См.   обсуждение  управления  временем  поддержания
              соединения за дальнейшей  информацией  о  том,  как
              применяются "keepup"-правила.


       restrict <start> <end> <weekdays> <monthdays> <months>

       or-restrict <start> <end> <weekdays> <monthdays> <months>
              Обычно  правила  фильтрации  применяются постоянно.
              Оператор  "restrict"  приводит  к  тому,  что   все
              правила  фильтрации,  следующие за ним, применяются
              только во время,  указанное  в  этом  операторе.  У
              оператора    "restrict"   имеется   пять   числовых
              параметров. Первые два поля указывают  начальное  и
              конечное   время  в  виде  "ЧЧ:ММ:СС".  "*"  вместо
              начального    времени    равносильна    "00:00:00".
              Соответственно,   "*"   вместо   конечного  времени
              равносильна "23:59:59".  В  оставшихся  трех  полях
              могут   находиться  либо  "*",  обозначающая  любое
              значение, либо разделенный запятыми список чисел  и
              числовых диапазонов.

              Поле  <weekdays>  задает  дни  недели.  Допускаются
              числа в промежутке от 0 до 6, где номер  0  --  это
              воскресенье,  номер  1 -- понедельник, и так далее.
              Поле <monthdays> задает числа  месяца.  Допускаются
              значения  от 1 до 31.  Поле <months> задает месяцы.
              Допускаются значения от 1 до 12.

              Команда "restrict" указывает временной диапазон.

              Команда "or-restrict" дополняет предыдущую  команду
              "restrict"  так,  чтобы она включала в себя также и
              указанный  диапазон.  Например,  чтобы   ограничить
              правила  фильтрации  так,  чтобы  они применялись в
              промежутке  с  02:00-03:00  по  17:00-18:00  каждое
              воскресенье, можно использовать операторы


                   restrict 2:00:00 3:00:00 0 * *
                   or-restrict 17:00:00 18:00:00 0 * *

              ПРЕДУПРЕЖДЕНИЕ:  эта  возможность экспериментальна,
              синтаксис может измениться в будущих версиях diald.


       up     Правило   up   заставляет   постоянно  поддерживать
              соединение, независимо  от  того,  наличествуют  ли
              какие-либо  пакеты.  Применение этого правила может
              быть    ограничено     использованием     оператора
              "restrict". Например, последовательность команд

                   restrict 12:00:00 13:00:00 * * *
                   up

              заставит  поддерживать  соединение с 12:00 по 13:00
              каждый день.


       down   Правило down приводит к  тому,  что  соединение  не
              устанавливается,  независимо  от  наличия  пакетов.
              Применение  этого  правила  может  быть  ограничено
              оператором  restrict.  Например, последовательность
              команд

                   restrict 12:00:00 13:00:00 * * *
                   down

              приведет  к   тому,   что   соединения   не   будет
              происходить в промежутке 12:00-01:00 каждый день.

              ЗАМЕТЬТЕ:  Правила  up и down, с взаимоисключающими
              параметрами применяются в порядке,  в  котором  они
              заданы    в    файлах    конфигурации.    Например,
              последовательность

                   restrict 12:30:00 12:39:00 * * *
                   down
                   restrict 12:00:00 13:00:00 * * *
                   up

              вызовет установку соединения в 12:00, разрыв его  в
              12:30,  повторную  установку  в  12:40, затем после
              13:00  состояние  соединения  будет   зависеть   от
              трафика.


       impulse <duration>,<fuzz>

       impulse <initial-duration>,<secondary-duration>,<fuzz>
              Команда   impulse   используется   для   управления
              соединением,  используя  кванты   времени   длиннее
              секунды.  Это  предназначено  для  использования  в
              условиях, где телефонные звонки оплачиваются исходя
              из  длительности  этих  квантов. Если у команды два
              аргумента,   то   параметр   <duration>   указывает
              количество  секунд,  которое diald будет удерживать
              соединение перед проверкой необходимости  разорвать
              его.  Параметр  <fuzz>  -- это количество секунд, в
              течение которых diald будет  отслеживать  состояние
              соединения,  перед тем, как снова начать удерживать
              его в течение <duration> секунд.

              При использовании  с  тремя  параметрами,  параметр
              <initial-duration> указывает минимальное количество
              секунд, в течение которых  diald  будет  удерживать
              соединение,   после  того,  как  сделан  телефонный
              звонок. После того, как это  время  истечет,  diald
              будет  вести себя как в случае с двумя параметрами,
              используя <secondary-duration>  вместо  <duration>.
              Нулевые значения для параметров <duration> и <fuzz>
              отключают использование импульсов.

              Например, если по  воскресеньям  телефонные  звонки
              оплачиваются  как $1 в час, с округлением в большую
              сторону,  то  вы  можете  удерживать  соединение  в
              течение  одного  часа,  раз  уж  вы сделали звонок.
              Чтобы   добиться   этого,   используйте   следующие
              команды:


                   restrict * * 0 * *
                   impulse 3570,30

              Эти   команды   заставят  удерживать  соединение  в
              течение  3570  секунд,  с   30-секундным   запасом,
              необходимым  на  установку и завершение соединения.
              Заметьте,   что   параметр   <fuzz>   не    следует
              устанавливать   в  малые  значения,  потому  что  в
              противном случае  вы  можете  не  успеть  завершить
              звонок, и вам придется платить еще за один импульс.

              Точно  так  же,  если  ваши   звонки   оплачиваются
              посекундно,  но за первые десять минут -- отдельная
              небольшая оплата, вы можете использовать команду

                   impulse 600,0,0

       flushfilters
              Удаляет все существующие правила фильтрации.


       flushprules
              Удаляет   все   существующие   определения   правил
              протоколов.


       flushvars
              Удаляет все существующие определения переменных.


ДИАГНОСТИКА
       Если  что-либо привело к ненормальному завершению, выходит
       с кодом ошибки 1.

       Ошибки и информационные сообщения журналируются с  помощью
       демона  syslog  с  кодом  LOCAL2. Если diald работает не в
       режиме  демона,  то  они  также   печатаются   в   stderr.
       Установка  отладочной  маски  (команда debug) может сильно
       увеличить количество  этих  сообщений.  Если  вы  включили
       отладку, следите за своими логами!


FILES
       /etc/diald.conf
              Файл конфигурации по умолчанию.

       /etc/diald.defs
              Стандартные   правила   протоколов   и  определения
              переменных.

       /var/lock/LCK..*
              Блокировочные    файлы    в    стиле    UUCP    для
              последовательных устройств.

       /var/run/*
              Место   расположения  файла  с  pid'ом  работающего
              diald. По умолчанию  используется  файл  diald.pid.
              Изменить это можно с помощью команды pidfile.


СМОТРИ ТАКЖЕ
       dctrl(1), diald-examples(5), diald-control(5), diald-moni-
       tor(5), pppd(8), chat(8), expect(1)


АВТОР
       Eric Schenk (Eric.Schenk@dna.lth.se)

ПЕРЕВОД
       Translation Copyright (C) Alexey Mahotkin 1998-1999
       alexm@hsys.msk.ru, http://alexm.here.ru

ОШИБКИ И ОГРАНИЧЕНИЯ
       Имеется   некоторое   количество   известных   проблем   и
       ограничений:

       Строки в файлах конфигурации могут содержать не более 1024
       символов. Более длинные строки молча обрубаются.

       Если не указано ни одного правила фильтрации, то  ни  один
       пакет  не будет им соответствовать и демон не будет ничего
       делать.   Вероятно,   в   этом   случае   следует,   чтобы
       соответствовали все пакеты.

       Diald    пытается   автоматически   установить   MTU   для
       прокси-соединения   в   соответствии   с   MTU   реального
       соединения,   на   котором   работает  ppp.  Работа  этого
       механизма не гарантируется, потому что  изменение  MTU  на
       активном  интерфейсе  не  поддерживается  ядром. Возможно,
       автоматически  установленный  MTU  приведет  к  тому,  что
       некоторые  пакеты  будут  отброшены.   Если  вы наблюдаете
       проблемы, вам следует  вручную  установить  эти  значения.
       Diald   сообщит  о  значении  реального  MTU  в  логах,  и
       предупредит о том, что вам необходимо настроить его.

       Использование команды monitor несет определенный риск  для
       безопасности,  так как любой имеющий доступ к управляющему
       FIFO, может заставить diald  писать  в  любой  именованный
       канал  в  системе.  Будьте  осторожнее  с  правами доступа
       управляющих FIFO.