Hallo,
ich habe seit einer weile den Edgerouter X mit Telekom Fiber im Einsatz. Alles funktioniert inkl. IPv6. Allerdings werden zukünftig ein paar neue Devices dazukommen und dazu auch ein paar VLANs. Bevor ich das aber mache würde ich mir gerne nochmal der IPv6 Konfiguration anschauen.
Mein Setup sieht wie folgt aus: Edgerouter mit eth0 am Glasfasermodem der Telekom. Im Router dann ein pppoe Interface mit Zugangsdaten der Telekom auf VLAN 7 angelegt. Der rest der Devices hängt an Switch0. IPv6 Präfix Delegation ist auch aktiv und IPv6 im Netzwerk funktioniert.
Hier meine config:
firewall {
all-ping enable
broadcast-ping disable
group {
}
ipv6-name WANv6_IN {
default-action drop
description "WAN inbound traffic forwarded to LAN"
enable-default-log
rule 10 {
action accept
description "Allow established/related sessions"
state {
established enable
related enable
}
}
rule 20 {
action drop
description "Drop invalid state"
state {
invalid enable
}
}
}
ipv6-name WANv6_LOCAL {
default-action drop
description "WAN inbound traffic to the router"
enable-default-log
rule 10 {
action accept
description "Allow established/related sessions"
state {
established enable
related enable
}
}
rule 20 {
action drop
description "Drop invalid state"
state {
invalid enable
}
}
rule 30 {
action accept
description "Allow IPv6 icmp"
protocol ipv6-icmp
}
rule 40 {
action accept
description "allow dhcpv6"
destination {
port 546
}
protocol udp
source {
port 547
}
}
}
ipv6-receive-redirects disable
ipv6-src-route disable
ip-src-route disable
log-martians enable
name WAN_IN {
default-action drop
description "WAN to internal"
rule 10 {
action accept
description "Allow established/related"
state {
established enable
related enable
}
}
rule 20 {
action drop
description "Drop invalid state"
state {
invalid enable
}
}
}
name WAN_LOCAL {
default-action drop
description "WAN to router"
rule 10 {
action accept
description "Allow established/related"
state {
established enable
related enable
}
}
rule 20 {
action drop
description "Drop invalid state"
state {
invalid enable
}
}
}
options {
mss-clamp {
mss 1412
}
}
receive-redirects disable
send-redirects enable
source-validation disable
syn-cookies enable
}
interfaces {
ethernet eth0 {
duplex auto
speed auto
vif 7 {
description "Internet (PPPoE)"
pppoe 0 {
default-route auto
dhcpv6-pd {
pd 0 {
interface eth0 {
}
interface switch0 {
host-address ::1
prefix-id :1
service slaac
}
prefix-length 56
}
prefix-only
rapid-commit enable
}
firewall {
in {
ipv6-name WANv6_IN
name WAN_IN
}
local {
ipv6-name WANv6_LOCAL
name WAN_LOCAL
}
}
ipv6 {
address {
autoconf
}
dup-addr-detect-transmits 1
enable {
}
}
mtu 1492
name-server auto
password XXXXXXXXXXX
user-id [email protected]
}
}
}
ethernet eth1 {
description Local
duplex auto
ipv6 {
dup-addr-detect-transmits 1
}
speed auto
}
ethernet eth2 {
description Local
duplex auto
speed auto
}
ethernet eth3 {
description Local
duplex auto
speed auto
}
ethernet eth4 {
description Local
duplex auto
speed auto
}
loopback lo {
}
switch switch0 {
address 10.0.0.1/24
description Local
mtu 1500
switch-port {
interface eth1 {
}
interface eth2 {
}
interface eth3 {
}
interface eth4 {
}
vlan-aware disable
}
}
}
port-forward {
auto-firewall enable
hairpin-nat enable
lan-interface switch0
wan-interface pppoe0
}
}
}
shared-network-name LAN {
authoritative enable
subnet 10.0.0.0/16 {
default-router 10.0.0.1
dns-server 10.0.0.1
lease 86400
start 10.0.0.100 {
stop 10.0.0.200
}
}
}
static-arp disable
use-dnsmasq disable
}
dns {
forwarding {
cache-size 150
listen-on switch0
system
}
}
gui {
http-port 8080
https-port 8443
older-ciphers enable
}
nat {
rule 5010 {
description "masquerade for WAN"
outbound-interface pppoe0
type masquerade
}
}
ssh {
port 22
protocol-version v2
}
unms {
connection wss://XXXXXXXXXXXXXXXXXXXXXXXXXXXe
}
}
system {
analytics-handler {
send-analytics-report false
}
crash-handler {
send-crash-report false
}
host-name ubnt
login {
user XXXXX {
authentication {
encrypted-password XXXXXXX
plaintext-password XXXXXXX
}
level admin
}
}
name-server 208.67.222.222
name-server 208.67.220.220
name-server 2620:0:ccc::2
ntp {
server 0.ubnt.pool.ntp.org {
}
server 1.ubnt.pool.ntp.org {
}
server 2.ubnt.pool.ntp.org {
}
server 3.ubnt.pool.ntp.org {
}
}
offload {
hwnat enable
}
}
syslog {
global {
facility all {
level notice
}
facility protocols {
level debug
}
}
}
time-zone Europe/Berlin
traffic-analysis {
dpi enable
export enable
}
}
traffic-control {
optimized-queue {
policy global
}
}
Nun zu meiner Frage. Nach meinem Verständnis ist pppoe0 ein virtueles interface was auf eth0 läuft und daten auf VLAN7 empfäng. Diese interface hat eine IPv6 adresse (wobei der screenshot ja /64 zeigt also ein ganzes subnet?) und eine IPv4 adresse. Jetzt wird über präfix delegation ein /64 subnetz an switch0 weitergegeben dadurch können alle clients an switch0 eine IPv6 adresse die öffenlich routebar ist ermitteln.
Was mich nun wundert ist das eth0 auch eine IPv6 subnet (wieder /64) hat (siehe screenshot) und diese ist auch verschieden von pppoe0 und switch0. Warum ist das so ? Warum hat eth0 neben pppoe0 und switch0 eine eigenes IPv6 subnet ? Sollten die 3 /64 subnets (also eth0 pppoe0 und switch0) nicht zumindest aus dem gleichen /56 subnetz kommen ? Die 3 netze haben nur die ersten 32 bit die übereinstimmen, danach sind sie verschieden. Bei pppoe0 und switch0 stimmen immerhin die ersten 48 bit überein, aber auch hier sollten sie doch eigendlich im gleichen /56 subnetz sein ?