Это — старая версия документа!


Настройка jun OS для раздачи ipv6: Во первых настройка динамического профиля для интерфейсов:

dynamic-profiles {
    INTF {
        interfaces {
            demux0 {
                unit "$junos-interface-unit" {
                    demux-options {     
                        underlying-interface "$junos-underlying-interface";
                    }
                    family inet {
                        unnumbered-address lo0.0;
                    }
                    family inet6 {
                        unnumbered-address lo0.0;
                    }
                }
            }
        }
        protocols {
            router-advertisement {
                interface "$junos-interface-name" {
                    managed-configuration;
                    other-stateful-configuration;
                    link-mtu;
                }
            }
        }
    }
}

Тут RA создается без какого-либо префикса, т.к. он нужен до какой-либо авторизации чтобы CPE запросил DHCPv6.

Профиль DHCP:

dynamic-profiles {
    DHCP_MAC_VALIDATE {
        interfaces {
            "$junos-interface-ifd-name" {
                unit "$junos-interface-unit" {
                    proxy-arp restricted;
                    filter {
                        input "$junos-input-interface-filter";
                        output "$junos-output-interface-filter";
                    }
                    family inet {
                        mac-validate strict;
                        mtu 1500;
                        filter {
                            input "$junos-input-filter";
                            output "$junos-output-filter";
                        }
                        unnumbered-address lo0.0;
                    }
                    family inet6 {
                        mtu 1500;
                        filter {
                            input "$junos-input-ipv6-filter";
                            output "$junos-output-ipv6-filter";
                        }
                        unnumbered-address lo0.0;
                    }
                }
            }
        }
        protocols {
            router-advertisement {
                interface "$junos-interface-name" {
                    managed-configuration;
                    other-stateful-configuration;
                    link-mtu;
                    prefix $junos-ipv6-ndra-prefix {
                        valid-lifetime 14400;
                        on-link;
                        preferred-lifetime 14400;
                    }
                }
            }
        }
    }
}

DHCP сервер:

dhcpv6 {
    group dhcp {
        overrides {
            rapid-commit;
            process-inform {
                pool p6;
            }
            always-add-option-dns-server;
            asymmetric-lease-time 600;
            asymmetric-prefix-lease-time 600;
            dual-stack dhcp;
        }
        interface demux0.0;
    }
}
group dhcp {
    overrides {
        asymmetric-lease-time 600;
        dual-stack dhcp;
    }
    interface demux0.0;
}
dual-stack-group dhcp {
    authentication {
        password juniper;
        username-include {
            mac-address;
        }
    }
    dynamic-profile DHCP_MAC_VALIDATE;
    classification-key {                
        mac-address;
    }
}

Крайне рекомендую lease тайм настраивать именно тут(asymmetric-lease-time), иначе с некоторыми роутерами ip пропадает, это касается и v4, а в пулах адресов указывать бесконечное время аренды:

access {
    address-assignment {
        pool p4 {
            family inet {
                network 192.0.2.0;  
                dhcp-attributes {
                    maximum-lease-time infinite;
                    grace-period 700;
                    name-server {
                        192.0.2.5;
                        192.0.2.7;
                    }
                    router {
                        192.0.2.254;
                    }
                }
                excluded-address 192.0.2.254;
                excluded-address 192.0.2.255;
            }
        }
        pool p6 {
            family inet6 {
                prefix 2001:db8::/32;
                range pd prefix-length 48;
                dhcp-attributes {
                    maximum-lease-time infinite;
                    dns-server {
                        2001:db8::5;
                        2001:db8::7;
                    }
                }
            }
        }
}

И динамический профиль INTF нужно забиндить на интерфейсе основном, для примера qinq:

interfaces {
    et-0/0/0 {
        description USERS;
        flexible-vlan-tagging;
        auto-configure {
            stacked-vlan-ranges {
                dynamic-profile INTF {
                    accept [ dhcp-v4 inet6 ];
                    ranges {
                        200-227,251-4094;
                    }
                }                  
            }                           
            remove-when-no-subscribers; 
        }                               
    } 
}

Настройка шейперов:

firewall {
    family inet {
        filter 100000 {
            interface-specific;
            term 0 {
                then {
                    policer p_100000_limit;
                    next term;
                }
            }
            term 1 {
                then accept;
            }
        }
    }
    family inet6 {
        filter 100000 {
            interface-specific;
            term 0 {
                then {
                    policer p_100000_limit;
                    next term;
                }
            }
            term 1 {
                then accept;
            }
        }
    }
    family any {
        filter 100000 {
            interface-specific;
            term 0 {
                then {
                    policer p_100000_limit;
                    next term;
                }
            }
            term 1 {
                then accept;
            }
        }
    }
    policer p_100000_limit {
        if-exceeding {
            bandwidth-limit 100m;       
            burst-size-limit 18750000;  
        }                               
        then discard;                   
    }
}

В данной конфигурации на радиус приходят имя пользователя в виде мака: xxxx.xxxx.xxxx с паролем juniper. Отдавать джуниперу надо переменные для скорости: ipv4 для $junos-input-filter и $junos-output-filter:

ERX-Ingress-Policy-Name
ERX-Egress-Policy-Name

ipv6 для $junos-input-ipv6-filter и $junos-output-ipv6-filter:

ERX-IPv6-Ingress-Policy-Name
ERX-IPv6-Egress-Policy-Name

для всего интерфейса ($junos-input-interface-filter $junos-output-interface-filter) - не рекомендую, т.к. вероятно служебный трафик вроде arp и icmp6 тоже зарежет:

ERX-Input-Interface-Filter
ERX-Output-Interface-Filter

Для статического префикса/адреса на WAN:

Framed-IPv6-Prefix

Если отдать /64 то будет использоваться для slaac($junos-ipv6-ndra-prefix), если 128 - для IA_NA.

Для динамического префикса на WAN(для статики крайне рекомендую отдавать этот параметр тоже, иначе не всегда привязывается пул и нормально работает время аренды):

Framed-IPv6-Pool

Для статического префикса PD:

Delegated-IPv6-Prefix

Для динамического префикса PD(для статики крайне рекомендую отдавать этот параметр тоже, иначе не всегда привязывается пул и нормально работает время аренды):

ERX-IPv6-Delegated-Pool-Name

juniper.1729502609.txt.gz · Последние изменения: 2024-10-21 09:23 UTC От w
Personal Tools