# Диалоговая настройка соединения

Диалоговая настройка соединения ненамного сложнее настройки с применением мастера.

Диалоговая настройка запускается точно так же, как и мастер подключения. Запустите &kppp; из K-меню: программа находится в разделе Интернет под названием Подключение к Интернету.

Появится следующий диалог:

Начальный экран программы дозвона &kppp; Начальный экран программы дозвона &kppp;

Начальный экран программы дозвона &kppp;

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

Нажмите кнопку Настройка для создания нового соединения с Интернет.

На сей раз нажмите на кнопку Диалоговая настройка, и вы увидите следующий диалог:

Диалог Новое соединение Диалог Новое соединение

Диалог Новое соединение

Диалог Новое соединение содержит следующие разделы:

- Дозвон

- IP

- Шлюз

- DNS

- Скрипт логина

- Выполнить

- Статистика

Как правило, вам не потребуется заполнение всех разделов целиком, тем не менее, каждый из разделов детально описан далее.

## Вкладка Дозвон

Вкладка Дозвон в разделе Соединения Вкладка Дозвон в разделе Соединения

Вкладка Дозвон в разделе Соединения

На вкладке Дозвон находятся следующие опции:

Название соединения:

- Любому соединению должно быть дано название. Назовите его по своему усмотрению, но названия должны быть уникальными, если вы настраиваете более одного соединения.

Номер телефона:

- Укажите номер телефона для дозвона. Вы можете использовать символы, такие как -, для лучшей читаемости номера. Если вы укажете несколько номеров, разделенных двоеточием (например, `1111111:2222222:3333333`), то &kppp; при получении сигнала Занято начнет дозвон по следующему в последовательности номеру. Нажмите на кнопку Добавить для добавления номера, кнопку Удалить -- для удаления номера из списка, а стрелки вверх и вниз используйте для изменения порядка дозвона.

Протокол авторизации

- Выберите соответствующий способ авторизации, который &kppp; будет использовать при регистрации на сервере. За дополнительными сведениями обратитесь к вашему провайдеру. Использование PAP и CHAP описывается в разделе chap-and-pap.

Сохранить пароль

- Отметьте этот флажок, если хотите, чтобы &kppp; сохранил ваш пароль.

Ручная настройка демона ррр...

- При нажатии на эту кнопку появится диалог настройки аргументов демонаppp. В этом диалоге вы можете указать желаемые опции, которые &kppp; передаст демону ppp. На man-странице демона ppp вы найдете список доступных опций, однако вы должны иметь четкое представление о том, что делаете, в противном случае, воздержитесь от манипулирования аргументами.

## Вкладка IP

Вкладка IP в разделе Соединения Вкладка IP в разделе Соединения

Вкладка IP в разделе Соединения

Динамический IP-адрес

- Отметьте этот флажок, если ваш Интернет-провайдер использует динамическую IP-адресацию. В этом случае при каждом соединении с провайдером вашему компьютеру будет присваиваться новый IP-адрес.

Статический IP адрес

- Отметьте этот флажок, если ваш Интернет-провайдер выделил вам статический IP-адрес. В этом случае пропишите этот адрес в поле IP-адрес и укажите Маску подсети, если таковая необходима. Проконсультируйтесь у вашего Интернет-провайдера, если не знаете точно. Подавляющее большинство Интернет-провайдеров используют динамическое присваивание адресов, и в большинстве случаев правильным будет использование динамического IP-адреса.

Автоконфигурация имени хоста с этого IP-адреса

- Отметьте эту опцию, если вы хотите, чтобы программа &kppp; настроила домен и имя хоста для вашего компьютера после установления ppp- соединения.

  Автоконфигурация имени хоста происходит путем запроса сервера доменных имен об имени, присвоенном IP-адресу данного ppp-соединения.

  Эта опция необходима для одиночных компьютеров, которым необходимо использование таких протоколов, как talk, и для которых имя хоста должно совпадать с названием компьютера в Интернет. Эта опция изменяет значение опции Доменное имя в разделе DNS; установки принимают значения по умолчанию по прекращении ppp-соединения.

  Эта опция НЕ нужна, если вам необходимо просто подключиться к Интернету, получить почту, войти в чат или же просмотреть содержимое WWW-страниц. Побочным эффектом использования этой опции является невозможность подключения к Х-серверу, иными словами, вы не сможете запустить ни одно приложение с графическим интерфейсом.

  Отметьте в том случае, если это вам необходимо

## Вкладка Шлюз

Вкладка Шлюз в разделе Соединения Вкладка Шлюз в разделе Соединения

Вкладка Шлюз в разделе Соединения

Шлюз по умолчанию

- Отметьте для назначения демону ppp статуса шлюза по умолчанию. По умолчанию эта опция включена.

Статический шлюз

- Отметьте для назначения к использованию шлюза, отличного от заданного по умолчанию.

Назначить шлюз маршрутом по умолчанию

- В большинстве случаев оставьте без изменений (отмечено по умолчанию)

## Вкладка DNS

Вкладка DNS в разделе Соединения Вкладка DNS в разделе Соединения

Вкладка DNS в разделе Соединения

Доменное имя:

- Укажите доменное имя вашего компьютера. Также как и в случае серверов DNS, оно вернется к начальному значению, указанному в файле `/etc/resolv.conf`, после разъединения. Если это поле не будет заполнено, доменное имя будет взято из файла `/etc/resolv.conf`

Настройка:

- Выберите способ: Автоматически (Интернет-провайдер автоматически назначает адрес сервера DNS при соединении) и Вручную. Если вы выберете ручную настройку, становится доступным раздел IP-адрес сервера DNS.

IP-адрес сервера DNS

- Этот раздел доступен в том случае, если вы отметили опцию настройки Вручную. Добавьте сервера доменных имен, назначенные вашим Интернет-провайдером. Вам необходимо указать, как минимум, один сервер доменных имен, чтобы ваша ОС могла переводить в IP-адреса имена доменов, к примеру, `ftp.kde.org`. Адреса серверов DNS должны быть заданы в численном виде, например, `128.231.231.233`. Во время исполнения программы эти адреса будут добавлены в файл `/etc/resolv.conf`.

  Нажмите на кнопку Добавить для добавления адреса нового DNS-сервера к списку. Нажмите на кнопку Удалить для удаления из списка.

Игнорировать заданные сервера DNS во время соединения

- Если вы отметите эту опцию, то все сервера DNS, перечисленные в файле `/etc/resolv.conf` будут проигнорированы в течение данного сеанса связи.

## Вкладка Скрипт логина

Вкладка Скрипт логина в разделе Соединения Вкладка Скрипт логина в разделе Соединения

Вкладка Скрипт логина в разделе Соединения

Этот диалог предназначен для создания скрипта дозвона для соединения с вашим Интернет-провайдером. Вы можете использовать мини-терминал и сведения, предоставленные вашим Интернет-провайдером, для создания необходимого скрипта.

Выберите опцию из раскрывающегося списка слева, а затем укажите параметры для выбранного действия в окне редактирования справа. Используйте кнопку Добавить для добавления записи в конец скрипта, который отображается в нижней части диалога. Используйте кнопку Вставить для вставки записи в любое место скрипта, а также кнопку Удалить для удаления строки из скрипта.

Доступные опции:

Ожидать

- &kppp; будет ожидать получения заданной строки.

Отправить

- &kppp; отправит заданную строку.

Сканировать

- &kppp; будет сканировать входящий поток данных на предмет наличия заданной строки и сохранит все символы, начиная от конца строки и до начала новой, во внутреннем буфере. Символы пробелов как в начале строки, так и в конце будут игнорированы.

Сохранить

- Постоянно хранить заранее просканированную строку в заданном регистре. На данный момент единственным доступным является регистр `password`.

Приостановить

- Приостановить на заданное число секунд.

Повесить трубку

- &kppp; отдаст модему команду `повесить трубку`.

Ответ

- &kppp; установит модем в режим ответа.

Timeout

- Изменить таймаут по умолчанию на заданное число секунд при выполнении скрипта. При необходимости можно изменять таймаут в скрипте несколько раз.

Prompt

- Запросить у пользователя &kppp; ввод строки в ответ на заданную строку- подсказку. Набранные символы будут видны пользователю. Если в заданной строке содержится метка `##`, в таком случае она будет заменена на содержимое внутреннего буфера сканирования, то есть на значение, сохраненное командой scan.

PWPrompt

- Запросить у пользователя &kppp; ввод строки в ответ на заданную строку- подсказку. Каждый введенный пользователем символ будет отображен символом Звездочка.

Имя пользователя

- Если поле Имя пользователя на главном экране &kppp; заполнено, -- отправить имя пользователя. Если поле Имя пользователя не заполнено, -- запросить пользователя &kppp; ввести имя пользователя в ответ на заданную строку- подсказку. Набранные символы будут отображены. На следующем шаге, например, в цикле повторения или же при авторизации в режиме обратного звонка, запрос будет выводиться вне зависимости от заполнения поля Имя пользователя.

Пароль

- Если поле Пароль на главном экране &kppp; заполнено, -- отправить пароль. Если поле Пароль не заполнено, -- запросить пользователя &kppp; ввести пароль в ответ на заданную строку- подсказку. Каждый набранный символ будет отображён символом Звездочка. На следующем шаге, например, в цикле повторения или же при авторизации в режиме обратного звонка, запрос будет выводиться вне зависимости от заполнения поля Пароль.

Начало цикла

- &kppp; будет ожидать получения заданной строки и сохранит ее для использования переменной `Конец цикла`.

Конец цикла

- &kppp; будет ожидать получения заданной строки для выхода из цикла. Если сперва будет получена строка, заданная как `Начало цикла`, это вызовет переход к к строке после `Начала цикла` и повторение парного диалога имя_пользователя/пароль.

### Примеры скриптов

#### Пример простого скрипта логина

Ниже приведен пример простого скрипта, который можно использовать для подключения к Интернет-провайдеру

    Expect      ID:                        # ожидать имя пользователя:
     Send        myid                       # замените myid на ваше имя пользователя
     Expect      word:                      # ожидать пароль
     Send        4u3fjkl                    # отправить пароль '4u3fjkl'
     Expect      granted                    # Интернет-провайдер при успешном логине сообщает 'Permission granted'.
     Send        ppp                        # Эта команда запускает ppp-соединение
                                            # на удаленном компьютере Интернет- провайдера.

#### Скрипт логина, запрашивающий имя пользователя и пароль, а затем зацикливающийся.

Ниже приведен пример скрипта с запросом имени пользователя и пароля. Этот скрипт каждый раз запрашивает имя пользователя и пароль, вне зависимости от заполнения полей Имя пользователя и пароль на главном экране &kppp;.

Этот скрипт также поясняет применение структуры Начало цикла/Конец цикла. Если при процедуре логина происходит сбой, к примеру, при наборе пароля допущена ошибка, Интернет-провайдер выдаст сообщение об ошибке и повторно начнет цикл имя_пользователя/пароль, отправив строку `ID:`. Если строка `ID:` будет получена до обработки параметра Конец цикла, &kppp; начнет выполнение скрипта со строки с параметром Начало цикла.

    LoopStart   ID:                        # ожидать имя пользователя:
     Prompt      Enter ID:                  # запрос на ввод имени пользователя с последующей отправкой.
     Expect      word:                      # ожидать пароль
     PWPrompt    Enter Password:            # запрос на ввод пароля с последующей отправкой.
     LoopEnd     granted                    # Интернет-провайдер при успешном логине сообщает 'Permission granted'.
     Send        ppp                        # Запуск ppp-соединения на удаленном компьютере

#### Запрашивает сведения, не указанные в основном диалоге.

Я использую этот скрипт для подключения к своему Интернет-провайдеру. Скрипт запрашивает имя пользователя и пароль только в том случае, если я не заполнил соответствующие графы в главном диалоге &kppp;.

    LoopStart   ID:                        # ожидать имя пользователя:
     ID          Enter ID:                  # запрос на ввод имени пользователя с последующей отправкой.
     Expect      word:                      # ожидать пароль
     Password    Enter Password             # запрос на ввод пароля с последующей отправкой.
     LoopEnd     granted                    # Интернет-провайдер при успешном логине сообщает 'Permission granted'.
     Send        ppp                        # Эта команда запускает ppp-соединение на
                                            # удаленном компьютере Интернет- провайдера

#### Скрипт для соединения с Интернет-провайдером, использующим авторизацию с ответами на запросы.

Вот скрипт, который я использую для подключения к Интернет-провайдеру, который требует авторизации с ответами на запросы. Обычно у вас есть устройство типа смарт-карты с дисплеем и калькулятором, предоставленное вам вашим провайдером. Чтобы использовать его, вам необходимо знать пароль. Дозвонившись до провайдера, вы увидите запрос, который нужно будет ввести в устройство и получить динамический пароль на вход. Его вам и надо будет ввести.

    LoopStart   ID:                        # ожидать имя пользователя:
     ID          Enter ID:                  # запрос на ввод имени пользователя с последующей отправкой.
     Scan        Challenge:                 # сканировать поток до значения 'Challenge' и сохранить все последующие данные до начала новой строки.
     Expect      Password:                  # ожидать пароль
     Prompt      Your token is ## - Enter Password  # запрос на ввод пароля с последующей отправкой.
     LoopEnd     granted                    # Интернет-провайдер при успешном логине сообщает 'Permission granted'.
     Send        ppp                        # Эта команда запускает ppp-соединение на
                                            # удаленном компьютере Интернет- провайдера

#### Использование опций сканирования и сохранения в скриптах

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

    University of Lummerland

     Login:mylogin
     Password:
     The password for your next session is: YLeLfkZb
     Please record and enter it for verification.
     Verification:YLeLfkZb

     1 = telnet
     2 = SLIP
     3 = PPP

     Your choice:

&kppp; выполнит всю эту работу вместо вас, при этом устранит риск потери клочка бумаги, на котором записан ваш пароль. Ключевым моментом следующего скрипта является использование комбинации опций Сканировать/Сохранить (Scan/Save).

    7 Expect      Login:                     # ожидать запрос на логин
     ID                                     # отправить имя пользователя
     Expect      Password:                  # ожидать запрос на пароль
     Password                               # отправить пароль
     Scan        is:                        # ожидать значения '... next session is:' and
                                            # сканировать значение пароля
     Save        password                   # сохранить новый пароль для следующего логина
     Expect      Verification:              # ожидать значения 'Verification:'
     Password                               # отправить новый пароль
     Expect      choice:                    # ожидать запрос на выбор типа
                                            # соединения (telnet, SLIP, PPP)
     Send        3                          # выбрать опцию 3, т. е. PPP

## Вкладка Выполнить

Вкладка Выполнить в разделе Соединения Вкладка Выполнить в разделе Соединения

Вкладка Выполнить в разделе Соединения

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

Убедитесь в правильности задания полного пути к программе, иначе &kppp; не сможет ее найти.

Вы можете добавить команды, которые могут быть выполнены в четыре заданных момента времени в процессе соединения:

Перед установлением соединения

- Выполнить эту команду перед дозвоном; к моменту соединения с вашим Интернет-провайдером команда уже будет выполняться.

При установлении соединения

- Выполнить команду только при установлении соединения.

Перед разъединением

- Выполнить команду перед разъединением.

После разъединения

- Выполнить команду после разъединения.

К примеру, вам может понадобиться выполнить программу leafnode как только соединение будет установлено, или же вам необходимо проверить почту. Вы можете проверить, вся ли почта из очереди была отправлена перед разъединением. Вам может понадобиться скрипт очистки логов и кэша после разъединения.

## Вкладка Учет

Вкладка Учёт в разделе Соединения Вкладка Учёт в разделе Соединения

Вкладка Учёт в разделе Соединения

Отметьте опцию Включить учет для включения или же отключения возможности учета стоимости телефонных звонков для этого соединения.

Выберите из списка правило, соответствующее вашему провайдеру телекоммуникационных услуг.

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

Последней опцией в этом разделе является Учет трафика, описанный ниже.

### Учет трафика

#### Что такое учет трафика?

Учет трафика состоит в подсчете количества переданных и полученных байт. &kppp; может вести учет как переданных, так и полученных байт, или же обоих вместе. Выбор учета зависит от вас.

#### Для чего я должен использовать учет трафика?

Многие Интернет-провайдеры выставляют счет за свои услуги на основе количества использованного трафика. Причем, чаще всего, Интернет-провайдеры предлагают фиксированную оплату до определённого значения трафика, каждый же последующий мегабайт должен быть оплачен. &kppp; отображает текущее состояние трафика и поможет вам минимизировать счета за услуги. И, конечно же, если счет за услуги не зависит от трафика, вы можете использовать его для удовлетворения собственного любопытства.

#### Какой тип учета трафика я должен выбрать?

Это зависит от вашего провайдера. Большинство провайдеров ведут учет полученных из Интернета данных и игнорируют исходящий трафик. В таком случае вы должны использовать Входящий трафик. Если вы оплачиваете весь трафик, выберите Входящий и исходящий трафик. Исходящий трафик приведен в программе для полноты, так как провайдер с таким типом учета пока не известен. Эта опция может оказаться полезной, если вы используете WWW- или &FTP;-сервер дома.

#### Недостатки

К сожалению, учет трафика имеет и свои недостатки. &kppp; считает только количество трафика, вне зависимости от его происхождения. Многие провайдеры устанавливают ограничения только на доступ в Интернет, а не для трафика в их собственной сети. У некоторых провайдеров существуют различные ограничения на трафик в собственной сети, трафик по стране и весь остальной трафик. Если вы мало путешествуете по сети, по большей части используя страницы из кэша прокси-сервера вашего Интернет-провайдера, в таком случае, скорее всего ваш провайдер не выставляет счет за это. &kppp; не определяет принадлежность IP-пакетов к прокси-серверу, поэтому они будут учтены. Если эта ситуация похожа на вашу или, другой пример, если ваш провайдер использует кэширование сервера новостей nntpcached, -- в таком случае, учтенный в &kppp; трафик может оказаться больше реального объема, подлежащего оплате. С другой стороны, &kppp; никогда не преуменьшит ваши счета.