PPPoE в Arch Linux
Наше дело: джек обжать, кабель сунуть и бежать)
http://bash.org.ru/quote/398883
Собственно, так, как описано в эпиграфе, монтажники, которые сегодня мне проводили Интернет, и поступили. Потому что я никому не уступлю право покопаться пару часов в моём Арчике
Старый провайдер пускал меня в сеть по ADSL, так что танцы с бубном ограничивались только настройкой «модема».
Новый провайдер любит линуксоидов и, желая подарить им ещё много времени для красноглазия, подключение сделал через PPPoE. Ничего, сейчас и его настроим. Делов-то... Едой запаслись, надеюсь?
Приступим. Провайдер у меня современный, так что всё у него в сети определяется по DHCP.
Лезем в репозиторий и выуживаем оттуда пакеты dhcpcd и ppp (с зависимостями, разумеется). Кто не знает, репозиторий тут: http://mirror.yandex.ru/archlinux/ (на уровень выше не поднимайтесь, там разные богомерзкие программы лежат). Локальные пакеты ставятся не через -S, а через -U полное_имя_файла.
Приводим сетевой блок настроек в /etc/rc.conf к следующему виду:interface=eth0
address=
netmask=
gateway=
Дальнейшая настройка производится в ручном режиме, без использования пакета rp-pppoe (аналогичного pppoeconf в Ubuntu), в который входят скрипты для настройки и запуска/остановки соединения. Не путайте плагин (модуль ядра) rp-pppoe.so, который содержится в пакете ppp и пакет rp-pppoe.
Созадём файл /etc/ppp/peers/provider и пишем в него буквально следующее:plugin rp-pppoe.so
# rp_pppoe_ac 'your ac name'
# rp_pppoe_service 'your service name'
# network interface
eth0
# login name
name "логин"
usepeerdns
persist
# Uncomment this if you want to enable dial on demand
#demand
#idle 180
defaultroute
hide-password
noauth
Дальше редактируем /etc/ppp/chap-secrets. Формат, в котором там всё должно быть, задан в комментариях, но нам закон не писан, поэтому просто забиваем такую строку: логин * пароль. На /etc/ppp/pap-secrets не глядите даже, он, зараза, секреты хранить не умеет.
Почти всё, Интернет теперь включается и выключается проще, чем Винда дохнет от вирусов: pon и poff от рута вам помогут.
Если Интернет подключается, но работать не хочет, можно его расшевелить. Для этого всё в той же многострадальной папке /etc/ppp создаём файл ip-pre-up с правами на запуск и пишем в него:#!/bin/sh
/sbin/route del default
После такого расшевеливания демон ppp надо перезапустить (только после настройки, постоянно этого делать не надо).
Теперь осталось только добавить ppp в автозапуск и дело в шляпе. Список демонов у меня, например, такой: DAEMONS=(syslog-ng dbus network @ppp @crond @sensors). Важно, чтобы network запускался раньше ppp, и не в фоне, а обычным порядком, иначе могут быть проблемы.
Ну вот и всё. Можно было, правда, за пару минут через network-manager подключиться, но ведь это не наш способ, верно?
Кроме нетворк менеджера еще есть консольный скрипт adsl-setup, который ставится насколько помню вместе с rp-pppoe. Оно само спросит у тебя все необходимые явки и пароли и добавит необходимую инфу в конфиги pppd. Поднимать соединение потом надо будет через команду adsl-start.
Кстати нетворк менеджер не умеет реконектиться. Что очень печально. Поэтому всякие впн лучше поднимать с командной строки.