Предположим у нас есть dsl-modem и сервер {на linux gentoo}, нуждающийся в резервном выходе в интернет, или любая схожая ситуация, где необходимо подключить интернет подобным способом.
Содержание
1 Выбор компонентов при компиляции
2 Установка клиента
3 Настройка клиента
4 Подготовка сетевых интерфейсов
5 Документальная часть
1 Необходимо помнить что для работы того или иного функционала необходимо заблаговременно включить его в компоненты системы . Или же заняться пересборкой ядра! (Описания функций в конце статьи). И так , добавляем нужные функции в ядро:
# cd /usr/src/linux/ |
# make menuconfig |
Переходим в раздел Device Drivers —> Network device support —>
Отмечаем, выходим и компилируем ядро , (или перекомпилируем )
Процесс компиляции и дальнейшие действия в этой статье описываться не будут, но уверяю процедура не сложная. Подробнее здесь (Пункт Настройка ядра)
2 Перед установкой клиента необходимо убедиться в том, что у пакета нет зависимостей а также посмотреть требуемые USE-флаги для конкретного пакета.
Проверка зависимостей:
emerge –pretend net-dialup/ppp |
В случае отрицательного ответа системы стоит более подробно изучить процедуру удаления зависимостей.
Ваш покорный десятки раз проделывал процедуру установки ppp и ни разу проблем с зависимостями не было, но ссылка для ознакомления не помешает. )
Далее смотрим набор предлагаемых флагов для конкретного пакета и исходя из потребностей добавляем необходимые, естественно перед установкой! Под флагами подразумевается набор функционала, используемого в дальнейшем!
#emerge -vp net-dialup/ppp |
При необходимости использования флагов – отредактировать файл , содержащий эти настройки!
#nano /etc/portage/make.conf - Правка глобальных флагов |
Но лучше всего это делать здесь :
# nano /etc/portage/package.use |
В файле package.use указываются отдельные флаги для отдельных пакетов и только в случае совпадения флагов я бы их переносил в make.conf , но это как правило хорошего тона!
Для текущей конфигурации я не выбираю флагов, но возможно вам понадобится описание возможностей для ваших целей, которые находятся в конце статьи вместе с маркировкой цветовой схемы флагов.
После проверок (Установка с просмотром устанавливаемых флагов) :
#emerge -av net-dialup/ppp |
3 Настройка клиента производится в файле конфигурации сетевых интерфейсов , и выглядит следующим образом :
# nano /etc/conf.d/net |
config_eth2=( “null” ) # Очистка настроек интерфейса
config_ppp0=( “ppp” ) # Объявление нового интерфейся
link_ppp0=”eth2″ # Указываем физический интерфейс
plugins_ppp0=( “pppoe” ) # Подгружать плагин из ядра системы (*)
username_ppp0=’ логин ppp’
password_ppp0=’пароль’
pppd_ppp0=(
“noauth” # Не требовать удаленную сторону авторизоваться для передачи данных
“defaultroute” # Добавить маршрут оп умолчанию в таблицу маршрутизации
“usepeerdns” # Использовать DNS провайдера
“default-asyncmap” # избежать всех управляющих символов
“ipcp-accept-remote” # Принимать любого провайдера, говорящего свой ip-address
“ipcp-accept-local” # Принимать любого провайдера, знающего ваш ip-address
“lcp-echo-interval 15” # Запрашивать у провайдера отправку lcp-echo каждые 15 сек.
“lcp-echo-failure 3” # Считать соединение разорванным , если 3 последних пакета не получили ответ
“mru 1492” # максимальный размер данных, передаваемых в пакете протокола PPP , не включая заголовок пакета.
“mtu 1492” # максимальный размер полезного блока данных одного пакета (RFC 1042)
“debug” # Записывать информацию о подключении в системные логи
)
4 Мы частично подготовили сетевые интерфейсы к использованию, отредактировав /etc/conf.d/net. Далее стоит убедиться что физический интерфейс сконфигурирован правильно и именно он выступает в роли инициализатора подключения.
При установке новой сетевой карты в компьютер стоит добавить интерфейс в систему:
ln -s /etc/init.d/net.lo /etc/init.d/net.eth2 |
Запускаем :
/etc/init.d/net.eth2 start |
И
добавляем
в
автозагрузку
:
rc-update add /etc/init.d/net.eth2 default |
Далее проверим действительно ли эта сетевая карта подключена к модему :
pppoe-discovery -I eth2 |
Вывод говорит о правильности подключения и готовности модема.
Создаем новый интерфейс :
ln -s /etc/init.d/net.lo /etc/init.d/net.ppp0 |
И добавляем в автозагрузку :
rc-update add /etc/init.d/net.ppp0 default |
Долгожданный запуск:
/etc/init.d/net.ppp0 start |
Смотрим таблицу маршрутов:
Route |
Или же просто смотрим наличие итнерфейса :
ifconfig |
И скорее всего наблюдаем резервное подключение к интернету )!
5 Описания опций , функций и флагов , используемых в текущей конфигурации
Компоненты ядра :
PPP (point-to-point protocol) support
Поддержка соединения PPP (по протоколу точка-точка), необходимо при модемном подключении.
PPP BSD-Compress compression и PPP Deflate compression
Поддержка различных алгоритмов компрессии данных при модемном подключении, зависит от провайдера, обычно включаются оба.
PPP filtering
Поддержка фильтрации пакетов.
PPP MPPE compression (encryption)
Драйвер для
Microsoft Point-to-Point Encryption Microsoft_Point-to-Point_Encryption
PPP multilink support
Включение поддержки одновременной работы с несколькими модемами на одной линии.
PPP over Ethernet
Поддержка драйвера pppoe
PPP support for async serial ports
Поддержка PPP-соединения по обычному асинхронному последовательному порту (то есть необходимо при модемном подключении).
PPP support for sync tty ports
Поддержка синхронных устройств!
USE-Флаги
activefilter – включает активную поддержку фильтра
Atm – Включение ATM (Поддержка режима асинхронной передачи)
dhcp – Устанавливает плагин клиента PPP DHCP
eap-tls – Включает поддержку протокола Extensible
Authentication и Transport Level Security
gtk – Установка GTK+ для поддержки парольной
защиты , используемой модулем passprompt.so
ipv6 – Поддержка протокола ipv6
pam – Поддержка PAM (Pluggable Authentication Modules)
набор библиотек для интеграции низкоуровневой утентификации
radius – Включение протокола для реализации аутентификации https://ru.wikipedia.org/wiki/RADIUS
Описание маркировки флагов
Жёлтым% выделены изменения в
наборе флагов пакета. Флаги, больше недействительные (удалённые) для
новой версии пакета будут взяты в скобки, новые (добавленные) флаги,
появившиеся для новой версии, будут без скобок.
Красные – включенные флаги.
Синие – соответственно не включенные
(идут по минусу).
Зелёные* – флаг был включен в системе
после сборки пакета, пакет был собран без этого флага, готов к пересборке с ним.
Дополнительные параметры pppoe-клиента ( Невошедшие
в конфигурацию)
#Опция noipdefault необходима для динамического назначения IP адреса.
noipdefault
#Опция replacedefaultroute корректно удаляет предыдущий маршрута по умолчанию.
replacedefaultroute
#Опция hide-password запрещает показ паролей в отладочных сообщениях.
hide-password
#Опция maxfail задает количество неудачных попыток N после после которых
попытки автосоединения будут прекращены.
maxfail
#Опция holdoff определяет время в секундах N, после разрыва соединения перед
повторным
holdoff
Надеюсь описание приемлемо для чтения и практического применения !