家庭网络PPPoE IPv6基本配置

本文档主要介绍PPPoE与DHCPv6-PD + SLAAC的基本搭建,搭建一个典型的家庭网络。用户可以按照这里描述的步骤快速设置工作网络,并以此作为起点进一步配置或微调其他设置。

要实现这一点,您的ISP必须支持DHCPv6-PD。如果您不确定,请联系您的ISP获取更多信息。

网络拓扑

Network Topology Diagram

配置

PPPoE安装

set interfaces pppoe pppoe0 authentication password <YOUR PASSWORD>
set interfaces pppoe pppoe0 authentication user <YOUR USERNAME>
set interfaces pppoe pppoe0 service-name <YOUR SERVICENAME>
set interfaces pppoe pppoe0 source-interface 'eth0'
  • 用ISP提供的凭据填写``password``和``user``。

  • service-name 可以是任意字符串。

DHCPv6-PD 安装

ISP在配置地址时,除了为WAN接口分配地址外,还提供了一个前缀,允许路由器配置LAN接口和其他连接LAN的节点的地址,称为前缀委派(prefix delegation)。

set interfaces pppoe pppoe0 ipv6 address autoconf
set interfaces pppoe pppoe0 dhcpv6-options pd 0 interface eth1 address '100'
  • 这里我们使用prefix来配置eth1 (LAN)的地址,以形成``<prefix>::64``,其中``<prefix>::64``是地址100的十六进制。

  • 对于家庭网络用户,ISP通常只提供/64前缀,因此不需要设置SLA ID和前缀长度。参见:ref:`pppoe-interface`获取更多信息。

路由器广告

我们需要在局域网中启用路由器广告功能,使PC能够接收到前缀并使用SLAAC自动配置地址。

set service router-advert interface eth1 link-mtu '1492'
set service router-advert interface eth1 name-server <NAME SERVER>
set service router-advert interface eth1 prefix ::/64 valid-lifetime '172800'
  • 由于PPPoE报文头的开销,在advertisement中将MTU设置为1492。

  • 在通告中设置DNS服务器地址,使客户端可以通过RDNSS选项获取。大多数操作系统(Windows、Linux、Mac)应该已经支持它了。

  • 这里我们将前缀设置为``::/64``,以表示发布LAN接口分配的任何/64前缀。

  • 由于一些网络服务供应商每2~3天就会断开连续的连接,所以我们将“有效-寿命”设置为2天,以允许电脑逐步淘汰旧的地址。

基本的防火墙

要有基本的保护,同时保持IPv6网络功能,我们需要:

  • 允许路由器和局域网的所有建立和相关的通信

  • 允许所有的icmpv6包为路由器和局域网

  • 允许DHCPv6报文进入路由器

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'

说明为了让路由器能够接收ISP的DHCPv6响应,需要允许源端口号为547(服务器)、目的端口号为546(客户端)的报文通过。