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

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

Кроме торрентов туда ничего и не уходит :)

А торренты и есть больше половины трафика, как видим http://forum.nag.ru/forum/index.php?showtopic=74102

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


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

В6 пиров не так много как в4, к тому же скорости у них по ниже будут.

Я решил пока не добавлять ипв6 в резалку ютп :)

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


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

В6 пиров не так много как в4, к тому же скорости у них по ниже будут.

 

Не сказал бы. У меня весьма нехило туда торрент перекочевал. Уже многие ипользуют, и дальше будет только больше...

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


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

Ваша реализация заработала... :)

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


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

Ваша реализация заработала... :)

какая? расскажите мне , я планирую ipv6 впилить

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


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

Hawk128 писал.. 2 скриптика

я их просто допилил/перепилил. учитывая очепятки )))

у меня на PPP запущено.

надо будет - выложу.

10% траффика УЖЕ там. хотя настроен только один БРАС.

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

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


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

Конечно выкладывайте! Всем же интересно! Желательно подробно).

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

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


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

Реализация под обычный PPP FreeBSD

 

#!/bin/sh

# $1 $2 $3 $4 $5 $6

# USER HISADDR6 MYADDR6 INTERFACE PROCESSID FILTERID

USER=$1

HISADDR6=$2

MYADDR6=$3

INTERFACE=$4

PROCESSID=$5

FILTERID=$6

set `date +"%Y %m %d %H %M %S"`

echo $1-$2-$3 $4:$5:$6 UP USER:${USER} HA:${HISADDR6} MA:${MYADDR6} IF:${INTERFACE} PID:${PROCESSID} >> /memdisk/ipv6.log

 

test_ipv6=`/usr/bin/awk -v hisaddr6=${HISADDR6} 'BEGIN{print substr(hisaddr6,1,4)}'`

 

prefix=`/usr/bin/awk -v iface=${INTERFACE} 'BEGIN{ifno = substr(iface,4,4); ifno=ifno+8192; printf "2001:67c:21f0:%X::",ifno;}'`;

 

if [ "${test_ipv6}" == "fe80" ]

then

{

echo "User wants IPv6:: ${test_ipv6}" >> /memdisk/ipv6.log

echo "User have ${INTERFACE}" >> /memdisk/ipv6.log

echo "User have ${prefix}" >> /memdisk/ipv6.log

 

/sbin/ifconfig ${INTERFACE} inet6 ${prefix}1/64

/usr/local/bin/expect -f /etc/ppp/zebra-ipv6-up.expect ${INTERFACE} ${prefix}/64 >> /memdisk/ipv6.log

 

}

fi

 

 

zebra-ipv6-up.expect

 

#!/usr/local/bin/expect -f

 

set int [lindex $argv 0]

set pref [lindex $argv 1]

 

spawn telnet 127.0.0.1 2601

expect "ord:" {send "МойЮзерскийПароль\r"}

expect ">" {send "en\r"}

expect "ord:" {send "МойРуУтПароль\r"}

expect "#" {send "conf t\r"}

expect "#" {send "int $int\r"}

expect "#" {send "ipv6 nd prefix $pref 14400 14400\r"}

expect "#" {send "ipv6 nd prefix ::/0 router-address \r"}

expect "#" {send "no ipv6 nd other-config-flag\r"}

expect "#" {send "no ipv6 nd managed-config-flag\r"}

expect "#" {send "ipv6 nd ra-interval 40\r"}

expect "#" {send "ipv6 nd ra-lifetime 60\r"}

expect "#" {send "ipv6 nd reachable-time 9000\r"}

expect "#" {send "no ipv6 nd suppress-ra\r"}

expect "#" {send "ipv6 nd router-preference medium\r"}

send "exit\r"

send "exit\r"

send "exit\r"

expect eof

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


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

Реализация под обычный PPP FreeBSD

 

Спасибо за скрипт. Можете показать конфиг mpd.conf и zebra? я пока не до конца понял как это работает.

Почему, если интерфейсу назнчается fe80 , вы не не назначаете ipv6 в ручную?

На сервере ng0 ipv6 назначился , на клиенте только на основе mac-адреса. Так и должно быть?

На сервере

ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1492
inet6 fe80::e2cb:4eff:fe12:7805%ng0 prefixlen 64 tentative scopeid 0xa 
inet 172.30.0.33 --> 192.168.2.2 netmask 0xffffffff 
inet6 2001:67c:21f0:2000::1 prefixlen 64 tentative 
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>

 

На клиенте

ppp0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1492
inet6 fe80::3615:9eff:fe1c:6406%ppp0 prefixlen 64 scopeid 0x7 
inet 192.168.2.2 --> 172.30.0.33 netmask 0xffffff00 

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

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


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

просьба заменить адресное пространство 2001:67c:21f0:: на собственное!

 

вот что на БРАСе FreeBSD 9.1

 

tun396: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1480

options=80000<LINKSTATE>

inet 91.219.168.38 --> 10.38.171.53 netmask 0xffffffff

inet6 fe80::215:17ff:fe91:80ec%tun396 prefixlen 64 scopeid 0x1a8

inet6 2001:67c:21f0:218c::1 prefixlen 64

nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>

Opened by PID 73199

 

на мпд5 - смотрите скрриптик на второй странице ( Hawk128 )

конфиг для квагги - это скриптик на expect для конкретного девайса и конкретной подсети.

mpd5 у меня как-то не пошел... у меня чуток патченный PPP для шейпирования + контроль за падением tun-ов ( чтобы у абонента не вылетала 619 ошибка )

 

если бы вы использовали ваш диапазон и он был бы доступер в интернете - то через 2-3 минуты винда бы одуплилась и в состоянии подключения написала бы "интернет" на ipv6 подключении.

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


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

вот скриншот с смерки, что и чего выдается

post-108909-092119100 1363941460_thumb.png

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


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

просьба заменить адресное пространство 2001:67c:21f0:: на собственное!

 

вот что на БРАСе FreeBSD 9.1

 

tun396: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1480

options=80000<LINKSTATE>

inet 91.219.168.38 --> 10.38.171.53 netmask 0xffffffff

inet6 fe80::215:17ff:fe91:80ec%tun396 prefixlen 64 scopeid 0x1a8

inet6 2001:67c:21f0:218c::1 prefixlen 64

nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>

Opened by PID 73199

 

на мпд5 - смотрите скрриптик на второй странице ( Hawk128 )

конфиг для квагги - это скриптик на expect для конкретного девайса и конкретной подсети.

mpd5 у меня как-то не пошел... у меня чуток патченный PPP для шейпирования + контроль за падением tun-ов ( чтобы у абонента не вылетала 619 ошибка )

 

если бы вы использовали ваш диапазон и он был бы доступер в интернете - то через 2-3 минуты винда бы одуплилась и в состоянии подключения написала бы "интернет" на ipv6 подключении.

про ip уберу, не переживайте. Сервак тупо на столе)) инетов у него нет) и upлинков с ipv6 , тоже нет).

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

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


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

Продолжаю эксперементы. Столкнулся с проблемой, раздаю в сети IP по DHCP и IPv4 и IPv6 олновременно. ПК с windows 7 получают оба комплекта адресов, но при получении в том числе и IPv6 DNS сервера - перестают работать запросы к IPv4 DNS серверу. Что весьма негативно отразилось на VPN и прочих сервисах... Кто-нибудь сталкивался? Решал?

 

6to4 как решение..

а чего бы не настроить ДНС в обоих режимах?

 

а вообще - конфиг DHCP можете показать?

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


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

Оказалось, что не работает шейпинг ipv6-трафика согласно полученных от RADIUS параметров.

Судя по всему, ipv6 не заворачивается в ng_car.

%sudo ngctl show ng10:
 Name: ng10        	Type: iface   		ID: 000000a4   Num hooks: 2
 Local hook  	Peer name   	Peer type	Peer ID 		Peer hook
 ----------  	---------   	---------	------- 		---------
 inet        	mpd3102-B3-13-lim bpf      	000000a7    	iface
 inet6   		mpd3102-B3-13   ppp      	000000a5    	ipv6

Traffic limits: 	
in#1	: 'all rate-limit 25600000 pass' 	
out#1	: 'all rate-limit 25600000 pass'

FreeBSD 8.3, mpd 5.6

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


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

Отпиши Мотину, он русскоговорящий.

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


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

Отпиши Мотину, он русскоговорящий.

 

Спасибо!

 

Мотин сообщает, что данная функциональность ещё не реализована в mpd.

Изменено пользователем mr.Scamp

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


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

не сильно мудрствуя с костылями ввиде скриптов сделал так:

(всё равно более 2к коннектов не получу на брасе)

zebra.conf:

interface ng0
ipv6 address 2g02:4680:7:800::1/64
no ipv6 nd suppress-ra
ipv6 nd ra-interval 10
ipv6 nd prefix 2g02:4680:7:800::/64
!
interface ng1
ipv6 address 2g02:4680:7:801::1/64
no ipv6 nd suppress-ra
ipv6 nd ra-interval 10
ipv6 nd prefix 2g02:4680:7:801::/64
!
...
interface ng2046
ipv6 address 2g02:4680:7:ffe::1/64
no ipv6 nd suppress-ra
ipv6 nd ra-interval 10
ipv6 nd prefix 2g02:4680:7:ffe::/64
!
interface ng2047
ipv6 address 2g02:4680:7:fff::1/64
no ipv6 nd suppress-ra
ipv6 nd ra-interval 10
ipv6 nd prefix 2g02:4680:7:fff::/64

 

ip6 трафик пошел

 

пы.сы. сделать на брасе суммаризацию, чтобы остальным участникам ospf протокола было получше

Изменено пользователем Giga-Byte

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


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

Уважаемые коллеги. Разработчики mpd , могут добавить что нам нужно по ipv6. Стукните в тему кто гуру в ipv6) https://sourceforge.net/p/mpd/discussion/44692/thread/9ca079c7/#4bba

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


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

Коллеги, кто уже полноценно дает ipv6 в dual stack с помощью mpd? Разработчики добавили ng_car ноду для нарезки IPv6

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

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


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

Толку то, лучше бы они добавили IPoE.

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


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

можно попросить, думаю реализуют. Но мне проще отдавать ipv6 в PPP.

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

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


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

Толку то, лучше бы они добавили IPoE.

тогда это должен быть не multilink-ppp-daemon

форкаца нада...

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


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

Multiuser iPoe Daemon.

По сути дело не в названии, а в том, что оно уже умеет строить графы из нод и радиус.

Хотя IPoE можно собрать на базе ipfw и dummynet, если очень захотеть.

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


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

...уже умеет строить графы из нод и радиус.

зачем для ipoe строить какие-то нетграф-ноды?

QinQ? не у всех оно работать будет

 

Хотя IPoE можно собрать на базе ipfw и dummynet, если очень захотеть.

я думаю это более правильнее, например if_bridge с private-vlan-ами

bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
       ether 02:df:19:57:a7:00
       inet 192.168.200.1 netmask 0xfffff800 broadcast 192.168.207.255
       nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
       id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
       maxage 20 holdcnt 6 proto rstp maxaddr 2048 timeout 300
       root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0
       member: vlan99 flags=803<LEARNING,DISCOVER,PRIVATE>
               ifmaxaddr 0 port 11 priority 128 path cost 55
       member: vlan280 flags=803<LEARNING,DISCOVER,PRIVATE>
               ifmaxaddr 0 port 37 priority 128 path cost 55
       ....

и туда же ipv6 адрес, с dhcp и dhcpv6-серверами.

есть же ISG, старт-стоп сессий по лизам DHCP,

привязка к портам коммутатора, конечно же, если коммутаторы умные везде :)

Изменено пользователем Giga-Byte

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


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

зачем для ipoe строить какие-то нетграф-ноды?

хотя бы если нужен L2 IPoE: [ng_XXXX +] ng_ether + ng_car [+ ng_neflow].

Можно и ваш вариант L2, но он чуть более специфичен: требует влана на юзера.

 

PS: if_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 смайлов.

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

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

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