forum.bitel.ru http://forum.bitel.ru/ |
|
Radius сервер отвечает не с того ip http://forum.bitel.ru/viewtopic.php?f=5&t=5275 |
Страница 1 из 1 |
Автор: | gramer [ 16 мар 2011, 18:04 ] |
Заголовок сообщения: | Radius сервер отвечает не с того ip |
Здравствуйте. У нас такая ситуация. На сервере, где запускается BGRadiusDialup есть два интерфейса : физический eth0 192.168.0.1/24 и виртуальный eth0:1 192.168.0.10/24 Все радиус-запросы приходят на адрес 192.168.0.10, при этом радиус шлет ответы с интерфейса с адресом 192.168.0.1. Соответственно в этом случае NAS не понимает, что ему вообще пришло. Вот пример tcpdump: Код: 14:02:12.741871 IP (tos 0x0, ttl 64, id 1200, offset 0, flags [none], proto UDP (17), length 190) 192.168.0.50.34002 > 192.168.0.10.1812: RADIUS, length: 162 Access Request (1), id: 0x96, Authenticator: e2d75a2bf4a640fc688735fd2f16e3f4 Username Attribute (1), length: 7, Value: guest 0x0000: 6775 6573 74 NAS ID Attribute (32), length: 20, Value: nas1 0x0000: 7070 706f 6531 2e6f 736b 6f6c 6e65 742e 0x0010: 7275 NAS IP Address Attribute (4), length: 6, Value: 192.168.0.50 0x0000: 5ee6 228a [|radius] 14:02:12.834753 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 657) 192.168.0.1.1812 > 192.168.0.50.34002: RADIUS, length: 629 Access Accept (2), id: 0x96, Authenticator: 464a9363d9784b91a8bff875a3aaaa47 Accounting Interim Interval Attribute (85), length: 6, Value: 01:00 min 0x0000: 0000 003c Service Type Attribute (6), length: 6, Value: Framed 0x0000: 0000 0002 Framed Protocol Attribute (7), length: 6, Value: PPP 0x0000: 0000 0001 Framed IP Address Attribute (8), length: 6, Value: x.x.x.x 0x0000: bc7c 7202 Vendor Specific Attribute (26), length: 58, Value: Vendor: Unknown (12341) [|radius] 0x0000: 0000 3035 0734 6f75 [|radius] Рыл документацию на тему указать ip на котором будет запускаться листенер BGRadiusDialup, но ничего не нашел (только номер порта можно указать). Убрать виртуальный интерфейс не предлагать - это необходимо для нашей архитектуры системы. Версия радиуса: version 5.1 build 240 from 29.11.2010 10:40:13 |
Автор: | skn [ 16 мар 2011, 22:26 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
а iptables нельзя подменять адрес отправителя? |
Автор: | gramer [ 17 мар 2011, 11:38 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
skn писал(а): а iptables нельзя подменять адрес отправителя? Можно, но хотелось бы чтобы работало без дополнительных костылей. |
Автор: | gramer [ 17 мар 2011, 14:39 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
Можете сделать такое: чтобы можно было добавить в конфиг параметр, который бы определял, на каком интерфейсе листениться (и соотвественно с него же отвечать) радуису. |
Автор: | skn [ 17 мар 2011, 15:45 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
а если не интерфейсах поменять ip местами |
Автор: | Phricker [ 17 мар 2011, 16:06 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
или же (как у нас) физический без IP и два виртуальных |
Автор: | gramer [ 17 мар 2011, 16:11 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
skn писал(а): а если не интерфейсах поменять ip местами Так в нашем случае нельзя Phricker писал(а): или же (как у нас) физический без IP и два виртуальных А вот это надо проверить, спасибо. |
Автор: | gramer [ 17 мар 2011, 16:48 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
Phricker писал(а): или же (как у нас) физический без IP и два виртуальных Так тоже нельзя. Проблема в том, что реальный ip используется демоном pulse (при помощи него реализуется отказоутойчивая система). И этот демон требует именно реальный ip, иначе отказывается стартовать. |
Автор: | gramer [ 18 мар 2011, 13:58 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
Стоит нам ждать решения этой проблемы? |
Автор: | stark [ 18 мар 2011, 21:00 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
версия какая? |
Автор: | snark [ 18 мар 2011, 21:07 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
gramer писал(а): Стоит нам ждать решения этой проблемы? проблемы? с этим?? gramer писал(а): На сервере, где запускается BGRadiusDialup есть два интерфейса : физический eth0 192.168.0.1/24 и виртуальный eth0:1 192.168.0.10/24 тут только Код: modprobe pryamie_ruki поможет ... по сути - сэр, как Вы себе представляете _нормальную_ "без дополнительных костылей"(с) работу сетевой подсистемы _любой_ ОС когда у Вас в рамках одной ОС есть 2 (два!) интерфейса принадлежащих 1 (одной!) подсети? P.S. ув. разработчки, вообще идея с some.bgbilling.component.listen.ip.addr очень хорошая, подумайте о том чтобы реализовать ![]() |
Автор: | braek-neck [ 19 мар 2011, 21:22 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
зачем на биллинге два интерфейса? если это так критично, то может стоит разделить их маской, чтоб они были в разных сетях. на билинге и насе. думаю при таком решении проблема исчезнет. |
Автор: | gramer [ 20 мар 2011, 18:28 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
snark писал(а): тут только Код: modprobe pryamie_ruki поможет ... Такую настройку требует система failover, название которой я указал выше. Прямота рук тут совсем не причем. snark писал(а): по сути - сэр, как Вы себе представляете _нормальную_ "без дополнительных костылей"(с) работу сетевой подсистемы _любой_ ОС когда у Вас в рамках одной ОС есть 2 (два!) интерфейса принадлежащих 1 (одной!) подсети? В тэге offtop вы сами ответили на этот вопрос. Как раз такой параметр мне и нужен, ну или хотябы заставить отвечать радиус с _того_же_ ip, на который пришли запросы. stark писал(а): версия какая? Указана в первом посте: gramer писал(а): Версия радиуса: version 5.1 build 240 from 29.11.2010 10:40:13 braek-neck писал(а): зачем на биллинге два интерфейса? требуется для реализации отказоустойчивой системы |
Автор: | skn [ 21 мар 2011, 00:14 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
что то меня сомнения гложат, что вам поможет параметр биндига интерфейса (адрес на котором прога слушает и с которого отсылает не одно и тоже вроде...) так как иначе прога бы отправляла бы с того же интерфейса с которого приняла пакет.... P.S. посмотрите таблицу роутинга и попробуйте в ней поменять порядок следования интефейсов, я думаю именно она определяет с какого интерфейса прога будет слать ответ |
Автор: | gramer [ 22 мар 2011, 12:09 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
skn писал(а): P.S. посмотрите таблицу роутинга и попробуйте в ней поменять порядок следования интефейсов, я думаю именно она определяет с какого интерфейса прога будет слать ответ Не знаю, насколько это правильно, но удалось заставить радиус отвечать с нужного ip при помощи роутов. Вот такие команды пришлось выполнить: Код: route delete -net 192.168.0.0/24 route delete -net 192.168.0.0/24 route add -net 192.168.0.0/24 dev eth1 metric 20 route add -net 192.168.0.0/24 dev eth1:1 metric 0 Интересный момент в этом всем такой: после выполнения этих команд получаем два маршрута в таблице роутинга, отличающихся только метрикой, но не отличающихся интерфейсом. Код: netstat -rnvee Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface MSS Window irtt 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 0 0 0 192.168.0.0 0.0.0.0 255.255.255.0 U 20 0 0 eth1 0 0 0 Но, как ни странно, это работает ![]() |
Автор: | snark [ 22 мар 2011, 14:14 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
gramer писал(а): получаем два маршрута в таблице роутинга, отличающихся только метрикой, но не отличающихся интерфейсом. Код: netstat -rnvee Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface MSS Window irtt 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 0 0 0 192.168.0.0 0.0.0.0 255.255.255.0 U 20 0 0 eth1 0 0 0 Но, как ни странно, это работает ![]() это _не_ странно, это _нормально_ в кратце: при наличии 2-х и более маршрутов с одинаковым адресом назначения пакеты всегда отправляются по маршруту с наименьшей метрикой TIP: поставьте на Вашем бордере для дефолтного маршрута (сеть 0.0.0.0/0) метрику отличную от 0 и 1, например 100 и тогда перестанете играть с аплинком в пинг-понг пакетами ![]() |
Автор: | gramer [ 22 мар 2011, 18:28 ] |
Заголовок сообщения: | Re: Radius сервер отвечает не с того ip |
snark писал(а): в кратце: при наличии 2-х и более маршрутов с одинаковым адресом назначения пакеты всегда отправляются по маршруту с наименьшей метрикой Это я знаю. Собсно на основании этих знаний и были составлены правила роутинга, указанные выше. Странно то, что имя интерфейса в результирующей таблице eth1, хотя я задавал для маршрута с метрикой 0 интерфейс eth1:1. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |