From 31b2984284faf588e4bcc07b58479bded193b1d2 Mon Sep 17 00:00:00 2001 From: Ramax Lo Date: Wed, 17 Mar 2021 00:21:07 +0800 Subject: [PATCH] configexamples: Add PPPoE IPv6 basic setup Add new document on basic PPPoE IPv6 setup for home network. --- docs/_static/images/pppoe-ipv6-pd-diagram.png | Bin 0 -> 12358 bytes docs/configexamples/index.rst | 1 + docs/configexamples/pppoe-ipv6-basic.rst | 110 ++++++++++++++++++ 3 files changed, 111 insertions(+) create mode 100644 docs/_static/images/pppoe-ipv6-pd-diagram.png create mode 100644 docs/configexamples/pppoe-ipv6-basic.rst diff --git a/docs/_static/images/pppoe-ipv6-pd-diagram.png b/docs/_static/images/pppoe-ipv6-pd-diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..4bae4db009af9452086cfa3bd9aa74fafd7d556c GIT binary patch literal 12358 zcmeHtWmB7N*d}#Din}z$-Cf!ev_Nnv65Jsa2mykWwzw6y0>#~}1Z#^!p}4!d6Ev_l z&%3{1XTR*sW+r#Skh!kY^$1o~k;8dT@f-^a3r9g7td52CpbYrF^7KCNJP-E|13sQP z$?LgbVd1vjz3;`b;ZkB@(P1fo-)g!W?am?%3{F#T5C3rsS^mL(AZ<+d?bG9+db^RY znmMxDIk}@#nhtQ~UBRMVv`)#C+ce6sM$isnXgIxFYb2PwGgVko(#=@%aoly8fj*ge z<+F+PLtc99udleJEy*lD&C>>AxB7jf#D1`T>UG}v_Y4^j=43p#j+C6=*BKulX9CFk z#F�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 literal 0 HcmV?d00001 diff --git a/docs/configexamples/index.rst b/docs/configexamples/index.rst index b2f7bfde..709708ce 100644 --- a/docs/configexamples/index.rst +++ b/docs/configexamples/index.rst @@ -17,3 +17,4 @@ This chapter contains various configuration examples: tunnelbroker-ipv6 ha wan-load-balancing + pppoe-ipv6-basic diff --git a/docs/configexamples/pppoe-ipv6-basic.rst b/docs/configexamples/pppoe-ipv6-basic.rst new file mode 100644 index 00000000..69cb994d --- /dev/null +++ b/docs/configexamples/pppoe-ipv6-basic.rst @@ -0,0 +1,110 @@ +.. _examples-pppoe-ipv6-basic: + +####################################### +PPPoE IPv6 Basic Setup for Home Network +####################################### + +This document is to describe a basic setup using PPPoE with DHCPv6-PD + +SLAAC to construct a typical home network. The user can follow steps described +here to quickly setup a working network and use this as a starting point to +further configure or fine tune other settings. + +To achieve this, your ISP is required to support DHCPv6-PD. If you're not sure, +please contact your ISP for more information. + +Network Topology +================ + +.. image:: /_static/images/pppoe-ipv6-pd-diagram.png + :width: 60% + :align: center + :alt: Network Topology Diagram + +Configurations +============== + +PPPoE Setup +----------- + +.. code-block:: none + + set interfaces pppoe pppoe0 authentication password + set interfaces pppoe pppoe0 authentication user + set interfaces pppoe pppoe0 service-name + set interfaces pppoe pppoe0 source-interface 'eth0' + +* Fill ``password`` and ``user`` with the credential provided by your ISP. +* ``service-name`` can be an arbitrary string. + +DHCPv6-PD Setup +--------------- + +During address configuration, in addition to assigning an address to the WAN +interface, ISP also provides a prefix to allow router to configure addresses of +LAN interface and other nodes connecting to LAN, which is called prefix +delegation (PD). + +.. code-block:: none + + set interfaces pppoe pppoe0 ipv6 address autoconf + set interfaces pppoe pppoe0 dhcpv6-options pd 0 interface eth1 address '100' + +* Here we use prefix to configure the address of eth1 (LAN) to form ``::64``, + where ``64`` is hexadecimal of address 100. +* For home network users, most of time ISP only provides /64 prefix, hence + there is no need to set SLA ID and prefix length. See :ref:`pppoe-interface` + for more information. + +Router Advertisement +-------------------- + +We need to enable router advertisement for LAN network so that PC can receive +the prefix and use SLAAC to configure address automatically. + +.. code-block:: none + + set service router-advert interface eth1 link-mtu '1492' + set service router-advert interface eth1 name-server + set service router-advert interface eth1 prefix ::/64 valid-lifetime '172800' + +* Set MTU in advertisement to 1492 because of PPPoE header overhead. +* Set DNS server address in advertisement so that clients can obtain it by using + RDNSS option. Most operating systems (Windows, Linux, Mac) should + already support it. +* Here we set the prefix to ``::/64`` to indicate advertising any /64 prefix + the LAN interface is assigned. +* Since some ISPs disconnects continuous connection for every 2~3 days, we set + ``valid-lifetime`` to 2 days to allow PC for phasing out old address. + +Basic Firewall +-------------- + +To have basic protection while keeping IPv6 network functional, we need to: + +* Allow all established and related traffic for router and LAN +* Allow all icmpv6 packets for router and LAN +* Allow DHCPv6 packets for router + +.. code-block:: none + + set firewall ipv6-name WAN_IN default-action 'drop' + set firewall ipv6-name WAN_IN rule 10 action 'accept' + set firewall ipv6-name WAN_IN rule 10 state established 'enable' + set firewall ipv6-name WAN_IN rule 10 state related 'enable' + set firewall ipv6-name WAN_IN rule 20 action 'accept' + set firewall ipv6-name WAN_IN rule 20 protocol 'icmpv6' + set firewall ipv6-name WAN_LOCAL default-action 'drop' + set firewall ipv6-name WAN_LOCAL rule 10 action 'accept' + set firewall ipv6-name WAN_LOCAL rule 10 state established 'enable' + set firewall ipv6-name WAN_LOCAL rule 10 state related 'enable' + set firewall ipv6-name WAN_LOCAL rule 20 action 'accept' + set firewall ipv6-name WAN_LOCAL rule 20 protocol 'icmpv6' + set firewall ipv6-name WAN_LOCAL rule 30 action 'accept' + set firewall ipv6-name WAN_LOCAL rule 30 destination port '546' + set firewall ipv6-name WAN_LOCAL rule 30 protocol 'udp' + set firewall ipv6-name WAN_LOCAL rule 30 source port '547' + set interfaces pppoe pppoe0 firewall in ipv6-name 'WAN_IN' + set interfaces pppoe pppoe0 firewall local ipv6-name 'WAN_LOCAL' + +Note to allow router to receive DHCPv6 response from ISP, we need to allow +packets with source port 547 (server) and destination port 546 (client).