Ik maak even een apart topic voor IPv6 met de Ubiquiti EdgeMax EdgeRouter serie, gebaseerd op Cavium.
Het lukt mij niet om mijn ER-12 met IPv6 te laten werken. Aan de kant van Tweak zou alles goed moeten zijn.
Ik heb mijn ER-12 geconfigureerd met de ingebouwde wizard (load-balancing). Blijkbaar is deze wizard te simpel om IPv6 te activeren. Werkt overigens prima met IPv4 van Tweak en Ziggo als fail-over.
Heeft iemand een router van deze serie wel met IPv6 aan de praat gekregen? Waar zit mijn blinde vlek?
Ik heb het onlangs ingeregeld op een ER-4 en die draait met een zone-based firewall setup.
set firewall ipv6-name WAN6-LOCAL6 rule 2 action accept
set firewall ipv6-name WAN6-LOCAL6 rule 2 description 'Allow ICMPv6'
set firewall ipv6-name WAN6-LOCAL6 rule 2 log disable
set firewall ipv6-name WAN6-LOCAL6 rule 2 protocol icmpv6
set firewall ipv6-name WAN6-LOCAL6 rule 3 action accept
set firewall ipv6-name WAN6-LOCAL6 rule 3 description 'Allow DHCPv6'
set firewall ipv6-name WAN6-LOCAL6 rule 3 destination port 546
set firewall ipv6-name WAN6-LOCAL6 rule 3 protocol udp
set firewall ipv6-name WAN6-LOCAL6 rule 3 source port 547
Aangezien de Edgerouter geen extra loopback interfaces of dummy interfaces ondersteunt zoals VyOS heb ik de verkregen prefix op de loopback erbij gezet.
Ik wilde geen extra adres op de WAN erbij krijgen en enkel de verkregen IPv6-prefix inzetten…vandaar de optie “prefix-only”. De “prefix-length /64” is een beetje tegenstrijdig want je krijgt een /56
maar als ik dat configureer krijg ik een /64 ipv een /56. Weet nog niet of dat een bug is…
Naast de bestaande config op m’n WAN interface heb ik bij VLAN/VIF 34 het volgende staan:
set interfaces ethernet eth3 vif 34 dhcpv6-pd no-dns
set interfaces ethernet eth3 vif 34 dhcpv6-pd pd 0 interface lo host-address '::1'
set interfaces ethernet eth3 vif 34 dhcpv6-pd pd 0 interface lo no-dns
set interfaces ethernet eth3 vif 34 dhcpv6-pd pd 0 interface lo service slaac
set interfaces ethernet eth3 vif 34 dhcpv6-pd pd 0 prefix-length /64
set interfaces ethernet eth3 vif 34 dhcpv6-pd prefix-only
set interfaces ethernet eth3 vif 34 dhcpv6-pd rapid-commit enable
Daarna heb ik de range opgehakt in meerdere /64 netwerken voor m’n LAN. Ik wilde geen SLAAC gebruiken voor het uitdelen van IPv6-adressen en gebruik de dhcpv6-server. Zo kon ik de nummering van de subnets
enigzins overeen laten komen met mijn bestaande ipv4-vlans. De name-servers verwijzen naar interne AdGuard servers.
voorbeeld:
set service dhcpv6-server shared-network-name IOT-Vlan-DHCPv6 subnet '2a02:xx:xxx:2560::/64' address-range start '2a02:xx:xxx:2560::100' stop '2a02:xx:xxx:2560::500'
set service dhcpv6-server shared-network-name IOT-Vlan-DHCPv6 subnet '2a02:xx:xxx:2560::/64' name-server '2a02:xx:xxx:2510::55'
set service dhcpv6-server shared-network-name IOT-Vlan-DHCPv6 subnet '2a02:xx:xxx:2560::/64' name-server '2a02:xx:xxx:2510::56'
set service dhcpv6-server shared-network-name Internal-LAN-DHCPv6 subnet '2a02:xx:xxx:2510::/64' address-range start '2a02:xx:xxx:2510::100' stop '2a02:xx:xxx:2510::500'
set service dhcpv6-server shared-network-name Internal-LAN-DHCPv6 subnet '2a02:xx:xxx:2510::/64' name-server '2a02:xx:xxx:2510::55'
set service dhcpv6-server shared-network-name Internal-LAN-DHCPv6 subnet '2a02:xx:xxx:2510::/64' name-server '2a02:xx:xxx:2510::56'
Toen ik dit topic startte wist ik nog niet dat ik 2 weken later een Ubiquiti UDM SE zou aanschaffen.
Dit wel heel grote apparaat vroeg om wat aanpassingen in de meterkast maar draait nu een week, en sinds gisteren ook met IPv6.
Dus mijn pogingen om de ER-12 met IPv6 aan de praat te krijgen zijn gestopt. @recombinator , dank je voor je hulp!!
Voor de liefhebber: hieronder de config van mijn EdgeRouter 4 die nu enkele weken uitstekend werkt met IPv6. De toekenning van IP-adressen gebeurt d.m.v. SLAAC en er worden daarnaast ULA’s uitgedeeld op de LAN-interfaces. Met (onder andere) RFC4193 IPv6 Generator kan een eigen ULA-prefix gegenereerd worden op basis van het mac-adres van de router.
Let op: alleen eth1 en eth3 zijn nu bij mij in gebruik, de andere interfaces zijn disabled.
firewall {
all-ping enable
broadcast-ping disable
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 ICMPv6"
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
}
}
}
receive-redirects disable
send-redirects enable
source-validation disable
syn-cookies enable
}
interfaces {
ethernet eth0 {
address dhcp
description WAN
dhcpv6-pd {
pd 0 {
interface eth1 {
host-address ::1
prefix-id 01
service slaac
}
interface eth2 {
host-address ::1
prefix-id 02
service slaac
}
prefix-length /56
}
rapid-commit enable
}
disable
duplex auto
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
}
speed auto
}
ethernet eth1 {
address 192.168.1.1/24
address fd12:3456:789a:1::1/64
description "Local 1"
duplex auto
ipv6 {
dup-addr-detect-transmits 1
router-advert {
cur-hop-limit 64
default-preference high
link-mtu 0
managed-flag false
max-interval 600
name-server fd12:3456:789a:1::1
other-config-flag false
prefix ::/64 {
autonomous-flag true
on-link-flag true
valid-lifetime 2592000
}
prefix fd12:3456:789a:1::/64 {
autonomous-flag true
on-link-flag true
valid-lifetime 2592000
}
reachable-time 0
retrans-timer 0
send-advert true
}
}
speed auto
}
ethernet eth2 {
address 192.168.2.1/24
address fd12:3456:789a:2::1/64
description "Local 2"
disable
duplex auto
ipv6 {
dup-addr-detect-transmits 1
router-advert {
cur-hop-limit 64
default-preference high
link-mtu 0
managed-flag false
max-interval 600
name-server fd12:3456:789a:2::1
other-config-flag false
prefix ::/64 {
autonomous-flag true
on-link-flag true
valid-lifetime 2592000
}
prefix fd12:3456:789a:2::/64 {
autonomous-flag true
on-link-flag true
valid-lifetime 2592000
}
reachable-time 0
retrans-timer 0
send-advert true
}
}
speed auto
}
ethernet eth3 {
address dhcp
description "WAN (fiber)"
dhcpv6-pd {
pd 0 {
interface eth1 {
host-address ::1
prefix-id 01
service slaac
}
interface eth2 {
host-address ::1
prefix-id 02
service slaac
}
prefix-length /56
}
rapid-commit enable
}
duplex auto
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
}
speed auto
}
loopback lo {
}
}
service {
dhcp-server {
disabled false
hostfile-update disable
shared-network-name LAN1 {
authoritative enable
subnet 192.168.1.0/24 {
default-router 192.168.1.1
dns-server 192.168.1.1
lease 86400
start 192.168.1.10 {
stop 192.168.1.255
}
}
}
shared-network-name LAN2 {
authoritative enable
subnet 192.168.2.0/24 {
default-router 192.168.2.1
dns-server 192.168.2.1
lease 86400
start 192.168.2.10 {
stop 192.168.2.255
}
}
}
static-arp disable
use-dnsmasq disable
}
dns {
forwarding {
cache-size 10000
listen-on eth1
listen-on eth2
}
}
gui {
http-port 80
https-port 443
older-ciphers disable
}
nat {
rule 5010 {
description "masquerade for WAN"
outbound-interface eth0
type masquerade
}
rule 5020 {
description "masquerade for WAN (fiber)"
outbound-interface eth3
type masquerade
}
}
ssh {
port 22
protocol-version v2
}
ubnt-discover {
disable
}
unms {
disable
}
}
system {
analytics-handler {
send-analytics-report false
}
config-management {
commit-revisions 10
}
crash-handler {
send-crash-report false
}
host-name gateway
login {
user [SANITIZED] {
authentication {
encrypted-password [SANITIZED]
}
level admin
}
}
ntp {
server 0.nl.pool.ntp.org {
}
server 1.nl.pool.ntp.org {
}
server 2.nl.pool.ntp.org {
}
server 3.nl.pool.ntp.org {
}
}
offload {
hwnat disable
ipsec enable
ipv4 {
bonding enable
forwarding enable
gre enable
pppoe enable
vlan enable
}
ipv6 {
bonding enable
forwarding enable
vlan enable
}
}
syslog {
global {
facility all {
level notice
}
facility protocols {
level debug
}
}
}
time-zone Europe/Amsterdam
traffic-analysis {
dpi disable
export disable
}
}