Implantación de IPv6 en la red lechuga

En el router

Según: https://community.ubnt.com/t5/EdgeMAX/EdgeRouter-X-PPPoE-IPv6/td-p/1893221

pppoe 0 {
             default-route force
             firewall {
                 local {
                     name INTERNET_LOCAL
                 }
             }
             mtu 1492
             name-server auto
             password adslppp
             user-id adslppp@telefonicanetpa
++           ipv6 {
++           	dup-addr-detect-transmits 1
++           	enable {
++                     }
++           }
	}

En brocoli

Ajuste en brocoli para permitir ipv6 en el bridge
net.ipv6.conf.br0.use_tempaddr = 0

Apuntes

https://es.wikipedia.org/wiki/IPv6

Las direcciones tienen esta numeración: 2001:0db8:85a3:08d3:1319:8a2e:0370:7334

Son de 128 bits (8 grupos de 16 bits)

fe80::/10 -> Subred local, equivalente a la 192.168/16

::1/128 -> loopback

Router
switch0   Link encap:Ethernet  HWaddr 80:2a:a8:5d:1a:ff
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::822a:a8ff:fe5d:1aff/64 Scope:Link
'ip6
eth0      Link encap:Ethernet  HWaddr 00:16:3e:2c:c2:e4
          inet addr:192.168.1.32  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: 2001:db8::c0ca:1eaf/128 Scope:Global
          inet6 addr: fe80::216:3eff:fe2c:c2e4/64 Scope:Link

Actualización registros AAAA

Mediante DonDNS

Mediante DonDNS: https://github.com/dondominio/dondns-bash/

DDUSER="hugo1"
# DonDNS Key
DDPASSWORD="8BPSnDSBFSubsWp6XqFO4twKB8hOmmfD"
# obtener la ipv6 del host (pueden salir varias)
/sbin/ip -6 addr | grep inet6 | awk -F '[ \t]+|/' '{print $3}' | grep -v ^::1 | grep -v ^fe80

# obtener la IPv6 que se ve desde fuera (requiere internet)
dig -6 TXT +short o-o.myaddr.l.google.com @ns1.google.com
wget -qO - -6 https://ifconfig.co
curl -6 https://ifconfig.co

# combinando
./dondomcli.sh -c dondomcli.conf -i $(wget -qO - -6 https://ifconfig.co) -h $(hostname --fqdn)

# SCRIPT AUTOMÁTICO

# Consultar las IP que hay en el dominio
host -t A srv-internet.lechuga.eu 1.1.1.1 | grep "has address" | awk -F ' ' '{print $4}'
host -t AAAA srv-internet.lechuga.eu 1.1.1.1 | grep "has IPv6" | awk -F ' ' '{print $5}'

# afraid.org
wget -O - "http://lechuga123:gh16purl72@sync.afraid.org/nic/update?hostname=brocoli.mooo.com&address=$(host -t AAAA srv-internet.lechuga.eu 1.1.1.1 | grep "has IPv6" | awk -F ' ' '{print $5}')"

wget -O - "http://lechuga123:gh16purl72@v6.sync.afraid.org/nic/update?hostname=brocoli.mooo.com"

sudo tcpdump ip proto \\icmp
 

Mediante afraid

Proceso

1. Dar de alta el subdominio en afraid.org
Añadir tanto el registro AAAA como el A (con el mismo nombre)
Estructura del nombre: [máquina].mooo.com

2. Generar los enlaces de actualización
en https://freedns.afraid.org/dynamic/v2/
Activar con Enable Dynamic DNS

3. Pegar los enlaces en el sh del repo ddns-ipv4-ipv6
Debajo de la línea de puntos

4. En dondominio, poner un cname para el host
Por ejemplo, entryp.lechuga.eu es un CNAME de entryp.mooo.com