Перейти к содержимому
Калькуляторы

FreeBSD 8.2, MPD5.5, RADIUS, IPv6 Если кто поднимал - помогите и мне поднять.

Собственно по теме, есть FreeBSD 8.2, MPD5.5, RADIUS, система работает по v4 все в норме, хочу прикрутить к ней еще и IPv6. Эксперементы с ipv6cp дали прописывание автоматического v6 IPшника на обоих концах тунеля, но основанного на МАСах сетевух. Может кто подскажет как правильно заставить прописывать конкретные IPv6 на концах тунеля? Или может как по другому делать? Сеть IPv6 есть своя, но как ее раздавать не понятно. Желательно еще рассмотреть вариант отдавания небольшой подсети на пользователя, но начать хотябы со /128...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На уровне mpd согласуются только link-local адреса, и на этом его участие заканчивается.

Дальше ipv6 сети назначаются по ra/dhcpv6.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Т.е. через радиус никак не отвесить?

Как тогда народ прикручивает? Примеры есть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Провел несколько эксперементов. Пока ничего толкового не вырисовывается. DHCPD6 отказывается работать на виртуальных интерфейсах (ng0 например). Как выкрутиться из этого пока не пойму. Если у кого есть уже опыт экстпуатации IPv6 - напишите сюда примеры, желательно на FreeBSD и MPD5...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кваговский rtdadv работает, если его вкючать/выключать на интерфейсах из скриптов mpd.

DHCPv6, скорее всего, так-же.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

isc-dhcp6? В Linux у этого сервера были проблемы с виртуальными интерфейсами, пробуйте другие реализации dhcpv6 сервера. Ещё одна проблема в том, что существующие dhcpv6 сервера для prefix-delegation требуют duid, хотя для vpn подключений это явно лишнее и взять его просто неоткуда. Тут придётся изобретать костыли. Кстати dhcpv6 без RA ничего не даст, у клиента не будет настроен маршрут по умолчанию.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ок. Поиграюсь. С isc-dhcp6 действительно проблема с виртуальными, как и писал выше. У 4-й версии этой проблемы нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ничего хорошего не получается. Любой DHCP6 сервер пишет

Unsupported device type 53 for "ng0"

.

RA подня и отдал, но не отдает DNS для винды и контроль адресов клиента никакой, а следственно и биллинг прикрутить непонятно как. Похоже схема только для IPoE возможна, и то пилить надо.

 

Неужели еще никто по тунелям IPv6 не дает хомячкам?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Контроль то как-раз полный и с биллингом всё предельно ясно: абонентский трафик идёт только через его туннель.

Ну а с остальным - когда выкинут WinXP и старые SOHO раутеры, тогда и остальное допилят.

 

З.Ы. Даже больше надежды на DHCP во FreeRADIUS-е, похоже его раньше допилят и будет единая система.

Изменено пользователем Deac

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это не серьёзно.

 

ngX это L3 интерфейс, у него нет эзернета и маки он не видит. Обычным дхцп серверам нужны L2 интерфейсы, чтобы они могли видеть маки в запросах. И там ещё специфика в том, что у клиента в начальный момент времени нет L3 адреса, только L2 и дхцп сервер отвечает на мак клиента (или броадкастом).

 

Если хотите скрещивать ежа с ужом - пользуйтесь инструментами, не насилуйте животных.

 

Попробуйте фаером заворачивать юдп пакеты на физ интерфейс где слушает дхцп сервер. Другой вариант это найти/написать дхцп самому, подобно тому что я на перле сделал для в4. Или хотя бы релей агента забабахать, уж это совсем просто должно быть.

 

 

 

Неужели еще никто по тунелям IPv6 не дает хомячкам?

 

Уж нативно пора бы. Туннели нужны корпорату для удалённого доступа.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Иван, ты не прав(в принципе). )

Вот интересно, а нельзя ли ngX, поднимаемые MPD, цеплять к ng_switch и физический интерфейс(на кот. работает DHCP) - туда же?

Изменено пользователем Deac

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

З.Ы. Даже больше надежды на DHCP во FreeRADIUS-е, похоже его раньше допилят и будет единая система.

 

Оно там не родное и приживается плохо. Фри радиус сам по себе не гибкий нефига (наверное его писали закостенелые телефонисты :) ) и дхцп там живёт более менее только в связке с перлом. Но перл это всё может и без фрирадиуса делать даже лучше.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот интересно, а нельзя ли ngX, поднимаемые MPD цеплять к ng_switch и физический интерфейс(на кот. работает DHCP) - туда же?

 

Можно, но тогда это будут не ngX :)

 

свич - завязан на мак адресах, просто IP пакеты он не поймёт куда слать.

 

Я с этим (эзернет интерфейс для впн клиентов) уже на экспериментировался почти год назад. В итоге я написал свою ноду в которой был собственный мини IP стёк, точнее с одной стороны inet (IP) хук, с другой ethernet, нода имеет собственный IP и мак, держит свой ARP кеш и резолвит IP->mac. Мне оно было надо чтобы у меня броадкасты от/к клиентам ходили без костылей с дупликацией пакетов в фаерволе. И в итоге получалось что клиент после авторизации получал свой интерфейс в локалке, от/куда ходили броадкасты и мультикаст и обычные пакеты, нода умеет фрагментировать и собирать пакеты в обе стороны. Но интерфейс этот прямой до клиента и в обход фаера системы. А цеплял я свою ноду руками вместо ngX - те нужно было бы мпд5 править в итоге. Забросил где то на генерации ICMP пакетов о том что пакет отброшен из за фрагментации. Спустя пару месяцев осознал что зря привязался (захардкодил) к эезернету, ибо фаерварь и прочие L2 есть в мире. Думаю она (нода) будет полезна когда потребуется выкинуть в4 полностью из ядра, но сохранить возможность доступа к 4 хостам, только дописать ноду нат64.

 

Другая засада в том, что сам свич(нода) не рассчитана на нагрузки в принципе: кажется там маленький лимит на количество хуков (64) и самое плохое это глобальная блокировка таблицы форвадинга мак:хук.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

И все таки вопрос не ясен. Как именно (пример) заставить абонента в тунеле, да и сервак тоже получить нормальные, желательно конкретно заданные адреса в6 на примере mpd5?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для сервака прописать в конфиге статически, как это делалось для в4.

 

Для клиента искать релейагента/переписывать дхцп сервер.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

И все таки вопрос не ясен. Как именно (пример) заставить абонента в тунеле, да и сервак тоже получить нормальные, желательно конкретно заданные адреса в6 на примере mpd5?

 

Да квагой и скриптами в mpd.

 

/usr/local/bin/vtysh -c "configure terminal" -c "interface $IFACE" -c "ipv6 nd prefix абоненткая сеть/64" -c "no ipv6 nd suppress-ra"

/usr/local/bin/vtysh -c "configure terminal" -c "interface $IFACE" -c "ipv6 nd suppress-ra"

 

Абонентскую сеть брать по логину. Изврат, но другого решения я пока особо не вижу.

 

Либо просить Мотина добавить ra в mpd с радиусом :)

http://sourceforge.net/projects/mpd/forums/forum/44692/topic/3391205

Изменено пользователем littlesavage

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

RA не совсем то что хотелось бы. Через RA DNS сервер винде не назначается. (У меня не получилось). Да и транжирить /64 на абонента не особо хочется. Может есть другие варианты как заставить работать нечно типа назначения адресов клиенту, как это происходит через радиус и мпд на 4-й версии?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да и транжирить /64 на абонента не особо хочется.

 

Только вы учтите, что всякие IPS и подобные самоделки будут блокировать атакующих по /64(как минимум), а то иначе правил в фаерволе не напосёшься. Один ваш абонент устроит атаку на какой-нибудь mail.ru, заблокируют /64 и всё... очередь звонков в техподдержку "не работает мейл.ру/вконтакте/прочее"

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Подниму тему.

Кто и как IPv6 через тунели раздает? Есть ли такие?

Сервера уже прописал в IPv6, но как дать клиентам - не выходит пока что...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У мну другая проблема: Как шейпить выделенные IPv6?

Покажите пример pipe.

Что делать, если клиент через 12 часов переполучил другой IPv6 ?

Изменено пользователем vlad11

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поэтому я и хочу их раздавать через тунель на MPD5.5. Там шейп на весь тунель вещается на базе ng_car. Весьма шустро работает и ему фиолетово какой будет трафик, что IPv4 что IPv6.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У мну другая проблема: Как шейпить выделенные IPv6?

Покажите пример pipe.

Что делать, если клиент через 12 часов переполучил другой IPv6 ?

 

Там ведь только ipv6 tables пока нет. Cам dummynet работает с ipv6, в том числе и динамические pipe'ы (mask dst-ip6/src-ip6)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну так что? Никто IPv6 не внедряет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Никто IPv6 не внедряет?

Внедряют, но мало, выпендрёжники в основном, пока.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У мну другая проблема: Как шейпить выделенные IPv6? Покажите пример pipe. Что делать, если клиент через 12 часов переполучил другой IPv6 ?

 

Вообщем так.

 

Я хочу сделать вариант ISG для фряхи, типа http://forum.nag.ru/...showtopic=53156, только на L2.

 

Будет:

 

--ng_ether<->ng_l2ccp<->ng_ether--

          \ ng_car /

 

На клиента по ng_car ноде, в принципе можно и больше если нужны разные скорости по разным направлениям.

 

 

Поскольку оно L2 то IPv4, IPv6 и всё остальное (как минимум арп) пойдёт одним путём. Возможность настройки гнать все типы эзернет фреймов / только выбранные / все кроме через процессинговые ноды клиента (ng_car как минимум) я уже предусмотрел в ng_l2ccp. Трафик уже считает по макам, в корку не роняет, нода многопоточная (кто не знает ng_bridge - однопоточен). Осталось дописать чтобы эвенты скидывало на управляющий хук и по мелочам, и дальше огромная возня с юзерланд демоном/управлялкой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.