Полная версия этой страницы: pppoe на ubuntu
Demit
Доброго времени суток!
У всех подключение по pppoe регистрируется без MAC адреса в биллинге? У клиента в свойствах тоже мак(физического) адреса нет?
Sly
При соединении по PPPOE MAC адрес не использутся, так как PPPOE работает поверх ethernet протокола, то есть он не нужен, ставьте 00:00:00:00:00:00
Demit
Настройка PPPoE-сервера в режиме ядра Debian, Ubuntu

Устанавливаем зависимости для построения pppoe:

# apt-get build-dep pppoe

Скачиваем и распаковываем в текущий каталог исходники:

# apt-get source pppoe

Переходим в каталог rp-pppoe-3.8/src и выполняем конфигурирование:

# cd rp-pppoe-3.8/src
# ./configure

Теперь в только что созданном файле config.h нужно заменить строчку

/* #undef HAVE_LINUX_KERNEL_PPPOE */

на строчку

#define HAVE_LINUX_KERNEL_PPPOE 1

Теперь выходим из каталога src и выполняем сборку, указав путь к плагину rp-pppoe.so, который как раз и реализует поддержку PPPoE-сеансов на уровне ядра:

# cd ..
# ./debian/rules PLUGIN_PATH=/usr/lib/pppd/2.4.4/rp-pppoe.so

Собираем пакет и устанавливаем его:

# ./debian/rules binary
# cd ..
# dpkg -i pppoe_3.8-3_i386.deb

Заморозим пакет в системе, чтобы предотвратить его автоматическое обновление:

# echo pppoe hold | dpkg --set-selections

С этого момента нужно как минимум при каждом обновлении системы просматривать список обновлений. Если для pppoe будет выпущено обновление, закрывающее уязвимость, необходимо будет собрать пакет из свежих исходников заново, снять фиксацию пакета в системе с помощью команды:

# echo pppoe install | dpkg --set-selections

Затем заменить пакет новым и заново зафиксировать. Всё это - неизбежная плата за использование самосборного пакета. Конечно можно автоматизировать пересборку пакета, написав shell-скрипт, запускающий в нужной последовательности все указанные команды и заменяющий нужную строчку с помощью sed.

Так или иначе, теперь в системе установлен пакет с PPPoE-сервером, позволяющим поддерживать PPPoE-соединения на уровне ядра. Для запуска сервера в этом режиме, к команде описанной в предыдущем разделе нужно добавить опцию -k:

# pppoe-server -I eth1 -L 192.168.0.1 -k
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.