Просмотр Исходного

{toc}

h1. Описание

Сдвоенная схема для PPPoE и IPoE одновременно - такую гибкость настройки позволяет Accel.

IPoE подразумевает работу в одном широковещательном сигменте с клиентами.

Схема проверялась на Debian 10 и Ubuntu 20.04

h1. Настройка

h2. BRAS

h3. Что нужно поменять в конфигурационных файлах

*{color:red}!!!TODO идея: сделать расписанный лог красным/зелёным/синим с пояснениями{color}*

*{color:red}TODO: описать эти опции наглядней{color}*

* *Внешний IP Accel, он же IP с которого уходят запросы к биллингу*: 192.168.1.130
* *Внутренний IP Accel, он же IP шлюза для абонентов IPoE*: 192.168.0.100
* *Интерфейс, за которым находятся абоненты*: enp0s8
* *IP, биллинга, на который BRAS будет отправлять запросы авторизации и Netflow*: 192.168.1.156
* *Пароль RADIUS-клиента (не забудьте указать одинаковый в Accel и на биллинге)*: AccelSharedSecret
* *Пароль CoA-клиента (не забудьте указать одинаковый в Accel и на биллинге)*: AccelCoASecret

h3. Что можно поменять, но не обязательно

* *DNS для абонентов PPPoE*: dns1=8.8.8.8, dns2=8.8.4.4

h3. Что менять не следует

*{color:red}TODO: описать эти опции наглядней{color}*

* *IP шлюза для абонентов PPPoE*: 10.128.0.1
* *ifcfg=1, shared=1, mode=L2, start=up*: - это важные параметры для правильной работы описанной схемы. Если их поменять - у Вас будет уже другая схема, не описанная в этой статье
* *auth-port=1812, acct-port=1813*: биллигом не преусмотрено изменение этих параметров, все NAS сервера дожны обращаться к биллингу именно на эти порты для авторизации и аккаунтинга
* *Две строки server= в секции radius, отдельно для аккаунтинга и авторизации*: такую настройку разработчики Carbon Soft заложили в XGE, где так же используется Accel, как наиболее стабильнную. Лучше последовать их примеру для гарантии правильного взаимодействия биллинга и Accel.
* *level, verbose* - опции определяют детализацию журнала сервера. Лучше оставьте детализацию максимальной, это сэкономит время при отладке возникающих проблем в процессе эксплуатации
* *per-session* - сильно упростит

h3. Листинги конфигурационных файлов

h4. Конфигурационный файл Accel

{code:title=/etc/accel-ppp.conf}
[modules]
log_file
pppoe
ipoe
radius
pppd_compat
ippool
auth_mschap_v2
auth_mschap_v1
auth_chap_md5
auth_pap
shaper

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

[common]
single-session=replace
sid-source=urandom
check-ip=1

[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
per-user-dir=/var/log/accel-ppp/users
per-session=1
copy=1
level=5

[radius]
verbose=5
nas-identifier=accel-ppp
nas-ip-address=192.168.1.130
gw-ip-address=192.168.0.100
server=192.168.1.156,AccelSharedSecret,auth-port=1812,acct-port=0,req-limit=100,fail-timeout=0,max-fail=10,weight=1
server=192.168.1.156,AccelSharedSecret,auth-port=0,acct-port=1813,req-limit=100,fail-timeout=0,max-fail=10,weight=1
dae-server=192.168.1.130:3799,AccelCoASecret
sid-in-auth=1
max-try=1
timeout=3

[cli]
verbose=0
telnet=127.0.0.1:2000
tcp=127.0.0.1:2001

[ipoe]
verbose=1
ifcfg=1
shared=1
interface=enp0s8
mode=L2
start=up
calling-sid=mac
check-mac-change=1
soft-terminate=0
idle-timeout=45
password=AccelCommonPassword
attr-l4-redirect=L4-Redirect
l4-redirect-ipset=Block
unit-cache=10

[pppoe]
verbose=1
called-sid=mac
interface=enp0s8

[ppp]
verbose=1
min-mtu=1280
mtu=1400
mru=1400
ccp=1
mppe=prefer
ipv4=require
ipv6=deny
lcp-echo-interval=5
lcp-echo-failure=3
lcp-echo-timeout=45
unit-cache=1
unit-preallocate=1

[dns]
dns1=8.8.8.8
dns2=8.8.4.4

[ip-pool]
gw-ip-address=10.128.0.1

[pppd-compat]
verbose=1
ip-up=/etc/ppp/ip-up
ip-down=/etc/ppp/ip-down
radattr-prefix=/var/run/radattr

[shaper]
verbose=1
attr=Filter-Id
up-limiter=police
down-limiter=htb

[connlimit]
limit=10/min
burst=3
timeout=60
{code}

h4. Словарь атрибутов RADIUS
Нужно добавить одну строку в конец файла - атрибут для описания редиректа (блокировки абонента).
{code:title=/usr/share/accel-ppp/radius/dictionary}
...
ATTRIBUTE L4-Redirect 242 integer
{code}

h3. Billing

h4. Словарь атрибутов RADIUS

Нужно добавить одну строку ближе к концу файла. В принципе, можно и в самый конец, но разработчики FreeRADIUS предлогают добавить именно тут. Предлагаем последовать их совету.

{code:title=/app/asr_billing/cfg/usr/share/freeradius/dictionary}
...
#
# Miscellaneous attributes defined in weird places that
# don't really belong anywhere else...
#
ATTRIBUTE L4-Redirect 242 integer
...
{code}

h4. Скриншоты настроек NAS


!Accel Описание, основные настройки.png|border=0,width=800!


!Accel Дополнительно.png|border=0,width=800!


!Accel RADIUS-атрибуты.png|border=0,width=800!

h4. Скриншот учётной записи абонента (как PPPoE, так и IPoE)

!Accel Учетная запись абонента.png|border=0,width=1000!