[SOLVED] Сортировка ppp интерфейсов: возможно?

Здравствуйте!

У меня есть комп на котором работают одновременно PPPoE (rp-pppoe) и PPtP (accel-pptp) сервера, при подключении они поднимают ppp туннели, которые поднимаются совершенно идентично (демоном pppd), за исключением сервера их поднимающего. Потому задался вопросом: можно ли как то сортировать соединения и составить 2 списка - в одном соединения поднятые PPtP сервером, - в другом поднятые PPPoE сервером? Подскажите кто сталкивался, может скрипт какой у кого есть, или утилита существует, еще какой-нибудь способ...

У pppd есть опция unit.

У pppd есть опция unit. Определите её для PPPoE-соединения в файле конфигурации, допустим, так:

unit 1

и для этого соединения всегда будет создаваться интерфейс ppp1, независимо от порядка запуска.

Я Gentoo & Funtoo

Сори, я немного скупо описал

Сори, я немного скупо описал конструкцию :) Речь идет об интерфейсах, которые поднимаются при подключении пользователей к PPPoE и PPtP серверам. Но вы натолкнули меня на мысль: есть ли возможность, скажем, если пользователи подключаются к PPtP серверу то при поднятии давать интерфейсам номера из определённого диапазона (например от ppp0 до ppp500), а при соединении через PPPoE сервер давать номера из другого диапазона (например от ppp501 до ppp1000) ? Если такой вариант возможен то он бы тоже был вполне приемлем, для получения списков было бы достаточно просто похимичить с grep :)
А в ином случае я естественно не могу указать, чтобы пользователям, подключающимся к PPPoE серверу всегда создавался интерфейс с одним и тем же именем т.к. пользователей много.

Тема поднималась

Тема поднималась неоднократно.
Создавайте ваши PPPoE соединения с нумерацией отличной от нуля (например начиная с /etc/init.d/net.ppp100). Тогда ваши PPtP соединения будут создаваться по порядку, начиная с ppp0.

Так же можно переименовывать PPtP интерфейсы в /etc/ppp/ip-up.d примерно так:

admin@mail /etc/ppp/ip-up.d $ cat 90-rename_int.sh 
#!/bin/sh

# Путь к используемым программам
IP=/sbin/ip

# Переименование интерфейса из ppp+ в vpn_ppp+ для vpn сервера

if [ $4 = "192.168.0.1" ]; then
    $IP link set dev $1 down
    $IP link set dev $1 name vpn_$1
    $IP link set dev vpn_$1 up
fi

admin@mail /etc/ppp/ip-up.d $

В том то и вопрос: как

В том то и вопрос: как добиться того, чтобы при поднятии интерфейса отсчет его номера начинался не с 0? Это при том условии, что интерфейс я поднимаю не сам, он поднимается автоматически, когда пользователь подключается к серверу (в данном случае в /etc/init.d/ естественно ничего нет и не нужно). Вариант с переименованием интересный, но опять же, как узнать, какой из серверов(демонов) поднял интерфейс и исходя из этого принять решение, нужно ли переименовывать или нет? Ip адрес в качестве критерия совершенно не годится, т.к. пользователей очень много, их состав и количество постоянно меняется и каждый пользователь в праве сам выбирать, каким способом он будет подключаться к серверу (PPPoE или PPtP)

Я понял, вы запускаете не

Я понял, вы запускаете не клиентскую, а серверную часть PPPoE.
Могу предложить назначить два ip адреса на ваш внутренний интерфейс и в настройках каждой службы указывать разные ip. После этого можно переименовывать ppp интерфейсы основываясь на ip сервера как в примере.

А вот это реально мысль,

А вот это реально мысль, спасибо :) Конечно сменить адрес физического интерфейса очень проблематично - для pptp - клиентов много и менять у них у всех в настройках ip сервера для подключения просто нереально сложная задача; а с pppoe такое вообще не возможно т.к. он не использует ip протокол вообще. Но зато можно задать разные настройки в конфигах pppoe и pptp, чтобы адреса пира(сервера) с нашей стороны были разные. А дальше немного химии с grep'ом и простенький скрипт для получения списков готов :)

В целом решение найдено,

В целом решение найдено, спасибо MVG, тему можно закрыть. Но я подожду еще немного - если кто предложит решение, в котором не надо ничего перенастраивать буду благодарен.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".