Нет реакции на запросы QinQ IPoE

IPoE related questions
bodigard
Posts: 24
Joined: 24 Mar 2015, 04:37

Нет реакции на запросы QinQ IPoE

Post by bodigard »

Доброго времени суток уважаемое сообщество !

бьюсь уже 2-ю неделю с IPoE+QinQ, результат нулевой, посему прошу помочь разобраться что-же не так делаю

сейчас имеестся:

Centos 6.6

Code: Select all

 uname -a
Linux localhost.localdomain 2.6.32-504.12.2.el6.x86_64 #1 SMP Wed Mar 11 22:03:14 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
исходники accel-я брал из git

собирал так

Code: Select all

cmake -DKDIR=/usr/src/kernels/2.6.32-504.12.2.el6.x86_64 -DBUILD_PPTP_DRIVER=TRUE -DBUILD_IPOE_DRIVER=TRUE -DLOG_PGSQL=FALSE -DRADIUS=TRUE -DNETSNMP=TRUE -DLUA=TRUE -DCMAKE_BUILD_TYPE=Debug -DMEMDEBUG=TRUE /root/accel/accel-ppp-code
make без ошибок

модуль загружен

Code: Select all

lsmod | grep ipoe
ipoe                   30491  0

Code: Select all

modinfo ipoe
filename:       /lib/modules/2.6.32-504.12.2.el6.x86_64/extra/ipoe.ko
license:        GPL
srcversion:     962C079A6B1B8F041AE3E4C
depends:
vermagic:       2.6.32-504.12.2.el6.x86_64 SMP mod_unload modversions
интерфейс QinQ поднят

Code: Select all

ifconfig eth1.51
eth1.51   Link encap:Ethernet  HWaddr 00:14:85:3C:2E:A9
          inet addr:192.168.140.1  Bcast:192.168.140.255  Mask:255.255.255.0
          inet6 addr: fe80::214:85ff:fe3c:2ea9/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3977 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:513843 (501.7 KiB)  TX bytes:636 (636.0 b)
пакеты на него прилетают

Code: Select all

tcpdump -i eth1.51 -enn | grep -i dhcp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1.51, link-type EN10MB (Ethernet), capture size 65535 bytes
09:30:10.398960 20:cf:30:3d:41:d3 > ff:ff:ff:ff:ff:ff, ethertype 802.1Q (0x8100), length 346: vlan 1001, p 0, ethertype IPv4, 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 20:cf:30:3d:41:d3, length 300
09:30:26.949374 20:cf:30:3d:41:d3 > ff:ff:ff:ff:ff:ff, ethertype 802.1Q (0x8100), length 346: vlan 1001, p 0, ethertype IPv4, 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 20:cf:30:3d:41:d3, length 300
09:30:58.382405 20:cf:30:3d:41:d3 > ff:ff:ff:ff:ff:ff, ethertype 802.1Q (0x8100), length 346: vlan 1001, p 0, ethertype IPv4, 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 20:cf:30:3d:41:d3, length 300
конфиг accel-я (редакция далеко не первая)

Code: Select all

[modules]
log_file
ipoe
radius

[core]
log-error=/var/log/accel-ppp/core.log
thread-count=2

[ipoe]
verbose=5
username=ifname
password=empty
lease-time=300
max-lease-time=600
unit-cache=0
shared=0
ifcfg=0
mode=L3
start=dhcpv4
ip-unnumbered=1
proxy-arp=1
nat=0
attr-dhcp-client-ip=Framed-IP-Address
attr-dhcp-router-ip=DHCP-Router-IP-Address
attr-dhcp-mask=DHCP-Mask
attr-dhcp-lease-time=DHCP-Lease-Time
vlan-mon=re:eth1\.[4-6][0-3],900-2000
vlan-timeout=60
vlan-name=%I.%N
interface=re:eth1\.[4-6][0-3]

[log]
log-file=/var/log/accel-ppp/accel-ppp.log
log-emerg=/var/log/accel-ppp/emerg.log
log-fail-file=/var/log/accel-ppp/auth-fail.log
log-debug=/var/log/accel-ppp/debug.log
copy=1
level=5
стартую так

Code: Select all

accel-pppd -c /etc/accel-ppp.conf
видим что демон работает

Code: Select all

netstat -ltpun | grep 67
udp        0      0 0.0.0.0:67                  0.0.0.0:*                               17566/accel-pppd
SELinux отключен

iptables на время тестов тоже выключен

Code: Select all

 service iptables status
iptables: Межсетевой экран не запущен.
в логах

Code: Select all

[2015-03-24 09:20:31]:  info: ipoe: start interface eth1.51 ()
[2015-03-24 09:20:31]:   msg: accel-ppp version 3e886b631e0684c689b8075778be505ae9ae7629
а дальше тишина в логах, от слова совсем :(

пробовал разные версии accel-ppp, а точнее 1.9.0 и 1.8.0, пробовал разные дистрибутивы, Centos6.6 x32 Debian6.0.10 x32, Debian7.8.0 x32 (на последнем отказался собираться ругаясь на ошибки в исходниках ядра) результат везде одинаков, пакеты от тестового клиента прилетают, а accel их в упор не видит, о чём-то большем (радиус, шейпер и т.д.) само собой речи пока вообще не идёт ...

заранее благодарен за помощь !
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: Нет реакции на запросы QinQ IPoE

Post by dimka88 »

стартую так

Code: Select all

accel-pppd -c /etc/accel-ppp.conf
Запустите его демоном

Code: Select all

accel-pppd -d -c /etc/accel-ppp.conf
Попробуйте mode=L2.

У вас accel-ppp слушает интерфейсы interface=re:eth1\.[4-6][0-3], а судя по vlan-mon=re:eth1\.[4-6][0-3],900-2000, еще необходимо добавить interface=re:eth1\.[4-6][0-3]\.[0-9][0-9][0-9][0-9]
bodigard
Posts: 24
Joined: 24 Mar 2015, 04:37

Re: Нет реакции на запросы QinQ IPoE

Post by bodigard »

забыл упомянуть, на тестовом стенде qinq vlan 51 (eth1.51) клиентский соответственно 51.1001 т.е. eth1.51.1001

попробовал

Code: Select all

mode=L2
interface=re:eth1\.[4-6][0-3]\.[0-9][0-9][0-9][0-9]
в логе при этом 1на запись

Code: Select all

[2015-03-24 12:21:24.756] accel-ppp version 3e886b631e0684c689b8075778be505ae9ae7629
и так-же тишина, tcpdump видит пакеты, accel нет

+судя по strace-у, если писать interface=re:eth1\.[4-6][0-3]\.[0-9][0-9][0-9][0-9] он не создаёт UDP сокет который слушает запросы
а, ну и netstat -ltpun | grep 67 говорит что ничего не слушается
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: Нет реакции на запросы QinQ IPoE

Post by dimka88 »

Уберите пока vlan-mon попробуйте, создайте vlan вручную.
Сделайте так

Code: Select all

interface=re:eth1\.[0-4][0-9][0-9][0-9]\.[0-9][0-9][0-9]
interface=re:eth1\.[0-4][0-9][0-9][0-9]
bodigard
Posts: 24
Joined: 24 Mar 2015, 04:37

Re: Нет реакции на запросы QinQ IPoE

Post by bodigard »

Code: Select all

vconfig add eth1.51 1001
Added VLAN with VID == 1001 to IF -:eth1.51:-

Code: Select all

ifconfig eth1.51.1001
eth1.51.1001 Link encap:Ethernet  HWaddr 00:14:85:3C:2E:A9
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:100 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:17235 (16.8 KiB)  TX bytes:0 (0.0 b)
accel-ppp.conf

Code: Select all

verbose=9
debug=1
username=ifname
password=empty
lease-time=300
max-lease-time=600
unit-cache=0
shared=0
ifcfg=0
mode=L2
start=dhcpv4
ip-unnumbered=1
proxy-arp=1
nat=0
attr-dhcp-client-ip=Framed-IP-Address
attr-dhcp-router-ip=DHCP-Router-IP-Address
attr-dhcp-mask=DHCP-Mask
attr-dhcp-lease-time=DHCP-Lease-Time
#vlan-mon=re:eth1\.[4-6][0-3],900-2000
#vlan-timeout=60
#vlan-name=%I.%N
#interface=re:eth1\.[4-6][0-3]
interface=re:eth1\.[0-4][0-9][0-9][0-9]\.[0-9][0-9][0-9]
interface=re:eth1\.[0-4][0-9][0-9][0-9]
proto=100
в логе

Code: Select all

[2015-03-24 13:20:19]:   msg: accel-ppp version 3e886b631e0684c689b8075778be505ae9ae7629
на netstat -ltpun | grep 67 тишина

пакеты также не видит
bodigard
Posts: 24
Joined: 24 Mar 2015, 04:37

Re: Нет реакции на запросы QinQ IPoE

Post by bodigard »

хм, если вручную создать vlan (eth1.51.1001)

и в конфиге написать

Code: Select all

[ipoe]
....
interface=re:eth1\.[4-6][0-3]
....
то пакеты он начинает ловить

а как заставить его слушать/поднимать клиентские vlan-ы (eth1.51.ХХХХ) по BOOTP/DHCP, Request ?
User avatar
Абрамчук Вадим
Posts: 75
Joined: 21 Oct 2014, 20:15

Re: Нет реакции на запросы QinQ IPoE

Post by Абрамчук Вадим »

vlan-mon поднимает vlan-ы по любому пакету, необязательно dhcp. Снимите дамп в pcap с eth1, посмотрим, что там. Подозреваю, что дело в tpid.
tcpdump -i eth1 -s 0 -c 100 -w /tmp/dump.pcap
bodigard
Posts: 24
Joined: 24 Mar 2015, 04:37

Re: Нет реакции на запросы QinQ IPoE

Post by bodigard »

Code: Select all

tcpdump -i eth1 ether host 20:CF:30:3D:41:D3  -s 0 -c 100 -w /tmp/dump.pcap
20:CF:30:3D:41:D3 мак тестового клиента

единственно вчера поменяли клиентский vlan с 1001 на 1002 но под vlan-mon=re:eth1\.[4-6][0-3],900-2000 это вроде как попадает
Attachments
dump.zip
(3.03 KiB) Downloaded 100 times
User avatar
Абрамчук Вадим
Posts: 75
Joined: 21 Oct 2014, 20:15

Re: Нет реакции на запросы QinQ IPoE

Post by Абрамчук Вадим »

В дампе на вид всё вроде нормально. VLAN 51.1002, т.е. у вас это будет интерфейс eth1.51.1002.
Я смотрю, это не попадает под вашу регулярку:

Code: Select all

interface=re:eth1\.[0-4][0-9][0-9][0-9]\.[0-9][0-9][0-9]
interface=re:eth1\.[0-4][0-9][0-9][0-9]
Попробуйте так:

Code: Select all

interface=re:eth1\.51\.\d{4}
bodigard
Posts: 24
Joined: 24 Mar 2015, 04:37

Re: Нет реакции на запросы QinQ IPoE

Post by bodigard »

последний раз пробовал так

Code: Select all

vlan-mon=re:eth1\.[4-6][0-3],1000-1999
vlan-timeout=60
vlan-name=%I.%N
interface=re:eth1\.[4-6][0-3]
interface=re:eth1\.[4-6][0-3]\.1[0-9][0-9][0-9]
глухо

сейчас попробовал

Code: Select all

vlan-mon=re:eth1\.[4-6][0-3],1000-1999
vlan-timeout=60
vlan-name=%I.%N
#interface=re:eth1\.[4-6][0-3]
#interface=re:eth1\.[4-6][0-3]\.1[0-9][0-9][0-9]
interface=re:eth1\.51\.\d{4}
результат тот-же, и при этом в логах нет записи типа "info: ipoe: start interface eth1.51 ()"

так-же пробовал как в man-е написано

vlan-mon=re:eth1.51,1000,1001,1002

и тоже не хочет

ещё напрягает вот это

Code: Select all

lsmod
Module                  Size  Used by
ipoe                   30491  0
т.е. модуль ядра никто не использует ...
а по логике вещей его должен использовать демон userspase, т.е. accel-pppd, соответственно счётчик был-бы 1 а не 0 ...
Post Reply