AlKov Posted March 25, 2010 Posted March 25, 2010 (edited) Имеем такую схему (упрощенно): Интернет | NAS-----Router | юзер NAS - mpd+radius (FreeBSD), Router - Linux (там же NAT). "юзер" после авторизации получает статический "туннельный" IP, например, 172.17.20.21. 172-я подсеть поделена на 4 (172.16.0.0/16, 172.17.0.0/16, 172.18.0.0/16, 172.19.0.0/16), IP назначается согласно тарифного плана, т.е. при смене тарифа, он может быть 172.16.20.21, 172.17.20.21, 172.18.20.21, или 172.19.20.21 На роутере настроена статическая маршрутизация: 172.18.0.0 XXX.XXX.XXX.XXX 255.255.0.0 UG 0 0 0 vlan10 172.19.0.0 XXX.XXX.XXX.XXX 255.255.0.0 UG 0 0 0 vlan10 172.16.0.0 XXX.XXX.XXX.XXX 255.255.0.0 UG 0 0 0 vlan10 172.17.0.0 XXX.XXX.XXX.XXX 255.255.0.0 UG 0 0 0 vlan10 где XXX.XXX.XXX.XXX - это IP NAS. Возникла необходимость в установке второго NAS (один уже не справляется). Соотв. схема сети изменяется до такого вида: Интернет | NAS1-----Router-----NAS2 | юзер Оба NAS находятся в одной подсети /29 Юзеров по NAS-ам предполагается "распределять" рандомно с помощью простой конструкции в DNS rrset-order { class IN type A name "vpn.mydomain.ru" order random; order cyclic; }; где соотв. vpn.mydomain.ru имеет две записи с различными IP в "IN A". Вопрос - как в этом случае настроить маршрутизацию ? Edited March 25, 2010 by AlKov Вставить ник Quote
martin74 Posted March 25, 2010 Posted March 25, 2010 включить динамическую маршрутизацию на роутере и насах. Вставить ник Quote
AlKov Posted March 25, 2010 Author Posted March 25, 2010 включить динамическую маршрутизацию на роутере и насах.Гм.. Слишком кратко, суть понятна, а вот способы реализации - увы... :( Предположительно мне нужен RIP (или OSPF ???) с реализацией на quagga. Если не ошибаюсь (особенно насчет OSPF - вроде как "из пушки по воробъям" получается), то где-бы полицезреть рабочий пример реализации? P.S. С динамической маршрутизацией сталкиваюсь в первый раз, отсюда собственно и вопрос. Впервой оно все тяжеловато. :) Вставить ник Quote
martin74 Posted March 25, 2010 Posted March 25, 2010 [root@vpn1 ~]# cat /etc/quagga/ripd.conf ! ! Zebra configuration saved from vty ! 2008/11/17 19:28:01 ! hostname vpn1.lds.local password ************ enable password ************* ! interface eth0 no ip rip authentication mode md5 ! router rip version 2 redistribute connected redistribute static network 10.0.5.0/24 neighbor 10.0.5.254 ! line vty ! log file /var/log/quagga/ripd.log 10.0.5.254 - DGS3627G со включенным RIP на этом интерфейсе. Ну в случае там PC роутера - небольшая разница. Я использую RIP для построения маршрутизации между впнами и OSPF для локальной сети. Ну и BGP наружу ;) Вставить ник Quote
Abram Posted March 25, 2010 Posted March 25, 2010 Поднимай OSPF. У меня динамическая маршрутизация между L3-свитчом в ядре, двумя NAS-ами и бордером. Вставить ник Quote
Alexey T Posted March 26, 2010 Posted March 26, 2010 Поднимай OSPF.У меня динамическая маршрутизация между L3-свитчом в ядре, двумя NAS-ами и бордером. и что таки поднялся на кваге под фрей? и хорошо работает? Вставить ник Quote
keir Posted March 26, 2010 Posted March 26, 2010 Использую для этих целей bgp (4 NASa к одному роутеру). Проблем нет, работает быстро. Черт знает что использует провайдер-конкурент - после подключения к инету еще 40-60 секунд надо ждать, пока маршрут поднимится. Вставить ник Quote
Abram Posted March 26, 2010 Posted March 26, 2010 и что таки поднялся на кваге под фрей? и хорошо работает?На линупсе поднялся и работает отлично. Таки что будет на этой вашей фре - не знаю, но подозреваю, что будет работать.Использую для этих целей bgp (4 NASa к одному роутеру). Проблем нет, работает быстро. Черт знает что использует провайдер-конкурент - после подключения к инету еще 40-60 секунд надо ждать, пока маршрут поднимится.BGP - он сооооовсем для других целей. Вставить ник Quote
Alexey T Posted March 26, 2010 Posted March 26, 2010 Использую для этих целей bgp (4 NASa к одному роутеру). Проблем нет, работает быстро. Черт знает что использует провайдер-конкурент - после подключения к инету еще 40-60 секунд надо ждать, пока маршрут поднимится.так же сделано. но есть ощущение что роутер слегка офигевает от большого кол-ва /32. Вставить ник Quote
Hawk128 Posted March 26, 2010 Posted March 26, 2010 Сам подумывал над подобной схемой. Пока не реализовал, но идеи такие: Вынести НАТ на НАСы, а только реальники по динамическим маршрутам. Тогда не будут таблицы забиваться совсем. И адресацию с радиуса можно всем одинаковую давать, т.к. до НАТа будет точка - точка. Вставить ник Quote
Konstantin Klimchev Posted March 26, 2010 Posted March 26, 2010 Черт знает что использует провайдер-конкурент - после подключения к инету еще 40-60 секунд надо ждать, пока маршрут поднимится.У вас iBGP? у него походу eBGP.... (косвенно, по 40-60 сек). Вставить ник Quote
Alexey T Posted March 26, 2010 Posted March 26, 2010 у нас iBGP, быстро работает. но если бы получилось полноццено и неглючно поднять ospf, сделал бы его. bgp все-таки менее удобный вариант. Вставить ник Quote
Konstantin Klimchev Posted March 26, 2010 Posted March 26, 2010 у нас iBGP, быстро работает.eBGP можно ускорить: advertisement-interval но если бы получилось полноццено и неглючно поднять ospf, сделал бы его. bgp все-таки менее удобный вариант. ваще, на мой взгляд, правильное решение: свои сети IGP (на выбор, хоть rip), клиентские i/eBGP. Вставить ник Quote
AlKov Posted March 26, 2010 Author Posted March 26, 2010 Ну вроде как с RIP разобрался, не без помощи, конечно. ;) На роутере нужные маршруты /32 появились, но.. Вылезла другая проблема - не вижу ни одного pptp на NAS2, все продолжают ломиться на 1-й.. :( В DNS IP второго NAS-а добавил, уменьшил до 1 мин. TTL для этих записей, nslookup исправно выдает оба IP в разной комбинации, а все упрямо продолжают юзать первый NAS.. Что еще может быть не так? Или просто мало времени прошло (около 3-х часов после ребута DNS)? Вставить ник Quote
Alexey T Posted March 26, 2010 Posted March 26, 2010 насильно отвалите первый NAS. пусть переконнектят. возможно у пользователей прописан для доступа IP, а не имя. Вставить ник Quote
martin74 Posted March 26, 2010 Posted March 26, 2010 а пользователи точно по dns имени ходят на сервер? у меня после добавления нового сервера клиенты на нем появляются через 2 минуты ;) Вставить ник Quote
AlKov Posted March 26, 2010 Author Posted March 26, 2010 (edited) С отсутствием коннекта на NAS2 разобрался, как всегда виновата оказалась "прокладка между рулем и сиденьем". :) NAS2 не отдавал маршруты роутеру из-за закрытого в фаерволе udp. Но радости от юзания второго НАС-а не прибавилось, вылез гемор похлеще - съехала крыша у radius-а, которы обитает на NAS1. Выразилось это в сумасшедших начислениях денег на помегабайтных тарифах и в конечном итоге radius загнал в полный ступор mysql и загнулся сам... Пришлось срочно ребутать NAS и временно "прикрыть лавочку".. В чем проблема пока непонятно. Предполагаю, что тут снова не обошлось без фаерволов. Если я не ошибаюсь, radius общается с NAS-ами по тому же udp, возможно что тут и произошел сбой из-за дропов udp фаерволом на первом NAS-е. Не может ли быть такое из-за того, что в radius.conf у меня только localhost acct 127.0.0.1:1812 password 4 4 auth 127.0.0.1:1813 password 4 4 IP второго NAS-а туда надо добавлять? Хотя не могу понять, как же в таком случае второй NAS смог авторизоваться?? Вообщем, пока разбираюсь.. Плюс ко всему, похоже, малость "недонастроил" и собственно RIP, т.к. после запуска сего увидел кучу роутов на NAS2, которым там совсем не место. Собственно маршруты там были верными - в кач. шлюза был IP NAS1, но вроде как этим роутам там (на NAS2) делать нечего. Или так оно и должно быть? Не может быть такая ситуация из-за отсутствия ACL в конфигах ripd (или zebra?) ? Edited March 26, 2010 by AlKov Вставить ник Quote
AlKov Posted March 27, 2010 Author Posted March 27, 2010 (edited) Не могу нарыть, где происходит ошибка в подсчете трафика, в случае когда юзер авторизуется на NAS-е, который находится не на локалхост.. Что интересно, в mysql данные о трафике записываются верные, а вот "обсчитывание" идет какими-то сумасшедшими суммами. Вот данные из mysql Принял (Мb.) Передал (Мb.) До снятия руб Начислено руб 2.550037 1.032669 -4.06 46456835.58 В лог (/var/log/radius/radacct/10.254.213.2/detail-20100327) по аливам данные о трафике приходят верные Sat Mar 27 12:32:35 2010 NAS-Identifier = "vpn2.mydomain.ru" NAS-IP-Address = 10.254.213.2 Acct-Session-Id = "9678285-L-1" NAS-Port = 1 NAS-Port-Type = Virtual Service-Type = Framed-User Framed-Protocol = PPP Calling-Station-Id = "192.168.112.4" Called-Station-Id = "" mpd-link = "L-1" Tunnel-Type:0 = PPTP Tunnel-Medium-Type:0 = IP Tunnel-Server-Endpoint:0 = "10.254.213.2" Tunnel-Client-Endpoint:0 = "192.168.112.4" Tunnel-Server-Auth-Id:0 = "vpn2.mydomain.ru" Framed-IP-Address = 172.16.0.7 Framed-IP-Netmask = 255.255.255.255 User-Name = "user" Acct-Multi-Session-Id = "9678286-P-1" mpd-bundle = "P-1" mpd-iface = "ng0" mpd-iface-index = 10 Acct-Link-Count = 1 Acct-Authentic = RADIUS Acct-Status-Type = Alive Acct-Session-Time = 4143 mpd-input-octets = "Ext:739222" mpd-input-packets = "Ext:4382" Acct-Input-Octets = 739222 Acct-Input-Packets = 4382 Acct-Input-Gigawords = 0 mpd-output-octets = "Ext:2094787" mpd-output-packets = "Ext:4071" Acct-Output-Octets = 2094787 Acct-Output-Packets = 4071 Acct-Output-Gigawords = 0 Client-IP-Address = 10.254.213.2 Acct-Unique-Session-Id = "b2be3b949b88bf02" Timestamp = 1269682355 А вот в лог /var/log/radius/radius.log записывается то самое сумашествие..Sat Mar 27 11:23:35 2010 : Auth: rlm_nibs (rlm_nibs_postauth): User `user' login OK [10.254.213.2:1] |192.168.112.4|Sat Mar 27 12:30:35 2010 : Info: X-AMOUNT: 287762841484 bytes Sat Mar 27 12:30:35 2010 : Info: X-NO-FLOOR-PRICE: 274432.031139 mb * $ 1.000000 Sat Mar 27 12:30:35 2010 : Info: X-AMOUNT: 287762870657 bytes Sat Mar 27 12:30:35 2010 : Info: X-NO-FLOOR-PRICE: 274432.058961 mb * $ 1.000000 Если тот же юзер авторизуется на NAS, который находится на localhost (там же, где и radius), никаких проблем не возникает. В чем может быть разница? Подозреваю, что где-то "недоконфигурил" в радиусе, или биллинге (FreeNIBS), а вот где??? Edited March 27, 2010 by AlKov Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.