вторник, 15 июня 2010 г.

Настраиваем несколько pppoE подключений

Ну вот, вроде бы как дистрибутив установлен, пришло время настройки интернета, но иногда возникает необходимость создать несколько pppoE подключений. Причиной этому могут быть особенности организации доступа к ресурсам сети, например жёсткое разделение доступа к локальным и внешним IP адресам в целях безопасности, увеличения производительности или для решения иных задач. Какой бы сложной ни была конфигурация сети, на какие бы "ужимки" в благородном порыве ублажить абонента ни шёл провайдер, мы, имея минимум необходимого оборудования, запросто можем адаптировать любую unix операционную систему (в частности Linux) к любой магистрали. Иначе она не носила бы гордого звания net-ориентированной системы.

Итак, приступим к настройке нескольких pppoE интерфейсов на моём конкретном примере.

Существует конечно не один способ настройки pppoE, но я остановлюсь именно на этом так как он не самый лёгкий ;)

Теоретический минимум:

/etc/network/intefaces - конфиг с сетевыми интерфейсами.

/etc/resolv.conf - конфигурационный файл, где указаны адреса DNS-серверов.
/etc/ppp - директория с настройками ppp-интерфейсов.
/etc/ppp/chap-secrets''- файлы с логинами паролями для доступа в сеть.
/etc/ppp/peers - директория с конфигурационными файлами.

ppp-интерфейсами управляет pppd-демон. Все характеристики каждого из ppp-интерфейсов передаются из выше указанных конфигурационных файлов pppd-демону в виде значений переменных.

Необходимые консольные команды:
cat /etc/network/interfaces  - просмотреть содержимое файла "interfaces".

ifconfig - вывод информации об активных интерфейсах.
route -n - вывод информарции об активных маршрутах.

Но не забывайте, все описанные действия выполняем с правами супер пользователя
(от root
или через sudo).


Приступим к практике:
Создаём /etc/ppp/peers/d-net - конфиг для внешней сети:

noipdefault
defaultroute
replacedefaultroute
hide-password
noauth
persist
plugin rp-pppoe.so eth0
user "MyUserName@хххх"

Создаём /etc/ppp/peers/d-local - конфиг для локальной сети или же то, что нужно Вам:

noipdefault
hide-password
noauth
persist
plugin rp-pppoe.so eth0
user "MyUserName@ххххх_хххххх" - (здесь как Вы понимаете пишите совой логин и пароль)

Редактируем /etc/ppp/chap-secrets и /etc/ppp/pap-secrets.
Добавляем имя пользователя и пароль для каждого подключения.

"MyUserName@ххххх_хххх" * "MyPassword"

"MyUserName@хххххх" * "MyPassword"

Добавляем в /etc/network/interfaces информацию о наших подключениях.
Теперь при старте системы будут последовательно созданы два интерфейса ppp0 и ppp1.

auto d-net
iface d-net inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider d-net

auto d-local
iface d-local inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider d-local

Итак, теперь мы имеем два pppoE интерфейса, ppp0 - для интернета и
ppp1 - для локалки, соответсвующие подключениям d-net и d-local,
контролируются и управляются они демоном pppd. Теперь осталось
обеспечить доступ к любому IP локальной сети через интерфейс ppp1, для
этого необходимо добавить маршрут в таблицу маршрутизации:

route add -net 10.0.0.0 netmask 255.0.0.0 dev ppp1

Убедитесь, что в /etc/resolv.conf указан адрес DNS-сервера.
(Спросите об DNS адресах своего провайдера)
Вот и всё!

Команды управления соединениями:

poff d-net - отключить соединение "d-net"
pon d-net - подключить соединение "d-net"
plog - статус подключения
killall pppd - жестоко убить все подключения :)

Этот способ заморочен и не всем может пригодиться.
В следующей статье я расскажу Вам как я настраивал pppoe соединение при помощи утилиты pppoeconf.





Комментариев нет:

Отправить комментарий