Proxy ARP

Questions related to general functionality
kolesnikovAp
Posts: 6
Joined: 13 Jul 2017, 22:33

Proxy ARP

Post by kolesnikovAp »

Здравствуйте!
Помогите пожалуйста правильно настроить выдачу белых адресов.
Debian 8, accel-ppp-1.11.0

Имеем подсеть белых адресов например 111.222.333.0/26.
Необходимо давать абонентам адреса по PPPoE и по IPoE.
eth0 внешний, eth1 локальный,eth2 для абонентов с белыми без pppoe.


/etc/network/interfaces

allow-hotplug eth0
iface eth0 inet static
address 111.222.333.2
netmask 255.255.255.252
gateway 111.222.333.1
dns-nameserver 8.8.8.8

allow-hotplug eth1
iface eth1 inet static
address 10.0.0.1
netmask 255.255.255.0

allow-hotplug eth2
iface eth2 inet static
address 111.222.333.4
netmask 255.255.255.192


sysctl -w net.ipv4.conf.eth0.proxy_arp=1
arp -v -Ds 111.222.333.5 eth0 pub
...
arp -v -Ds 111.222.333.63 eth0 pub

С такими настройками на pppoe работают, по IPoE не работают, в документации написано что ядерный proxy-arp надо отключать.
Но без
sysctl -w net.ipv4.conf.eth0.proxy_arp=1
arp -v -Ds 111.222.333.5 eth0 pub
...
arp -v -Ds 111.222.333.63 eth0 pub
ничего вообще не работает.

Как правильно настроить это в accel-ppp?
Dmitry
Администратор
Posts: 954
Joined: 09 Oct 2014, 10:06

Re: Proxy ARP

Post by Dmitry »

ядерный прокси-арп отключить
arp -v -Ds 111.222.333.5 eth0 pub - вот это тоже не нужно
включить прокси-арп в конфиге accel-ppp.conf
[ipoe]
interface=eth2,....,proxy-arp=1
gw-ip-address=111.222.333.4/маска

какая схема маршрутизации ?
для L2 назначать адрес на интерфейс eth2 в /etc/network/interfaces не нужно
Dmitry
Администратор
Posts: 954
Joined: 09 Oct 2014, 10:06

Re: Proxy ARP

Post by Dmitry »

accel-ppp-1.11.0
этот лучше не использовать
лучше взять из гит ветка 1.11
https://sourceforge.net/p/accel-ppp/code/ci/1.11/tree/
kolesnikovAp
Posts: 6
Joined: 13 Jul 2017, 22:33

Re: Proxy ARP

Post by kolesnikovAp »

IPoE пока не удаётся подружить с биллингом.
Вопрос пока к PPPoE.
Через NAT работают, белые без ядерного не работают
kolesnikovAp
Posts: 6
Joined: 13 Jul 2017, 22:33

Re: Proxy ARP

Post by kolesnikovAp »

Протестировал на ubuntu.
enp0s3 - Внешний (172.23.4.2/30)
enp0s8 - (10.0.0.1/24) Абоненты за NAT по IPOE
enp0s9 - (172.23.4.4/28) Абоненты с белыми адресами по IPOE
enp0s10 – Абоненты по PPPOE

Конфиг accel-ppp
[ipoe]
verbose=100
interface=enp0s9,mode=L3,start=up,shared=1,ifcfg=0,proxy-arp=1
interface=enp0s8,mode=L3,start=up,shared=1,ifcfg=0

[ppp]
verbose=1
min-mtu=1400
mtu=1492
mru=1492
mppe=allow

[pppoe]
interface=enp0s10
verbose=1


При старте сервера
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -t nat -A POSTROUTING -o enp0s3 -s 10.0.0.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o enp0s3 -s 10.128.0.0/24 -j MASQUERADE // для pppoe



Белые не работаю пока не включишь Proxy-ARP на внешнем.

Так - sysctl -w net.ipv4.conf.enp0s3.proxy_arp=1
Или так - arp -v -Ds 172.23.4.5 enp0s3 pub (на все адреса абонентов)

Из док. «для корректной работы proxy-arp необходимо отлючить ядерный proxy-arp на рабочих интерфейсах»
То есть на внешнем можно включить ?
Dmitry
Администратор
Posts: 954
Joined: 09 Oct 2014, 10:06

Re: Proxy ARP

Post by Dmitry »

То есть на внешнем можно включить ?
да
kolesnikovAp
Posts: 6
Joined: 13 Jul 2017, 22:33

Re: Proxy ARP

Post by kolesnikovAp »

Спасибо!
urix24
Posts: 2
Joined: 23 Nov 2018, 11:13

Re: Proxy ARP

Post by urix24 »

Ubuntu 16.04
Версия accel 938bad250baa7bd6f0761e70ce68a2de063c528c Интеграция с abills
Столкнулся с проблемой. C серыми адресами все в порядке, выдаются, доступны.
С реальными проблема. Адрес выдается, но пакеты не ходят.
Спойлер
[ipoe]
gw-ip-address=91.xx.xx.96/27
gw-ip-address=172.18.0.1/19
shared=1
ifcfg=1
mode=L2
start=dhcpv4
proxy-arp=1
vlan-mon=enp5s0f0,1100-2100
interface=re:enp5s0f0\.[1-2][1-9][0-9][0-9]
verbose=1
На accel-е сессия есть:
7317: ipoe2: <POINTOPOINT,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc htb state UNKNOWN group default qlen 100
link/ether 00:15:17:8a:e4:92 peer ff:ff:ff:ff:ff:ff
inet 91.хх.хх.96 peer 91.хх.хх.97/32 scope global ipoe2
91.хх.хх.97 Не пингуется.
Ядерный proxy-arp отключен.
Читал выше, что нужно включить ядерный на внешнем интерфейсе.
Включаю, выключаю без разницы - пакеты не ходят.
cat /proc/sys/net/ipv4/conf/bond1/proxy_arp
1
iptables очищал полностью для теста - не помогает.
Если отключить proxy-arp accel-я и серые не работают также. Выдаются, но пакеты не ходят.
Какая разница accel-ю серый или белый IP ? сессии единообразно поднимаются IP по /32 c peer GW адрес.
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: Proxy ARP

Post by dimka88 »

Посмотрите tcpdump на присутствие arp, может проблема не с accel

Code: Select all

 tcpdump -i enp5s0f0 -e -vvv -n
urix24
Posts: 2
Joined: 23 Nov 2018, 11:13

Re: Proxy ARP

Post by urix24 »

Посмотрел дамп, действительно arp запросов нет.
Нашел ошибку - gw-ip-address=91.xx.xx.96/27
Настройка в accel, выдается шлюз - адрес сети. Мне казалось - это допустимо.
Поменял на 97 - все взлетело - arp есть, пакеты ходят.
Спасибо за ответ.

Читал, что нужно еще лимит arp кеша на accel поднимать в systemcl
net.ipv4.neigh.default.gc_thresh1=4096
net.ipv4.neigh.default.gc_thresh2=8192
net.ipv4.neigh.default.gc_thresh3=8192

Но, сессии ipoe поднимаются как connected и в arp -a их нет.
Они есть в ip ro
91.xx.xx.98 dev ipoe1 proto kernel scope link src 91.xx.xx.97
91.xx.xx.100 dev ipoe0 proto kernel scope link src 91.xx.xx.97
Таблица маршрутизации будет расти с ростом сессий. Что в таком случае нужно тюнить ?
Post Reply