Jump to content

Recommended Posts

Posted

Добрый день. Имеется такая железка Model: mx204 Junos: 22.2R3.15. Пока сверх задач от нее не требуется нужно авторизовать около 5к клиентов PPPoE (адреса будет выдавать radius).

К порту xe-0/1/0 подключен свитч с диапазоном trunk vlan 3500-3550. В каждом влане есть какое то кол-во клиентов. Пробовал настраивать разными вариантами, но всегда попадается какой-то затык.

При таком раскладе авторизация проходит, но только одним логином, второй уже не может подключиться (не взирая на max-sessions).

xe-0/1/2 {
    vlan-tagging;
    encapsulation flexible-ethernet-services;
    unit 3500 {
        vlan-id 3500;
        family pppoe {
            max-sessions 1000;
        }
    }
}

pp0 {
        unit 3500{
            ppp-options {
                chap;
                pap;
            }
            pppoe-options {
                underlying-interface xe-0/1/2.3500;
                server;
            }
            keepalives interval 10;
            family inet {
                unnumbered-address lo0.0;
            }
        }
    }

 

При таком раскладе авторизации не проходят и в логах ругается (dyn_prof_send_request: Rejecting profile (PPPOE-CLIENT-PROFILE - use_flow: 0) ADD from daemon pppoed because enhanced-universal-edge is disabled).

show chassis network-services    
Network Services Mode: Enhanced-IP

Как я понял для использования динамических профилей нужна какая-то лицензия или может я их не так применяю?

xe-0/1/0 {
    flexible-vlan-tagging;

    encapsulation flexible-ethernet-services;
    unit 0{
        family pppoe {
            dynamic-profile PPPOE-CLIENT-PROFILE;
        }
    }

 

PPPOE-CLIENT-PROFILE {
    interfaces {
        pp0 {
            unit "$junos-interface-unit" {
                ppp-options {
                    chap;
                    pap;
                }
                pppoe-options {
                    underlying-interface "$junos-underlying-interface";
                    server;
                }
                family inet {
                    unnumbered-address lo0.0;
                }
            }
        }
    }
}

 

License usage: 
                                 Licenses     Licenses    Licenses
                                  Feature      Feature     Feature
  Feature name                       used    installed      needed  Expiry 
  subscriber-accounting                 1            1           0    permanent
  subscriber-authentication             1            1           0    permanent
  subscriber-address-assignment         0            1           0    permanent
  subscriber-vlan                       0            1           0    permanent
  subscriber-ip                         0            1           0    permanent
  service-dc                            0            1           0    permanent
  service-accounting                    0            1           0    permanent
  service-qos                           0            1           0    permanent
  service-ancp                          0            1           0    permanent
  service-cbsp                          0            1           0    permanent
  scale-subscriber                      0        64010           0    permanent
  scale-l2tp                            0         1000           0    permanent
  bgp                                   1            0           1    invalid
  l3static                              1            0           1    invalid

Licenses installed: 
  License identifier: E000185416
  License version: 2
  Order Type: commercial
  Features:
    subscriber-accounting - Per Subscriber Radius Accounting
      permanent
    subscriber-authentication - Per Subscriber Radius Authentication
      permanent
    subscriber-address-assignment - Radius/SRC Address Pool Assignment
      permanent
    subscriber-vlan  - Dynamic Auto-sensed Vlan
      permanent
    subscriber-ip    - Dynamic and Static IP
      permanent

  License identifier: E001171420
  License version: 2
  Order Type: commercial
  Features:
    service-dc       - Service Definition Capability
      permanent
    service-accounting - Per Service Accounting
      permanent
    service-qos      - Dynamic QOS Policy
      permanent
    service-ancp     - ANCP Based QOS Adjustment
      permanent
    service-cbsp     - Cell Based Shaping and Policing
      permanent

  License identifier: E000662843
  License version: 2
  Order Type: commercial
  Features:
    scale-subscriber - Dynamic/Static Subscriber Base Feature
      capacity: 64000
      permanent

 

Пробовал еще через auto-configure, но тоже не особо помогло.

 

Может кто поделится конфигом, или ткните носом где ошибаюсь.

 

Прошу сильно не пинать с jun не было опыта работы. Спасибо за любую помощь/совет. 

  • 2 weeks later...
Posted

С авторизациями все получилось. auto-configure отрабатывает отлично. Все работает, при установки pppoe создается динамический  интерфейс с нужным vlan-id и создается динамический pp интерфейс и интернет появляется.

Настало время применять фильты на доступ (к примеру для заблокированных клиентов), что бы ограничить все кроме личного кабинета и передавать параметры ограничения скорости с радиус сервера и тут появилась новая проблема.

Вот так выглядит текущий конфиг

run show configuration interfaces xe-0/1/0  
flexible-vlan-tagging;
auto-configure {
    vlan-ranges {
        dynamic-profile DYNAMIC-PPPOE-VLAN {
            accept pppoe;
            ranges {
                3500-3510;
            }
        }
    }
    remove-when-no-subscribers;
}
encapsulation flexible-ethernet-services;

 

DYNAMIC-PPPOE-PROFILE {
    interfaces {
        pp0 {
            unit "$junos-interface-unit" {
                ppp-options {
                    chap;
                    pap;
                    mru 1492;
                    mtu 1492;
                }
                pppoe-options {
                    underlying-interface "$junos-underlying-interface";
                    server;
                }
                family inet {
                    rpf-check;
                    mtu 1492;
                    unnumbered-address lo0.0;
                }
            }
        }
    }
}
DYNAMIC-PPPOE-VLAN {
    interfaces {
        "$junos-interface-ifd-name" {
            unit "$junos-interface-unit" {
                vlan-id "$junos-vlan-id";
                family pppoe {
                    duplicate-protection;
                    dynamic-profile DYNAMIC-PPPOE-PROFILE;
                    max-sessions 16000;
                }
            }
        }
    }
}

 

profile PPPOE-AUTH {
    authentication-order radius;
    domain-name-server {
        77.88.8.8;
        8.8.8.8;
    }
    radius {
        authentication-server 192.168.19.125;
        accounting-server 192.168.19.125;
        options {
            juniper-access-line-attributes;
            coa-dynamic-variable-validation;
        }
    }
    session-options {
        client-idle-timeout 60;
        client-session-timeout 1440;
    }
    radius-server {
        192.168.19.125 {
            port 1812;
            accounting-port 1813;
            dynamic-request-port 3799;
            secret "$9$eHKW87-dsgaUSrb2oGq."; ## SECRET-DATA
            timeout 5;
            retry 3;
            source-address 192.168.19.55;
        }
    }
    accounting {
        order radius;
        immediate-update;
        coa-immediate-update;
        update-interval 10;
        statistics volume-time;
        send-acct-status-on-config-change;
    }
    service {
        accounting-order radius;
    }
}

 

Если на DYNAMIC-PPPOE-PROFILE применять любые фильтры, то pppoe сессия перестает подниматься с ошибкой  - LCP пакеты не могут быть обработаны.

Конфигурация фильтра не влияет (пробовал разрешать все что связано с ppp) видимо из-за того что LCP пакеты не являются IP пакетами и не проходят через family inet filter

 

Как привольно передать с радиуса атрибуты со значением скоростей in/out или название фильтра.

Атрибут Filter-Id при авторзации появляется на сессии, но не работает (видимо потому, что не как не привязан к динамическому интерфейсу).

Dynamic configuration: 
  junos-input-filter: BLOCKED

 

 

Posted
stacked-vlan-ranges {
    dynamic-profile QINQ-PROFILE {
        accept pppoe;
        ranges {
            400-415,any;
            996-998,any;
        }
    }
}
vlan-ranges {
    dynamic-profile VLAN-PROFILE {
        accept pppoe;
        ranges {
            445-483;
            1200-1219;
        }
    }
}

# QINQ-PROFILE

interfaces {
    demux0 {
        no-traps;
        unit "$junos-interface-unit" {
            vlan-tags outer "$junos-stacked-vlan-id" inner "$junos-vlan-id";
            demux-options {
                underlying-interface "$junos-interface-ifd-name";
            }
            family pppoe {
                access-concentrator bng-3;
                duplicate-protection;
                dynamic-profile PPPoE_profile;
                service-name-table DEFAULT;
                short-cycle-protection;
            }
        }
    }
}

# VLAN-PROFILE

interfaces {
    demux0 {
        no-traps;
        unit "$junos-interface-unit" {
            proxy-arp;
            vlan-id "$junos-vlan-id";
            demux-options {
                underlying-interface "$junos-interface-ifd-name";
            }
            family pppoe {
                access-concentrator bng-3;
                duplicate-protection;
                dynamic-profile PPPoE_profile;
                service-name-table DEFAULT;
                short-cycle-protection;
            }
        }
    }
}

#PPPoE_profile

routing-instances {
    "$junos-routing-instance" {
        interface "$junos-interface-name";
    }
}
interfaces {
    "$junos-interface-ifd-name" {
        unit "$junos-interface-unit" {
            no-traps;
            ppp-options {
                chap;
                pap;
                mtu 1492;
                ipcp-suggest-dns-option;
            }
            pppoe-options {
                underlying-interface "$junos-underlying-interface";
                server;
            }
            keepalives interval 20;
            family inet {
                rpf-check;
                unnumbered-address "$junos-loopback-interface";
            }
        }
    }
}

# sp_Inet

variables {
    SPEED_IN default-value 1m;
    SPEED_OUT default-value 1m;
    INET_IN uid;
    INET_OUT uid;
    POLICER_IN uid;
    POLICER_OUT uid;
}
interfaces {
    demux0 {
        no-traps;
        unit "$junos-interface-unit" {
            family inet {
                filter {
                    input "$INET_IN" precedence 75;
                    output "$INET_OUT" precedence 75;
                }
            }
        }
    }
}
firewall {
    family inet {
        filter "$INET_IN" {
            interface-specific;
            term block_spoof {
                from {
                    source-prefix-list {
                        client-nets except;
                    }
                }
                then {
                    count spoof_in;
                    discard;
                }
            }
            term speed_in {
                then {
                    policer "$POLICER_IN";
                    service-accounting;
                    service-filter-hit;
                    accept;
                }
            }
        }
        filter "$INET_OUT" {
            interface-specific;
            term speed_out {
                then {
                    policer "$POLICER_OUT";
                    service-accounting;
                    service-filter-hit;
                    accept;
                }
            }
        }
    }
    policer "$POLICER_IN" {
        filter-specific;
        if-exceeding {
            bandwidth-limit "$SPEED_IN";
            burst-size-limit 1m;
        }
        then discard;
    }
    policer "$POLICER_OUT" {
        filter-specific;
        if-exceeding {
            bandwidth-limit "$SPEED_OUT";
            burst-size-limit 1m;
        }
        then discard;
    }
}

Вот вам пример.

Radius отдает имя vrf(LS:RI, нужен если сессию необходимо поместить не в GRT), имя профиля - sp_Inet(x,y) , где x,y - скорости в мегабитах и имя loopback интерфейса(нужен если сессию необходимо поместить не в GRT). Наименование соответствующих атрибутов, я думаю, без труда найдете на сайте Juniper. Они неплохо описаны. Все атрибуты vendor specific.

Posted

За пример большое спасибо!

почти со всем уже разобрался - но вот с передачей значения скорости не получается.

Нашел атрибут для передачи параметров ERX-Service-Activate:1 = "sp_Inet(45m,44m)", но он не применяется 

в ответ на coa прилетает 

Error-Cause = Missing-Attribute
Juniper-Attr-178 = 0x31323220457865637574696f6e206661696c757265

а в логах джуна 

Dynamic request processing status <Error:authd class=1, code=3>, reason(122 Execution failure)

Как будто он не понимает передаваемый ему атрибут.

 

Но если передать атрибут без значения скоростей ERX-Service-Activate:1 = "sp_Inet" - то все отрабатывает нормально и профиль применяется к сессии.

 

Posted

https://www.juniper.net/documentation/us/en/software/junos/subscriber-mgmt-sessions/topics/topic-map/radius-std-attributes-vsas-support.html

Внимательно читайте документацию. Передача этого атрибута не поддерживается в CoA.

  • 1 month later...
Posted

Добрый день. 

Проблема такая же 

Железяка MX-204
Model: mx204
Junos: 22.2R3.15
JUNOS OS Kernel 64-bit  [20230303.4e45fe64_builder_stable_12_222]
JUNOS OS libs [20230303.4e45fe64_builder_stable_12_222]
JUNOS OS runtime [20230303.4e45fe64_builder_stable_12_222]
JUNOS OS time zone information [20230303.4e45fe64_builder_stable_12_222]
JUNOS network stack and utilities [20230322.135429_builder_junos_222_r3]
JUNOS libs [20230322.135429_builder_junos_222_r3]
JUNOS OS libs compat32 [20230303.4e45fe64_builder_stable_12_222]
JUNOS OS 32-bit compatibility [20230303.4e45fe64_builder_stable_12_222]
JUNOS libs compat32 [20230322.135429_builder_junos_222_r3]
JUNOS runtime [20230322.135429_builder_junos_222_r3]
Junos vmguest package [20230322.135429_builder_junos_222_r3]
JUNOS sflow mx [20230322.135429_builder_junos_222_r3]
JUNOS py extensions [20230322.135429_builder_junos_222_r3]
JUNOS py base [20230322.135429_builder_junos_222_r3]
JUNOS OS vmguest [20230303.4e45fe64_builder_stable_12_222]
JUNOS OS crypto [20230303.4e45fe64_builder_stable_12_222]
JUNOS OS boot-ve files [20230303.4e45fe64_builder_stable_12_222]
JUNOS na telemetry [22.2R3.15]
JUNOS Security Intelligence [20230322.135429_builder_junos_222_r3]
JUNOS mx libs compat32 [20230322.135429_builder_junos_222_r3]
JUNOS mx runtime [20230322.135429_builder_junos_222_r3]
JUNOS RPD Telemetry Application [22.2R3.15]
JUNOS Routing mpls-oam-basic [20230322.135429_builder_junos_222_r3]
JUNOS Routing mpls-oam-advanced [20230322.135429_builder_junos_222_r3]
JUNOS Routing lsys [20230322.135429_builder_junos_222_r3]
JUNOS Routing controller-internal [20230322.135429_builder_junos_222_r3]
JUNOS Routing controller-external [20230322.135429_builder_junos_222_r3]
JUNOS Routing 32-bit Compatible Version [20230322.135429_builder_junos_222_r3]
JUNOS Routing aggregated [20230322.135429_builder_junos_222_r3]
Redis [20230322.135429_builder_junos_222_r3]
JUNOS probe utility [20230322.135429_builder_junos_222_r3]
JUNOS common platform support [20230322.135429_builder_junos_222_r3]
JUNOS Openconfig [22.2R3.15]
JUNOS mtx network modules [20230322.135429_builder_junos_222_r3]
JUNOS modules [20230322.135429_builder_junos_222_r3]
JUNOS mx modules [20230322.135429_builder_junos_222_r3]
JUNOS mx libs [20230322.135429_builder_junos_222_r3]
JUNOS L2 RSI Scripts [20230322.135429_builder_junos_222_r3]
JUNOS SQL Sync Daemon [20230322.135429_builder_junos_222_r3]
JUNOS mtx Data Plane Crypto Support [20230322.135429_builder_junos_222_r3]
JUNOS daemons [20230322.135429_builder_junos_222_r3]
JUNOS mx daemons [20230322.135429_builder_junos_222_r3]
JUNOS Broadband Edge User Plane Apps [22.2R3.15]
Junos Remote Attestation package [1.0.0+20230322.135429_builder_junos_222_r3]
JUNOS appidd-mx application-identification daemon [20230322.135429_builder_junos_222_r3]
JUNOS TPM2 [20230322.135429_builder_junos_222_r3]
JUNOS Services URL Filter package [20230322.135429_builder_junos_222_r3]
JUNOS Services TLB Service PIC package [20230322.135429_builder_junos_222_r3]
JUNOS Services Telemetry [20230322.135429_builder_junos_222_r3]
JUNOS Services TCP-LOG [20230322.135429_builder_junos_222_r3]
JUNOS Services SSL [20230322.135429_builder_junos_222_r3]
JUNOS Services SOFTWIRE [20230322.135429_builder_junos_222_r3]
JUNOS Services Stateful Firewall [20230322.135429_builder_junos_222_r3]
JUNOS Services RTCOM [20230322.135429_builder_junos_222_r3]
JUNOS Services RPM [20230322.135429_builder_junos_222_r3]
JUNOS Services PCEF package [20230322.135429_builder_junos_222_r3]
JUNOS Services NAT [20230322.135429_builder_junos_222_r3]
JUNOS Services Mobile Subscriber Service Container package [20230322.135429_builder_junos_222_r3]
JUNOS Services MobileNext Software package [20230322.135429_builder_junos_222_r3]
JUNOS Services Logging Report Framework package [20230322.135429_builder_junos_222_r3]
JUNOS Services LL-PDF Container package [20230322.135429_builder_junos_222_r3]
JUNOS Services Jflow Container package [20230322.135429_builder_junos_222_r3]
JUNOS Services Deep Packet Inspection package [20230322.135429_builder_junos_222_r3]
JUNOS Services IPSec [20230322.135429_builder_junos_222_r3]
JUNOS Services IDS [20230322.135429_builder_junos_222_r3]
JUNOS IDP Services [20230322.135429_builder_junos_222_r3]
JUNOS Services HTTP Content Management package [20230322.135429_builder_junos_222_r3]
JUNOS Services DNS Filter package (i386) [20230322.135429_builder_junos_222_r3] 
JUNOS Services Crypto [20230322.135429_builder_junos_222_r3]
JUNOS Services Captive Portal and Content Delivery Container package [20230322.135429_builder_junos_222_r3]
JUNOS Services COS [20230322.135429_builder_junos_222_r3]
JUNOS AppId Services [20230322.135429_builder_junos_222_r3]
JUNOS Services Application Level Gateways [20230322.135429_builder_junos_222_r3]
JUNOS Services AACL Container package [20230322.135429_builder_junos_222_r3]
JUNOS SDN Software Suite [20230322.135429_builder_junos_222_r3]
JUNOS Extension Toolkit [20230322.135429_builder_junos_222_r3]
JUNOS Phone-home [20230322.135429_builder_junos_222_r3]
JUNOS Packet Forwarding Engine Support (wrlinux9) [20230322.135429_builder_junos_222_r3]
JUNOS Packet Forwarding Engine Support (MX/EX92XX Common) [20230322.135429_builder_junos_222_r3]
JUNOS Packet Forwarding Engine Support (M/T Common) [20230322.135429_builder_junos_222_r3]
JUNOS Packet Forwarding Engine Support (aft) [20230322.135429_builder_junos_222_r3]
JUNOS Packet Forwarding Engine Support (MX Common) [20230322.135429_builder_junos_222_r3]
JUNOS Juniper Malware Removal Tool (JMRT) [1.0.0+20230322.135429_builder_junos_222_r3]
JUNOS J-Insight [20230322.135429_builder_junos_222_r3]
JUNOS jfirmware [20230217.040945_builder_junos_222_r3]
JUNOS Online Documentation [20230322.135429_builder_junos_222_r3]
JUNOS jail runtime [20230303.4e45fe64_builder_stable_12_222]
JUNOS dsa dsa [22.2R3.15]

 

Лицензии следующие 

show system license 
License usage: 
                                 Licenses     Licenses    Licenses
                                  Feature      Feature     Feature
  Feature name                       used    installed      needed  Expiry 
  subscriber-accounting                 0            1           0    permanent
  subscriber-authentication             0            1           0    permanent
  subscriber-address-assignment         0            1           0    permanent
  subscriber-vlan                       0            1           0    permanent
  subscriber-ip                         0            1           0    permanent
  service-dc                            0            1           0    permanent
  service-accounting                    0            1           0    permanent
  service-qos                           0            1           0    permanent
  service-ancp                          0            1           0    permanent
  service-cbsp                          0            1           0    permanent
  scale-subscriber                      0        16010           0    permanent
  scale-l2tp                            0         1000           0    permanent
  bgp                                   1            0           1    invalid
  services-rpm                          1            0           1    invalid
  l3static                              1            0           1    invalid

Licenses installed: 
  License identifier: E000185416
  License version: 2
  Order Type: commercial
  Features:
    subscriber-accounting - Per Subscriber Radius Accounting
      permanent
    subscriber-authentication - Per Subscriber Radius Authentication
      permanent
    subscriber-address-assignment - Radius/SRC Address Pool Assignment
      permanent
    subscriber-vlan  - Dynamic Auto-sensed Vlan
      permanent
    subscriber-ip    - Dynamic and Static IP
      permanent

  License identifier: E001171420
  License version: 2
  Order Type: commercial
  Features:
    service-dc       - Service Definition Capability
      permanent
    service-accounting - Per Service Accounting
      permanent
    service-qos      - Dynamic QOS Policy
      permanent
    service-ancp     - ANCP Based QOS Adjustment
      permanent
    service-cbsp     - Cell Based Shaping and Policing
      permanent

  License identifier: E000461716
  License version: 2
  Order Type: commercial
  Features:
    scale-subscriber - Dynamic/Static Subscriber Base Feature
      capacity: 16000
      permanent

 

 

 

Конфиг на котором пытаюсь запустить pppoe такой:


___________________________________________________________________________________________________________show interfaces xe-0/1/0  
flexible-vlan-tagging;
encapsulation flexible-ethernet-services;
gigether-options {
    speed 1g;
}
unit 797 {
    vlan-id 797;
    family pppoe {
        dynamic-profile PPPOE-SESSION;
    }
}

[edit]
___________________________________________________________________________________________________________show access   
profile LOCAL_AUTH {
    authentication-order password;
    client pppoe_ge {
        chap-secret "$8$aes256-gcm$hmac-sha2-256$100$p94uIQExS88$pSS0OnJ9hnuFpMGRRpyptA$WKtsiOBO1gtqFop6RCiAdA$hR0oJwiL"; ## SECRET-DATA
        pap-password "$8$aes256-gcm$hmac-sha2-256$100$QGAwhjrALAo$qlilr6c9poTV5N4q5i8jrA$jb24e8deX37dHDkbUt4aWQ$wg9wiNTb"; ## SECRET-DATA
        ppp {
            framed-ip-address 91.224.106.170/32;
        }
    }
    address-assignment {
        pool TEST_POOL;
    }
}

[edit]
___________________________________________________________________________________________________________show dynamic-profiles 
PPPOE-SESSION {
    interfaces {
        pp0 {
            unit "$junos-interface-unit" {
                ppp-options {
                    chap;
                    pap;
                }
                pppoe-options {
                    underlying-interface "$junos-underlying-interface";
                    server;
                }
                family inet {
                    mtu 1492;
                    unnumbered-address lo0.0;
                }
            }
        }
    }
}

[edit]
___________________________________________________________________________________________________________ show chassis 
fpc 0 {
    pic 0 {
        inline-services {
            bandwidth 10g;
        }
    }
}
network-services enhanced-ip;

[edit]
___________________________________________________________________________________________________________show interfaces lo0

unit 0 {
    family inet {
        address 91.224.107.148/32 {
            primary;
        }
    }
}

[edit]
___________________________________________________________________________________________________________

В организации нет Radius сервера и клиента всего три будет, поэтому создаю юзеров pppoe локально на железке

 

Вот в логах и выдаёт такую же ошибку как у вас 

pppoed[12175]: dyn_prof_send_request: Rejecting profile (PPPOE-SESSION - use_flow: 0) ADD from daemon pppoed because enhanced-universal-edge is disabled

Жалуется что не может собрать динамический профиль потому что "enhanced-universal-edge is disabled". 

НО судя по всему нет такого режима работы железяки 

___________________________________________________________________________________________________________set chassis network-services ?
Possible completions:
  enhanced-ethernet    Enhanced ethernet network services
  enhanced-ip          Enhanced IP network services
  ethernet             Ethernet network services
  ip                   IP network services
  lan                  Ethernet LAN services
[edit]

 

Чем решили проблему?

Posted
Цитата

set system services subscriber-management enable

необходима для применения динамических профилей. после применения требуется перезагрузка.

Posted
В 15.10.2025 в 12:25, Kumarik сказал:

За пример большое спасибо!

почти со всем уже разобрался - но вот с передачей значения скорости не получается.

Нашел атрибут для передачи параметров ERX-Service-Activate:1 = "sp_Inet(45m,44m)", но он не применяется 

в ответ на coa прилетает 

Error-Cause = Missing-Attribute
Juniper-Attr-178 = 0x31323220457865637574696f6e206661696c757265

а в логах джуна 

Dynamic request processing status <Error:authd class=1, code=3>, reason(122 Execution failure)

Как будто он не понимает передаваемый ему атрибут.

 

Но если передать атрибут без значения скоростей ERX-Service-Activate:1 = "sp_Inet" - то все отрабатывает нормально и профиль применяется к сессии.

 

Еще раз здравствуйте)
Как в итоге решили задачу ограничения скорости PPPoE клиентов? 

Posted

для нас лучшим вариантом оказалось применение фильтров передаваемых через radius

filter {
  input "$junos-input-filter";
  output "$junos-output-filter";
}

В этих атрибутах передается название фильтров которые применяются к сессии, и можно менять через coa

ERX-Ingress-Policy-Name

ERX-Egress-Policy-Name

 

Вариант с передачей конкретных скоростей как советовал StSphinxERX-Service-Activate:1 = "sp_Inet(45m,44m)")  тоже рабочий, но он не поддерживает coa -  а для нас это было важно

Posted
Цитата

Radius отдает имя vrf(LS:RI, нужен если сессию необходимо поместить не в GRT)

Добрый день.

Можно пару вопросов по этому пункту.
Задача - помещать всех авторизованных через dynamic-profiles "PPPOE-PROFILE-TEST" в отдельный routing-instances "NAT-RI-245" и отправлять их через  "route 0.0.0.0/0 next-hop 10.0.0.245", там они будут натиться и уже получать интернет.
Не нашел вариантов как в dynamic-profiles жестко назначить нужный routing-instances, пошел по пути передачи названия routing-instances "NAT-RI-245" через радиус атрибут.
ERX-Virtual-Router-Name := "default:NAT-RI-245"
И тут появляются проблемы, если просто его передать то в сессии видно, что атрибут применяется (Logical System: default / Routing Instance: NAT-RI-245). но маршрут который указан в routing-instances не работает и трасерт умирает на lo0.0 интерфейсе.

если добавить в профиль
routing-instances {
    "$junos-routing-instance" {
        interface "$junos-interface-name";
    }
}
то сессиия вообще перестает подниматься.
В итоге не могу понять где проблема, в динамическом профиле, в атрибутах, в routing-instances или в lo интерфейсе.

В GRT сейчас авторизуются клиенты которых не нужно натить и для них есть другой маршрут к 0.0.0.0/0

Конфиг сейчас такой

Скрытый текст

interfaces {    
    xe-0/1/3 {
        description HUAWEI_PPPOE;
        flexible-vlan-tagging;
        encapsulation flexible-ethernet-services;
        unit 999 {
            vlan-id 999;
            family pppoe {
                dynamic-profile PPPOE-PROFILE-TEST;
            }
        }
    }
    xe-0/1/4 {
        description xe-0/1/4;
        flexible-vlan-tagging;
        encapsulation flexible-ethernet-services;
        unit 3700 {
            description NAT-245-TEST;
            vlan-id 3700;
            family inet {
                address 10.0.0.55/24;
            }
        }
    }
    lo0 {
        unit 0 {
            family inet {
                address 10.128.0.55/32;
            }
        }
    }
}

routing-instances {
    NAT-RI-245 {
        instance-type virtual-router;
        routing-options {
            static {
                route 0.0.0.0/0 next-hop 10.0.0.245;
            }
        }
        interface xe-0/1/4.3700;
    }
}

dynamic-profiles {
    PPPOE-PROFILE-TEST {
        interfaces {                    
            "$junos-interface-ifd-name" {
                unit "$junos-interface-unit" {
                    ppp-options {
                        chap;
                        pap;
                        mru 1492;
                        mtu 1492;
                    }
                    pppoe-options {
                        underlying-interface "$junos-underlying-interface";
                        server;
                    }
                    family inet {
                        rpf-check;
                        mtu 1492;
                        unnumbered-address lo0.0;
                    }
                }
            }
        }
    }
}

в последствии пробовал передавать дополнительно ERX-Local-Loopback-Interface. в логе видно что атрибут приходит - но опять без толку

Скрытый текст

Dec 18 09:57:12.174660 Radius result is CLIENT_REQ_STATUS_SUCCESS
Dec 18 09:57:12.174683 Parsing RADIUS message for session-id:132856
DeDec 18 09:57:12.174758 radius-access-accept: Framed-IP-Address received: 192.168.200.200
Dec 18 09:57:12.174818 radius-access-accept: Virtual-Router (Juniper-ERX-VSA) received: default:NAT-RI-245
Dec 18 09:57:12.174838 radius-access-accept: IP-Loopback-Interface (Juniper-ERX-VSA) received: lo0.0
Dec 18 09:57:12.174878 Framework - module(radius) return: SUCCESS

 

  • 2 weeks later...
Posted

Приветствую. Если задача просто отправльтять трафик на альтернативный дефолт маршрут не проще ли использовать routing-instances типа forwarding?

У меня была похожая задача раскидать клиентов на несколько cgnat железок, сделал следующим образом, разбил сетки на префиксы /24 создал денамические профили под каждое устройство и навешал через радиус на нужные подсети.


set firewall family inet filter TO_CGNAT interface-specific
set firewall family inet filter TO_CGNAT term 1 from source-address серыйе адреса/16
set firewall family inet filter TO_CGNAT term 1 from destination-address серыйе адреса/16 except
set firewall family inet filter TO_CGNAT term 1 from destination-address другие локальные подсети/21 except
set firewall family inet filter TO_CGNAT term 1 from destination-address 0.0.0.0/0
set firewall family inet filter TO_CGNAT term 1 then routing-instance CGNAT
set firewall family inet filter TO_CGNAT term default then accept

 

set routing-instances CGNAT routing-options static route 0.0.0.0/0 next-hop 10.0.0.245
set routing-instances CGNAT instance-type forwarding

 

set routing-options rib-groups RIB_BAL import-rib inet.0
set routing-options rib-groups RIB_BAL import-rib CGNAT.inet.0

 

set dynamic-profiles ROUTE_CGNAT interfaces demux0 unit "$junos-interface-unit" family inet filter input TO_CGNAT

 

Дальше в радиус ERX-Service-Activate, имя сервиса ROUTE_CGNAT, нужная подсеть.

Posted

Здравствуйте.

У меня сейчас примерно так и было реализовано, что по scr адресам клиенты через firewall раскидывались в определенный routing-instance. Но это отъедает ресурсы PFE, создает дополнительные фильтры и увеличивает нагрузку (думаю с увеличение клиентов - могут появляться ошибки). 

Сейчас решил вот таким способом - пока все вполне устраивает.

Скрытый текст

DYNAMIC-VLAN {
        interfaces {
            "$junos-interface-ifd-name" {
                unit "$junos-interface-unit" {
                    vlan-id "$junos-vlan-id";
                    family pppoe {      
                        duplicate-protection;
                        dynamic-profile DYNAMIC-PPPOE;
                        max-sessions 16000;
                        short-cycle-protection;
                    }
                }
            }
        }
    }

DYNAMIC-PPPOE {
        routing-instances {
            "$junos-routing-instance" {
                interface "$junos-interface-name";
            }
        }
        interfaces {
            "$junos-interface-ifd-name" {
                unit "$junos-interface-unit" {
                    ppp-options {
                        chap;
                        pap;
                        mru 1492;
                        mtu 1492;
                    }
                    pppoe-options {
                        underlying-interface "$junos-underlying-interface";
                        server;
                    }
                    family inet {
                        rpf-check;
                        mtu 1492;
                        filter {
                            input "$junos-input-filter";
                            output "$junos-output-filter";
                        }
                        unnumbered-address "$junos-loopback-interface";
                    }
                }
            }
        }
    }

 

Как оказалось вся загвоздка была в loopback интерфейсе. Просто добавить новый unit в него было нельзя (т.к. появляется 2 интерфейса привязанный к grt, на что он ругается), но если создать его и сразу повесить на нужный routing-instance - то все работает без проблем.

 

RI-240 {
        instance-type virtual-router;
        routing-options {
            static {
                route 0.0.0.0/0 next-hop 10.0.1.240;
            }
        }
        interface xe-0/1/0.3600;
        interface lo0.240;
    }

 

lo0 {
        unit 0 {
            family inet {
                address 10.128.0.55/32;
            }
        }
        unit 240 {
            description LOOPBACK_RI-240;
            family inet {
                address 10.128.240.55/32;
            }
        }
    }

 

а через радиус можно отдавать название нужного routing-instance через атрибут  ERX-Virtual-Router-Name.

позже нашел как обойтись без радиуса, добавив в профиль название переменной $junos-routing-instance значение по умолчанию (если атрибут не был получен от радиуса) 

 

predefined-variable-defaults {
 routing-instances RI-240;
}

 

 

 

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.