Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
abills:docs:nas:linux:accel_ipoe:ru [2015/12/16 13:54] kodr [**accel-ppp.conf**] |
abills:docs:nas:linux:accel_ipoe:ru [2018/09/27 12:54] (текущий) asmodeus [Ручная настройка] |
||
---|---|---|---|
Строка 11: | Строка 11: | ||
* Выдача адресов через RADIUS | * Выдача адресов через RADIUS | ||
* QinQ | * QinQ | ||
+ | |||
+ | В работе: | ||
+ | |||
+ | {{:abills:docs:nas:linux:accel_ipoe:accel_work.png|}} | ||
+ | |||
+ | |||
+ | ^Сервер: | 2*Intel(R) Xeon(R) CPU X5650 @ 2.67GHz / 8G / SSD Samsung 850 Pro 128 Gb | | ||
+ | ^Сетевая: | 2*Intel(R) 10 Gigabit Network Connection 82599 | | ||
+ | ^ОС: | Ubuntu 16.04 | | ||
====Создаем vlan интерфейсы==== | ====Создаем vlan интерфейсы==== | ||
Строка 48: | Строка 57: | ||
Скрипт автозапуска | Скрипт автозапуска | ||
- | nano /ettc/init.d/accel-ppp | + | nano /etc/init.d/accel-ppp |
вставляем | вставляем | ||
Строка 203: | Строка 212: | ||
dictionary=/usr/local/share/accel-ppp/radius/dictionary | dictionary=/usr/local/share/accel-ppp/radius/dictionary | ||
#nas-identifier=accel-ipoe | #nas-identifier=accel-ipoe | ||
+ | # IP адрес каким радиус будет видеть accel | ||
nas-ip-address=192.168.1.1 | nas-ip-address=192.168.1.1 | ||
+ | # IP адрес радиуса | ||
server=127.0.0.1,radsecret,auth-port=1812,acct-port=1813,req-limit=50,fail-timeout=0,max-fail=10,weight=1 | server=127.0.0.1,radsecret,auth-port=1812,acct-port=1813,req-limit=50,fail-timeout=0,max-fail=10,weight=1 | ||
+ | # Тот же адрес что и у nas-ip-address | ||
dae-server=192.168.1.1:3799,radsecret | dae-server=192.168.1.1:3799,radsecret | ||
verbose=100 | verbose=100 | ||
Строка 329: | Строка 341: | ||
timeout=60 | timeout=60 | ||
+ | |||
+ | Добавить пары в словарь radius | ||
+ | |||
+ | **raddb/dictionary** | ||
+ | |||
+ | <code> | ||
+ | ATTRIBUTE DHCP-Router-IP-Address 241 ipaddr | ||
+ | ATTRIBUTE DHCP-Mask 242 integer | ||
+ | ATTRIBUTE L4-Redirect 243 integer | ||
+ | ATTRIBUTE L4-Redirect-ipset 244 string | ||
+ | ATTRIBUTE DHCP-Option82 245 octets | ||
+ | # Limit session traffic | ||
+ | ATTRIBUTE Session-Octets-Limit 227 integer | ||
+ | # What to assume as limit - 0 in+out, 1 in, 2 out, 3 max(in,out) | ||
+ | ATTRIBUTE Octets-Direction 228 integer | ||
+ | # Connection Speed Limit | ||
+ | ATTRIBUTE PPPD-Upstream-Speed-Limit 230 integer | ||
+ | ATTRIBUTE PPPD-Downstream-Speed-Limit 231 integer | ||
+ | ATTRIBUTE PPPD-Upstream-Speed-Limit-1 232 integer | ||
+ | ATTRIBUTE PPPD-Downstream-Speed-Limit-1 233 integer | ||
+ | ATTRIBUTE PPPD-Upstream-Speed-Limit-2 234 integer | ||
+ | ATTRIBUTE PPPD-Downstream-Speed-Limit-2 235 integer | ||
+ | ATTRIBUTE PPPD-Upstream-Speed-Limit-3 236 integer | ||
+ | ATTRIBUTE PPPD-Downstream-Speed-Limit-3 237 integer | ||
+ | ATTRIBUTE Acct-Interim-Interval 85 integer | ||
+ | ATTRIBUTE Acct-Input-Gigawords 52 integer | ||
+ | ATTRIBUTE Acct-Output-Gigawords 53 integer | ||
+ | </code> | ||
====Быстрая настройка==== | ====Быстрая настройка==== | ||
Строка 339: | Строка 379: | ||
gw-ip-address=10.0.0.1/24 | gw-ip-address=10.0.0.1/24 | ||
- | ====**config.pl**==== | + | |
- | ^$conf{ACCEL_IPOE_GUEST_POOL}='1:2'; | Для того чтоб подключались неизвестные клиенты, \\ нужно каждому насу (accel-ipoe) указать свой пул.\\ В разделе "/ Настройка/ Сервер доступа/ IP POOLs/" создаем pool \\ и прописываем в config.pl \\ $conf{ACCEL_IPOE_GUEST_POOL}="NAS_ID:POOL_ID;NAS_ID:POOL_ID"| | + | |
- | ^$conf{ACCEL_IPOE_DEBUG}=5 | Debug для вывода данных парсинга опции 82 в /tmp/dhcphosts_accel_expr| | + | |
====Настройка ABillS==== | ====Настройка ABillS==== | ||
Строка 356: | Строка 394: | ||
Если совместно используются на одном физическом сервере accel ipoe и pppoe или pptp тогда для каждого сервиса нужно завести отдельный NAS в биллинге, а в поле **Nas-Identifier** настроек сервера доступа указать тип сервиса (ipoe, pppoe или pptp) ив поле **Тип** выбрать для IPOE - accel_ipoe, а для pppoe и pptp - accel_ppp | Если совместно используются на одном физическом сервере accel ipoe и pppoe или pptp тогда для каждого сервиса нужно завести отдельный NAS в биллинге, а в поле **Nas-Identifier** настроек сервера доступа указать тип сервиса (ipoe, pppoe или pptp) ив поле **Тип** выбрать для IPOE - accel_ipoe, а для pppoe и pptp - accel_ppp | ||
+ | ====config.pl==== | ||
+ | **Дополнительные опции** | ||
+ | ^$conf{NAS_PORT_AUTH}=1; | Авторизоваться абонента с учётом его порта подключения (SWITCH,PORT). Мак адрес не учитывается. Система следит что бы на порту было не больше 1 автоматизированного абонента. | | ||
+ | ^$conf{DHCPHOSTS_SWITCH_MAC_AUTH}='1,2,...'; | Список коммутаторов в которых принудительно авторизировать по мак адресу при включённой опции $conf{DHCPHOSTS_PORT_BASE} | | ||
+ | ^$conf{AUTH_EXPR_DEBUG}=1; | Режимы отладки \\ 1 - Режим сессий (файл: /tmp/rad_dhcp) \\ 2 - Режим ответов авторизации. (Файл: /tmp/rad_reply) \\ 3 - Режим выражений для проверки параметров Option 82 (Файл /tmp/dhcphosts_expr) | | ||
+ | ^$conf{AUTH_EXPR}='-'; | Так как производители оборудования (коммутаторов) не всегда придерживаются стандартов при формирование запросов DHCP Option 82 в системе была создана возможность задать регулярное выражение для получения нужных параметров из DHCP запроса . Использовать дополнительные выражения для получения корректных данных с запросов от коммутаторов в которых параметры опции 82 отличаются от стандартных. \\ формат выражения через точку с запятой: \\ ** радиус_пара:условия:переменные:hex2ansii;условия переменные.... ** \\ \\ **радиус_пара** - радиус пара запроса \\ **условия** - условия поиска Perl выражение \\ **переменные** - переменные результата VLAN PORT MAC MAC_DEC (если мак не нужно преобразовывать в шестнадцатеричный из десятеричного) PORT_DEC (если не нужно преобразовывать порт из десятеричного в шестнадцатеричный формата) \\ **hex2ansii** - если указан єтот параметр система перед вычислением нужных переменных преобразует строку с шестнадцатеричного формата в текстовый \\ \\ \\ система м получении параметра проверяет нужно ли использовать внешние выражения если да начинает проходится по списку при попадании в параметры перебор прекращается и система подставляет выбранные VLAN PORT MAC MAC_DEC (если мак не нужно приобразовывать в десятичный форма из шестнадцатиричного) PORT_DEC (если не нужно приобразовывать порт из десятеричного шестнадцатиричного формата) в DHCP-Agent-Circuit-Id и DHCP-Agent-Remote-Id дальше уже идут стандартные процедуры работы с DHCP. При включении выражений система отключает шаблон по умолчанию для распознавания коммутаторов. [[abills:docs:modules:dhcphosts_expr:ru|Примеры выражений]] | | ||
+ | ^$conf{AUTH_PARAMS}=1; |Авторизация по совокупности заполненных параметров MAC,PORT,VLAN,NAS_ID \\ **При использовании данной опции отключите $conf{DHCPHOSTS_PORT_BASE} ** | | ||
+ | **После внесения каких либо изменений по модулю в конфигурационный файл перезагружайте RADIUS** | ||
====Ошибки==== | ====Ошибки==== | ||