# pppd (Русский)

Здесь мы объясним, как настроить PPPoE соединение используя пакет pppd и входящий в него модуль ядра rp-pppoe.so. Заметьте, нам не понадобится пакет rp-pppoe. Также, предлагаемый способ обеспечивает большую гибкость, настройки, по сравнению с rp-pppoe, давая возможность использовать несколько соединений одновременно.

## Конфигурирование

- Проверяем, установлен ли пакет ppp, и скомпилировано ли ядро с поддержкой PPPoE

    $ pacman -Q ppp
    ppp 2.4.4-6

    $ zgrep CONFIG_PPPOE /proc/config.gz
    CONFIG_PPPOE=m

- Создаём конфигурационный файл соединения `/etc/ppp/peers/pppoe`:

    # /etc/ppp/peers/pppoe

    plugin rp-pppoe.so
    # rp_pppoe_ac 'your ac name'
    # rp_pppoe_service 'your service name'

    # network interface
    eth0
    # login name
    name "someloginname"
    usepeerdns
    persist
    # Uncomment this if you want to enable dial on demand
    #demand
    #idle 180
    defaultroute
    hide-password
    noauth

Для получения значений параметров rp_pppoe_ac и rp_pppoe_service можно воспользоваться командой pppoe-discovery. Информацию о необходимости указания этих параметров можно получить у вашего провайдера.

Если Вы хотите чтоб usepeerdns работал, Вам следует изменить Ваш `/etc/ppp/ip-up` и скопировать `/etc/ppp/resolv.conf` в `etc/resolv.conf`.

- В зависимости от типа используемой аутентификации (PAP/CHAP) редактируем `/etc/ppp/pap-secrets` или `/etc/ppp/chap-secrets`. Эти файлы содержат логины и пароли, используемые при соединении:

1. "ваш_логин" "имя_сервера" "ваш_пароль" "если dhcp ставим *"

Предпочтительно также отредактировать файл `/etc/ppp/options`, указав используемые и неиспользуемые типы аутентификации. Например:

    # Don't agree to authenticate using PAP.
    -pap

    # Require the peer to authenticate itself using CHAP [Cryptographic
    # Handshake Authentication Protocol] authentication.
    +chap

Теперь можно установить соединение, используя команду

    pppd call pppoe

Так же можно использовать

    pon pppoe

Для создания соединения используемого по умолчанию, просто создайте ссылку с именем `provider`. Например

    ln -s pppoe /etc/ppp/peers/provider

Теперь установить соединение можно командой

    pon

Для завершения соединения используйте команду

    poff pppoe

или, если есть ссылка `provider`

    poff

## Установка соединения при запуске системы

- Если не создали ранее, то создайте ссылку `/etc/ppp/peers/provider`

    ln -s pppoe /etc/ppp/peers/provider

- Если поддержка ppp сокмпилирована в виде модуля ядра, отредактируйте `/etc/rc.conf`, указав загружать модуль `ppp_generic` при старте:

    MODULES=(... ppp-generic ...)

- Редактируем `/etc/rc.conf`, добавляя ppp к используемым демонам:

    DAEMONS=(... ppp ...)

## Неполадки

Если у Вас есть стандартные подготовленные маршруты(routes) то, перед стартом pppd сохраните их.Заодно загляните в /var/log/errors.log и если у Вас что-то наподобие:

    pppd[nnnn]: not replacing existing default route via xx.xx.xx.xx

и xx.xx.xx.xx неверный маршрут, то

- создайте новый скрипт `/etc/ppp/ip-pre-up`

    $ chmod +x /etc/ppp/ip-pre-up

Наполненный к примеру так:

    #!/bin/sh
    ip route del default

- Перезапустите pppd:

    $ /etc/rc.d/ppp restart

Categories:

- Русский
- Networking (Русский)