====== Настройка Ericsson SmartEdge 100 как BRAS ====== ===== Подключение Сервера NAS со стороны АСР Mikbill ===== 1. Настройки -> Сервера NAS -> добавите NAS: \\ {{:billing:nas_access_server:ericsson_nas.png?direct& |}} ===== Корректировка радиуса ===== Измените /etc/raddb/sites-enabled/mikbill на: \\ authorize { # auth_log preprocess suffix perl mschap } authenticate { Auth-Type Perl { perl } Auth-Type CHAP { perl } Auth-Type MS-CHAP { perl } } preacct { preprocess acct_unique suffix } accounting { perl # detail } session { sql } post-auth { # reply_log } ===== Логика работы АСР Микбилл и роутера Ericsson SmartEdge 100. ===== При работе с абонентом в панели администратора, а именно админская блокировка и раз блокировка, смена тарифного плана, пополнение счета после отключения услуги интернет приводит к сбросу клиентской сессии PPPoE на Ericsson SE100. При повторной авторизации по протоколу radius передаются в новь установленные параметры. ==== Положительный/Отрицательный баланс. ==== Положительный баланс приводит к сбросу клиентской сессии PPPoE и удаления правила блокировки "FWPOL-NEGBAL-REDIRECT". Отрицательный баланс так же приводит к сбросу клиентской сессии PPPoE и добавления правила блокировки "FWPOL-NEGBAL-REDIRECT". Правило "FWPOL-NEGBAL-REDIRECT" на Ericsson SE100 говорит о том что все запросы редиректить на страницу заглушки. ==== Блокировка/Разблокировка абонентов. ==== Блокировка или раз блокировка абонентов администратором приводит к сбросу клиентской сессии PPPoE. Так же как и пополнение счета и нехватка денежных средств ведет к передачи правила "FWPOL-NEGBAL-REDIRECT" ==== Смена тарифного плана. ==== Смена тарифного плана происходит в начале расчетного периода (1 числа каждого месяца). Переход так же ведет к сбросу клиентской сессии PPPoE и добавлением новых правил шейпера. ==== Шейпер. ==== {{:billing:nas_access_server:ericsson_sys_opt.png?direct&|}} Один очень важный момент, при передачи скорости по Radius на Ericsson SE100, необходимо правильно высчитать Burst limit и Burst Threshold. Burst limit = S*1000/8 (S - Скорость в kb/sec). Burst Threshold = Burst limit*1.5 Добавить NAS в тарифе \\ {{:billing:nas_access_server:ericsson_tarif_add.jpg?direct|}} ===== Конфигурация Ericsson SE100. ===== Самый не мало важный момент. Понятие интерфейс и порт в Ericsson SE100 это разные вещи. # В наше случае мы используем несколько контекстов (виртуальных роутеров). Сделано это для того, чтоб разнести используемые нами сервисы. service multiple-contexts ! # Включаем возможность настройки маршрутизацию между контекстами. service inter-context routing ! media-gateway ! # Включаем отправку Netflow. flow ip profile FLOW_PROF active-timeout 1000 inactive-timeout 10 aggregation-cache-size 8192 ! context local ! no ip domain-lookup ! interface mgt ! # Для использования публичных адресов в сети без авторизации, поднимаем интерфейс. # Этот интерефейс можно поднять в любом Контексте, не забываем прописать роут для него. interface service_ip_vlan12 ip address 209.258.246.1/27 logging console ! enable encrypted 1 ytghjcnjq34 enable authentication local ! administrator naker encrypted 1 $1$gjUgFXu0$nU1b/ba8pKApV1ewDkaqe/ privilege start 15 privilege max 15 ! ip route 0.0.0.0/0 context bgp ! context bgp # В этом контексете прописываем все что касается BGP. # Номера автономок, анонсируемые сети, роуты и т.д. ! no ip domain-lookup ! # Основной канал мы назвали UPLINK. (фантазии нет предела) interface UPLINK ip address 90.78.168.2/30 ip access-group antiddos_dns in - блокируем DDOS наших DNS-серверов с основного канала ! interface UPLINK_2 ip address 47.238.80.14/30 ip access-group antiddos_dns in - блокируем DDOS наших DNS-серверов с резервного канала ! interface UPLINK_3 ip address 47.238.80.18/30 ip access-group antiddos_dns in - блокируем DDOS наших DNS-серверов с резервного канала no logging console ! ip access-list antiddos_dns seq 10 permit udp any host 72.150.255.4 eq domain seq 20 permit udp any host 209.258.246.4 eq domain seq 1000 deny udp any any eq domain seq 2000 permit ip any any ! ip prefix-list all seq 10 permit any ! ip prefix-list ourAS seq 10 permit 209.258.246.0/24 seq 100 deny any ! route-map mtw-in permit 10 match ip address prefix-list all set local-preference 50 ! route-map mtw-out permit 10 set community 65000:9993 route-map mtw-out permit 20 match ip address prefix-list all ! # Настройка BGP. router bgp 312242 router-id 90.78.168.2 multi-paths external 2 fast-reset 10000 milliseconds address-family ipv4 unicast flap-statistics network 209.258.246.0/24 ! neighbor 47.238.80.13 external remote-as 48347 send community send ext-community address-family ipv4 unicast route-map mtw-in in route-map mtw-out out ! neighbor 47.238.80.17 external remote-as 48347 send community send ext-community address-family ipv4 unicast route-map mtw-in in route-map mtw-out out ! neighbor 80.77.167.1 external remote-as 28917 address-family ipv4 unicast prefix-list all in prefix-list ourAS out ! ip route 209.258.246.0/27 context local ip route 209.258.246.64/26 context pppoe ip route 209.258.246.128/25 context pppoe ip route 209.258.246.0/24 null0 no service tftp service telnet server ! context pppoe # Настраиваем CG-NAT, Policy, Radius. domain pppoe_domain advertise ! no ip domain-lookup ! # Включаем NAT и указываем пул адресов которыми будет натиться серая сеть. ip nat pool NAT_POOL_209.258.246.128 napt paired-mode paired-mode subscriber over-subscription 32 port-limit 2000 address 209.258.246.128 to 209.258.246.254 exclude well-known ! nat policy POL_NAT_209.258.246.128 radius-guided enhanced connections tcp maximum 2000 connections udp maximum 2000 connections icmp maximum 20 ! Default class ignore inbound-refresh udp icmp-notification ! Named classes access-group ACL-NAT class ABON-GRAY pool NAT_POOL_209.258.246.128 pppoe timeout tcp 1800 timeout udp 60 timeout fin-reset 60 timeout icmp 30 timeout syn 60 timeout basic 300 timeout abandoned 1800 admission-control tcp admission-control udp admission-control icmp endpoint-independent filtering tcp endpoint-independent filtering udp inbound-refresh udp icmp-notification class DO-NOT-NAT ignore inbound-refresh udp icmp-notification ! interface fake loopback ip address 10.0.31.254/19 ! interface if_collector ip address 10.255.255.9/29 ip source-address flow-ip ! interface if_ipoe description connect_to_billing ip address 10.255.255.1/29 ! interface pppoe_domain multibind lastresort ip unnumbered fake ip arp proxy-arp ! # Отдельно вынесли сеть управления коммутаторами в сети. interface service_ip_vlan11 ip address 192.168.20.1/24 ! # Настроили логирование. interface service_ip_vlan22 ip address 10.255.255.17/29 logging filter syslog informational logging console logging syslog 192.168.20.254 facility local5 ! # SE100 не умеет Nat-ить PPTP. Поэтому навешиваем отдельную политику для протокола PPTP. policy access-list ACL-NAT seq 100 permit tcp 10.0.0.0 0.255.255.255 any eq 1723 class DO-NOT-NAT seq 110 permit gre 10.0.0.0 0.255.255.255 any class DO-NOT-NAT seq 120 permit ip 10.0.0.0 0.255.255.255 10.0.0.0 0.255.255.255 class DO-NOT-NAT seq 200 permit tcp 192.168.0.0 0.0.255.255 any eq 1723 class DO-NOT-NAT seq 210 permit gre 192.168.0.0 0.0.255.255 any class DO-NOT-NAT seq 300 permit tcp 172.16.0.0 0.15.255.255 any eq 1723 class DO-NOT-NAT seq 310 permit gre 172.16.0.0 0.15.255.255 any class DO-NOT-NAT seq 1000 permit ip 10.0.0.0 0.255.255.255 class ABON-GRAY seq 2000 permit ip 192.168.0.0 0.0.255.255 class ABON-GRAY seq 3000 permit ip 172.16.0.0 0.15.255.255 class ABON-GRAY ! ppp keepalive check-interval seconds 15 response-timeout 5 retries 5 ! # Настройка редиректа для заблокированных абонентов администратором сети. http-redirect profile URL-BLOCKED url "http://209.258.246.8:8080/blocked.html" ! # Настройка редиректа для абонентов отключенных за не уплату. http-redirect profile URL-NEGBAL url "http://209.258.246.8:8080/negbal.html" ! # Настройка radius сервера aaa authentication administrator local aaa authentication administrator maximum sessions 1 aaa authentication subscriber radius aaa accounting subscriber radius aaa accounting suppress-acct-on-fail radius accounting server 10.255.255.2 encrypted-key F9BFC75FC9F3F8AD radius coa server 10.255.255.2 encrypted-key F9BFC75FC9F3F8AD port 3799 ! radius server 10.255.255.2 encrypted-key F9BFC75FC9F3F8AD radius max-retries 5 radius timeout 60 radius attribute calling-station-id format description radius attribute acct-session-id access-request radius attribute vendor-specific Redback mac-address separator : radius attribute acct-status-type RFC ! subscriber default qos policy policing DEFAULT-IN qos policy metering DEFAULT-OUT nat policy-name POL_NAT_209.258.246.128 dns primary 72.150.255.4 dns secondary 209.258.246.4 forward policy GRE-PBR in flow apply ip profile FLOW_PROF both ! radius service profile service_inet parameter value Rate-Inet-in 1234 parameter value Burst-Inet-in 125000 parameter value ExBurst-Inet-in 250000 parameter value Rate-Inet-out 1234 parameter value Burst-Inet-out 125000 parameter value ExBurst-Inet-out 250000 seq 10 attribute Dynamic-Policy-Filter "ip in forward class CLS-INET qos" seq 20 attribute Dynamic-Policy-Filter "ip out forward class CLS-INET qos" seq 50 attribute Dynamic-Qos-Parameter "meter-class-rate CLS-INET rate-absolute $Rate-Inet-in" seq 60 attribute Dynamic-Qos-Parameter "meter-class-burst CLS-INET $Burst-Inet-in" seq 70 attribute Dynamic-Qos-Parameter "meter-class-excess-burst CLS-INET $ExBurst-Inet-in" seq 80 attribute Dynamic-Qos-Parameter "police-class-rate CLS-INET rate-absolute $Rate-Inet-out" seq 90 attribute Dynamic-Qos-Parameter "police-class-burst CLS-INET $Burst-Inet-out" seq 100 attribute Dynamic-Qos-Parameter "police-class-excess-burst CLS-INET $ExBurst-Inet-out" seq 170 attribute Service-Interim-Accounting 900 ! ip route 0.0.0.0/0 context bgp ! # Отправляем NetFlow в коллектор. flow collector COLLECTOR ip-address 10.255.255.10 port 9997 export-version v5 ip profile FLOW_PROF ! context abonacl # Настройка всех Policy передающихся для клиента по протоколу Radius ! no ip domain-lookup no logging console ! policy access-list ACL-BLOCKED seq 10 permit udp any any eq domain class CLS-TRUSTED seq 20 permit ip any 91.232.230.0 0.0.1.255 class CLS-TRUSTED seq 30 permit ip any 72.150.255.0 0.0.0.15 class CLS-TRUSTED seq 40 permit ip any 209.258.246.0 0.0.0.31 class CLS-TRUSTED seq 50 permit ip any host 81.177.139.55 class CLS-TRUSTED seq 60 permit ip any host 54.76.91.175 class CLS-TRUSTED seq 70 permit ip any host 54.229.220.164 class CLS-TRUSTED seq 80 permit ip any host 54.246.235.248 class CLS-TRUSTED seq 90 permit ip any host 108.161.189.62 class CLS-TRUSTED seq 100 permit ip any host 173.194.71.95 class CLS-TRUSTED seq 110 permit ip any host 74.125.205.95 class CLS-TRUSTED seq 1000 permit tcp any any eq www class CLS-BLOCKED-REDIRECT seq 1010 permit ip any any class CLS-DROP ! policy access-list ACL-NEGBAL seq 10 permit udp any any eq domain class CLS-TRUSTED seq 20 permit ip any 91.232.230.0 0.0.1.255 class CLS-TRUSTED seq 30 permit ip any 72.150.255.0 0.0.0.15 class CLS-TRUSTED seq 40 permit ip any 209.258.246.0 0.0.0.31 class CLS-TRUSTED seq 50 permit ip any host 81.177.139.55 class CLS-TRUSTED seq 1000 permit tcp any any eq www class CLS-NEGBAL-REDIRECT seq 1010 permit ip any any class CLS-DROP ! policy access-list ACL-QOS-IN seq 10 permit ip any 10.0.0.0 0.255.255.255 class CLS-LOCAL seq 20 permit ip any 192.168.0.0 0.0.255.255 class CLS-LOCAL seq 30 permit ip any 172.16.0.0 0.15.255.255 class CLS-LOCAL seq 40 permit ip any 209.258.246.64 0.0.0.63 class CLS-LOCAL seq 1000 permit ip any any class CLS-INET ! policy access-list ACL-QOS-OUT seq 10 permit ip 10.0.0.0 0.255.255.255 any class CLS-LOCAL seq 20 permit ip 192.168.0.0 0.0.255.255 any class CLS-LOCAL seq 30 permit ip 172.16.0.0 0.15.255.255 any class CLS-LOCAL seq 40 permit ip 209.258.246.64 0.0.0.63 any class CLS-LOCAL seq 1000 permit ip any any class CLS-INET ! policy access-list FWD-GRE seq 10 permit gre 10.0.0.0 0.255.255.255 any class CLS-GRE seq 20 permit tcp 10.0.0.0 0.255.255.255 any eq 1723 class CLS-1723 seq 100 permit gre 192.168.0.0 0.0.255.255 any class CLS-GRE seq 110 permit tcp 192.168.0.0 0.0.255.255 any eq 1723 class CLS-1723 seq 200 permit gre 172.16.0.0 0.15.255.255 any class CLS-GRE seq 210 permit tcp 172.16.0.0 0.15.255.255 any eq 1723 class CLS-1723 seq 1000 permit ip any any class CLS-IP ! ! ** End Context ** logging tdm console logging active logging standby short ! !load balancing hash key config ! service load-balance ip layer-3 ! !Unrecognized link-group bridging hash key ! qos policy DEFAULT-IN policing radius-guided ip access-group ACL-QOS-IN abonacl class CLS-INET rate 512 burst 64000 excess-burst 128000 rate-calculation exclude layer-2-overhead ! qos policy DEFAULT-OUT metering radius-guided ip access-group ACL-QOS-OUT abonacl class CLS-INET rate 512 burst 64000 excess-burst 128000 rate-calculation exclude layer-2-overhead ! forward policy FWPOL-BLOCKED-REDIRECT radius-guided ip access-group ACL-BLOCKED abonacl class CLS-TRUSTED class CLS-BLOCKED-REDIRECT redirect destination local class CLS-DROP drop ! forward policy FWPOL-NEGBAL-REDIRECT radius-guided ip access-group ACL-NEGBAL abonacl class CLS-TRUSTED class CLS-NEGBAL-REDIRECT redirect destination local class CLS-DROP drop ! # Отправляем протокол PPTP на ройутер на котором настроен NAT для протокола GRE. forward policy GRE-PBR ip access-group FWD-GRE abonacl class CLS-GRE redirect destination ip next-hop 10.255.255.18 class CLS-1723 redirect destination ip next-hop 10.255.255.18 class CLS-IP ! # Настройка LACP. link-group ford dot1q maximum-links 3 lacp active lacp periodic-timeout long dot1q pvc 531 bind interface UPLINK_2 bgp dot1q pvc 532 bind interface UPLINK_3 bgp dot1q pvc 916 bind interface UPLINK bgp ! # Для тех кто собирает статистику по SNMP протоколу. snmp server traps ifmib encaps snmp view mgt internet included snmp view Inet-View internet included snmp view reset_session rbnSubsClear included snmp community Public view Inet-View ! system clock timezone MASK 3 0 system clock timezone RU 3 0 local ! http-redirect server port 80 ! port ethernet 1/1 ! XCRP management port on slot 1 no shutdown bind interface mgt local ! card carrier 2 mic 1 ge-2-port mic 2 ge-2-port ! # Включаем нужные нам порты и навешиваем на них созданные выше интерфейсы. port ethernet 2/1 no shutdown medium-type copper encapsulation dot1q link-group ford ! port ethernet 2/2 no shutdown medium-type copper encapsulation dot1q link-group ford ! port ethernet 2/3 no shutdown encapsulation dot1q dot1q pvc on-demand 1006 through 1500 encapsulation pppoe bind authentication pap chap context pppoe maximum 8000 dot1q pvc 11 bind interface service_ip_vlan11 pppoe dot1q pvc 12 bind interface service_ip_vlan12 local dot1q pvc 21 bind interface if_collector pppoe dot1q pvc 22 bind interface service_ip_vlan22 pppoe ! port ethernet 2/4 no shutdown encapsulation dot1q dot1q pvc on-demand 1006 through 1500 encapsulation pppoe bind authentication pap chap context pppoe maximum 8000 ! port ethernet 2/15 no shutdown bind interface if_ipoe pppoe ! port ethernet 2/16 no shutdown ! system hostname mikbill ! no timeout session idle timeout login response 15 ! pppoe services marked-domains pppoe service-name accept-all ! end