### generated by ipoe.py ### [modules] log_syslog ipoe shaper ipv6pool ipv6_nd ipv6_dhcp ippool {% if auth_mode == 'radius' %} radius {% elif auth_mode == 'local' %} chap-secrets {% endif %} [core] thread-count={{ thread_cnt }} [log] syslog=accel-ipoe,daemon copy=1 level=5 [ipoe] verbose=1 {% for interface in interfaces %} {% set ifname = interface.name %} {% if interface.vlan_mon %} {% set ifname = 're:' ~ interface.name ~ '\.\d+' %} {% endif %} interface={{ ifname }},shared={{ interface.shared }},mode={{ interface.mode }},ifcfg={{ interface.ifcfg }}{{ ',range=' ~ interface.range if interface.range is defined and interface.range is not none }},start={{ interface.sess_start }},ipv6=1 {% endfor %} {% if auth_mode == 'noauth' %} noauth=1 {% if client_named_ip_pool %} {% for pool in client_named_ip_pool %} {% if pool.subnet is defined %} ip-pool={{ pool.name }} {% endif %} {% if pool.gateway_address is defined %} gw-ip-address={{ pool.gateway_address }}/{{ pool.subnet.split('/')[1] }} {% endif %} {% endfor%} {% endif %} {% elif auth_mode == 'local' %} username=ifname password=csid {% endif %} proxy-arp=1 {% for interface in interfaces %} {% if (interface.shared == '0') and (interface.vlan_mon) %} vlan-mon={{ interface.name }},{{ interface.vlan_mon | join(',') }} {% endif %} {% endfor %} {% if dnsv4 %} [dns] {% for dns in dnsv4 %} dns{{ loop.index }}={{ dns }} {% endfor %} {% endif %} {% if dnsv6 %} [ipv6-dns] {% for dns in dnsv6 %} {{ dns }} {% endfor %} {% endif %} [ipv6-nd] verbose=1 [ipv6-dhcp] verbose=1 {% if client_named_ip_pool %} [ip-pool] {% for pool in client_named_ip_pool %} {% if pool.subnet is defined %} {{ pool.subnet }},name={{ pool.name }} {% endif %} {% if pool.gateway_address is defined %} gw-ip-address={{ pool.gateway_address }}/{{ pool.subnet.split('/')[1] }} {% endif %} {% endfor%} {% endif %} {% if client_ipv6_pool %} [ipv6-pool] {% for p in client_ipv6_pool %} {{ p.prefix }},{{ p.mask }} {% endfor %} {% for p in client_ipv6_delegate_prefix %} delegate={{ p.prefix }},{{ p.mask }} {% endfor %} {% endif %} {% if auth_mode == 'local' %} [chap-secrets] chap-secrets={{ chap_secrets_file }} {% elif auth_mode == 'radius' %} [radius] verbose=1 {% for r in radius_server %} server={{ r.server }},{{ r.key }},auth-port={{ r.port }},acct-port={{ r.acct_port }},req-limit=0,fail-time={{ r.fail_time }} {% endfor %} {% if radius_acct_inter_jitter %} acct-interim-jitter={{ radius_acct_inter_jitter }} {% endif %} acct-timeout={{ radius_acct_tmo }} timeout={{ radius_timeout }} max-try={{ radius_max_try }} {% if radius_nas_id %} nas-identifier={{ radius_nas_id }} {% endif %} {% if radius_nas_ip %} nas-ip-address={{ radius_nas_ip }} {% endif %} {% if radius_source_address %} bind={{ radius_source_address }} {% endif %} {% if radius_dynamic_author %} dae-server={{ radius_dynamic_author.server }}:{{ radius_dynamic_author.port }},{{ radius_dynamic_author.key }} {% endif %} {% if radius_shaper_attr %} [shaper] verbose=1 attr={{ radius_shaper_attr }} {% if radius_shaper_vendor %} vendor={{ radius_shaper_vendor }} {% endif %} {% endif %} {% endif %} [cli] tcp=127.0.0.1:2002