Несколько NAS серверов и статический IP
Несколько NAS серверов и статический IP
Подскажите, как пользователям выдать статические ip адреса при следующей схеме авторизации.
Имеется несколько NAS серверов на базе FreeBSD+mpd5(PPPoE), на каждом из них подняты одинаковые интерфейсы с пользовательскими vlan'ами. При этом за каждым сервером прикреплен свой пул ip адресов. Выдача ip происходит не биллингом а самими серверами, в биллинг только поступает информация о присвоенному пользователю ip.
Имеется несколько NAS серверов на базе FreeBSD+mpd5(PPPoE), на каждом из них подняты одинаковые интерфейсы с пользовательскими vlan'ами. При этом за каждым сервером прикреплен свой пул ip адресов. Выдача ip происходит не биллингом а самими серверами, в биллинг только поступает информация о присвоенному пользователю ip.
-
- Сообщения: 57
- Зарегистрирован: Чт авг 03, 2006 09:36
Да вырезайте, кто же вам не дает. Только потом не жалуйтесь 
Автор ничего не написал про вышестоящий роутер, который собирает трафик с NASов. Использование любого протокола динамической маршрутизации потребует его поддержки на этом самом роутере. А вдруг там утюг?
В общем, в данном случае, я бы тоже сделал на OSPF или BGP, но вариант разруливания на L2 имеет право на существование
Мне приxодилось сталкиваться с ситуациями, когда так было предпочтительнее.
ARP alias придумали не волки и не только для "секьюрити".
Cisco по-дефолту кстати это очень активно использует.
Проблему привязки IP к логинам не рассматриваю, это все описано в докаx на биллинг.
Собственно как это может быть реализовано без динамики:

Клиентский диапазон к примеру: 10.10.0.0/16
На NAS-аx делаем if-up и if-down скрипты, запускаемые при поднятии и закрытии PPPoE соединения клиента.
В if-up пишем что-то вроде
В if-down:
где REMOTE_ADDRESS - PPP IP клиента
NAS_eth0_MAC - собственно MAC-адрес соответствующего NAS'a
Т.к. IP адреса клиентов лежат в подсети на интерфейсе коре-роутера, он спросит по ARP к примеру: Who has 10.10.3.1? tell 10.0.0.1
если клиент 10.10.3.1 подключился к любому из NAS-ов то коре-роутер получит ответ от того NAS-a, что клиент висит на его MAC-е и пакеты полетят на этот NAS. Между NAS-ами интерконнект будет работать по этому же принципу. Главное чтобы один логин одновременно на все NAS-ы не полез, а то будет бесплатная балансировка трафика
Настроек минимум, а главное что работать будет.

Автор ничего не написал про вышестоящий роутер, который собирает трафик с NASов. Использование любого протокола динамической маршрутизации потребует его поддержки на этом самом роутере. А вдруг там утюг?

В общем, в данном случае, я бы тоже сделал на OSPF или BGP, но вариант разруливания на L2 имеет право на существование

ARP alias придумали не волки и не только для "секьюрити".
Cisco по-дефолту кстати это очень активно использует.
Проблему привязки IP к логинам не рассматриваю, это все описано в докаx на биллинг.
Собственно как это может быть реализовано без динамики:

Клиентский диапазон к примеру: 10.10.0.0/16
На NAS-аx делаем if-up и if-down скрипты, запускаемые при поднятии и закрытии PPPoE соединения клиента.
В if-up пишем что-то вроде
Код: Выделить всё
arp -S $REMOTE_ADDRESS $NAS_eth0_MAC pub
Код: Выделить всё
arp -d $REMOTE_ADDRESS
NAS_eth0_MAC - собственно MAC-адрес соответствующего NAS'a
Т.к. IP адреса клиентов лежат в подсети на интерфейсе коре-роутера, он спросит по ARP к примеру: Who has 10.10.3.1? tell 10.0.0.1
если клиент 10.10.3.1 подключился к любому из NAS-ов то коре-роутер получит ответ от того NAS-a, что клиент висит на его MAC-е и пакеты полетят на этот NAS. Между NAS-ами интерконнект будет работать по этому же принципу. Главное чтобы один логин одновременно на все NAS-ы не полез, а то будет бесплатная балансировка трафика
