Ipv6 orange

bonjour,
l’ipv6 implémenté dans strech ne prend pas en compte inet6 préfixe 2a01:…
contenu dans ma livebox play

test-ipv6.com indique qu’il ne trouve pas mon adresse ipv6

pour info, sur 2 autres linux c’est ok pour test ipv6

j’ai activé ipv6 dans grub
je n’ai rien modifié dans/etc/network/interfaces

		subject-ipv6=addr,subject-ipv4=addr,subject-name=name,subject-fqdn=name,
root@alpha30:/etc# modprobe ipv6
root@alpha30:/etc# lsmod |grep ipv6
nf_nat_masquerade_ipv6    16384  1 ip6t_MASQUERADE
nf_log_ipv6            16384  2
nf_log_common          16384  2 nf_log_ipv6,nf_log_ipv4
nf_conntrack_ipv6      20480  3
nf_defrag_ipv6         36864  1 nf_conntrack_ipv6
nf_nat_ipv6            16384  1 ip6table_nat
nf_nat                 28672  4 nf_nat_masquerade_ipv6,nf_nat_ipv6,nf_nat_masquerade_ipv4,nf_nat_ipv4
nf_conntrack          135168  9 nf_conntrack_ipv6,nf_conntrack_ipv4,ipt_MASQUERADE,nf_nat_masquerade_ipv6,nf_nat_ipv6,nf_nat_masquerade_ipv4,xt_conntrack,nf_nat_ipv4,nf_nat
root@alpha30:/etc# ping6 -n ipv6.test-ipv6.com
connect: Le réseau n'est pas accessible
root@alpha30:/etc# 
root@alpha30:/etc# ifconfig -a
enp7s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.30  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::1e6f:65ff:fe3d:3516  prefixlen 64  scopeid 0x20<link>
        ether 1c:6f:65:3d:35:16  txqueuelen 1000  (Ethernet)
        RX packets 62254  bytes 39487247 (37.6 MiB)
        RX errors 0  dropped 2278  overruns 0  frame 0
        TX packets 47915  bytes 8918952 (8.5 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp8s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.0.30  netmask 255.0.0.0  broadcast 10.255.255.255
        inet6 fe80::20c:76ff:feae:b556  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:76:ae:b5:56  txqueuelen 1000  (Ethernet)
        RX packets 6859  bytes 1359133 (1.2 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6418  bytes 6298343 (6.0 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Boucle locale)
        RX packets 4  bytes 200 (200.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4  bytes 200 (200.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

root@alpha30:/etc# 

que manque-il?

Sujet déplacé dans la section “Support Debian”.

La section “Forum interne” est là pour discuter du forum (rapports de bug, suggestions, etc.).

il ne vous manque rien, tout simplement orange ne vous a pas accordé d’adresse en ipv6; je suis chez orange et je n’en ai pas non plus, toujours en ipv4.

Que veux-tu dire ? IPv6 est activé par défaut dans le noyau Debian, il n’y a pas besoin de l’activer.

Par quel bias l’interface réseau connectée à la box est-elle configurée et gérée ? Dans /etc/network/interfaces, NetworkManager, Wicd… ?

Je vois un tas de modules de netfilter qui sont chargés et qui peuvent laisser penser qu’il y a des règles ip6tables actives. S’il y a du filtrage, il pourrait bloquer les paquets nécessaires à l’autoconfiguration.
Quelle est la sortie de ip6tables-save ?
Pourquoi diable as-tu besoin du NAT IPv6 ? L’intérêt principal d’IPv6, c’est de fournir suffisamment d’adresses IP globales pour ne pas avoir besoin de NAT et éviter tous ses inconvénients.

JB ==>Anonyme2
bonjour,
dans ma LiveBox 4
-l’ipv6 est défini avec mon préfixe
le parefeu ipv6 est présent

+ ip -6 addr add 2a01:cb0c:835f:2400::/56 dev enp7s0
+ ip -f inet6 ro add default via 2a01:cb0c:835f:2400::1 dev enp7s0
root@alpha30:~# ifconfig -a
enp7s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.30  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::1e6f:65ff:fe3d:3516  prefixlen 64  scopeid 0x20<link>
        inet6 2a01:cb0c:835f:2400::  prefixlen 56  scopeid 0x0<global>
        ether 1c:6f:65:3d:35:16  txqueuelen 1000  (Ethernet)
        RX packets 137  bytes 39467 (38.5 KiB)
        RX errors 0  dropped 15  overruns 0  frame 0
        TX packets 109  bytes 32088 (31.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp8s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

attention pour l’ipv6, les LBs à partir d’un certain niveau
la mienne convenait, j’ai regardé

pour Pascal,
oui l’ipv6 est implémenté puisque j’ai un premier champ inet6
il me manquait l’inet6 du préfixe LiveBox qui est défini dans celle-ci, ainsi que
la fonctionnalité parefeu ipv6

root@alpha30:~# ip6tables-save
# Generated by ip6tables-save v1.6.0 on Fri Jun  9 08:33:13 2017
*raw
:PREROUTING ACCEPT [1361:218825]
:OUTPUT ACCEPT [113:37074]
COMMIT
# Completed on Fri Jun  9 08:33:13 2017
# Generated by ip6tables-save v1.6.0 on Fri Jun  9 08:33:13 2017
*mangle
:PREROUTING ACCEPT [1361:218825]
:INPUT ACCEPT [1361:218825]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [113:37074]
:POSTROUTING ACCEPT [164:68004]
COMMIT
# Completed on Fri Jun  9 08:33:13 2017
# Generated by ip6tables-save v1.6.0 on Fri Jun  9 08:33:13 2017
*nat
:PREROUTING ACCEPT [120:18423]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [35:3787]
:POSTROUTING ACCEPT [21:2667]
-A POSTROUTING -o enp7s0 -j MASQUERADE
COMMIT
# Completed on Fri Jun  9 08:33:13 2017
# Generated by ip6tables-save v1.6.0 on Fri Jun  9 08:33:13 2017
*filter
:INPUT DROP [1275:184623]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [93:35642]
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j LOG
-A INPUT -p icmp -j DROP
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 137 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 138 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 139 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 445 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A INPUT -p udp -m udp --dport 80 -j ACCEPT
-A INPUT -p udp -m udp --dport 443 -j ACCEPT
-A INPUT -p udp -m udp --dport 3306 -j ACCEPT
-A INPUT -p udp -m udp --dport 137 -j ACCEPT
-A INPUT -p udp -m udp --dport 138 -j ACCEPT
-A INPUT -p udp -m udp --dport 139 -j ACCEPT
-A INPUT -p udp -m udp --dport 445 -j ACCEPT
-A INPUT -p udp -m udp --dport 631 -j ACCEPT
-A INPUT -i enp8s0 -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p ipv6-icmp -m icmp6 --icmpv6-type 133 -m hl --hl-eq 255 -j ACCEPT
-A INPUT -p ipv6-icmp -m icmp6 --icmpv6-type 135 -m hl --hl-eq 255 -j ACCEPT
-A INPUT -p ipv6-icmp -m icmp6 --icmpv6-type 136 -m hl --hl-eq 255 -j ACCEPT
-A INPUT -j LOG
-A FORWARD -i enp7s0 -o enp8s0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -o enp7s0 -j ACCEPT
-A OUTPUT -p ipv6-icmp -m icmp6 --icmpv6-type 134 -j ACCEPT
-A OUTPUT -p ipv6-icmp -m icmp6 --icmpv6-type 135 -j ACCEPT
-A OUTPUT -p ipv6-icmp -m icmp6 --icmpv6-type 136 -j ACCEPT
COMMIT
# Completed on Fri Jun  9 08:33:13 2017
root@alpha30:~# 

si mes souvenirs sont exacts, c’est un de tes examples

pourquoi le nat,
les vieilles habitudes de mes passerelles,
à la retraite on s’amuse comme on peut, surtout quand il pleut

Bonjour,
Est-il possible d’avoir les retours de ip a, ip -6 r et cat /proc/sys/net/ipv6/conf/*/disable_ipv6 ?

Merci.

bonjour,
avec un peu de retard:

root@alpha30:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp7s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 1c:6f:65:3d:35:16 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.30/24 brd 192.168.1.255 scope global enp7s0
       valid_lft forever preferred_lft forever
    inet6 2a01:cb0c:835f:2400::/56 scope global tentative dadfailed 
       valid_lft forever preferred_lft forever
    inet6 fe80::1e6f:65ff:fe3d:3516/64 scope link 
       valid_lft forever preferred_lft forever
3: enp8s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:76:ae:b5:56 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.30/8 brd 10.255.255.255 scope global enp8s0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:76ff:feae:b556/64 scope link 
       valid_lft forever preferred_lft forever
root@alpha30:~# ip -6 r
2a01:cb0c:835f:2400::/56 dev enp7s0 proto kernel metric 256  pref medium
fe80::/64 dev enp8s0 proto kernel metric 256  pref medium
fe80::/64 dev enp7s0 proto kernel metric 256  pref medium
default via 2a01:cb0c:835f:2400::1 dev enp7s0 metric 1024  pref medium
root@alpha30:~# cat /proc/sys/net/ipv6/conf/*/disable_ipv6
0
0
0
0
0
root@alpha30:~# 

Remarques :

  • Les règles ip6tables avec -p icmp ne servent à rien puisque le protocole ICMP n’est pas utilisé en IPv6, c’est le protocole ICMPv6 ou IPV6-ICMP qui est utilisé à la place.

  • Je ne vois pas de règle acceptant en entrée sur enp7s0 le type ICMPv6 134 (Router Advertisement) qui est nécessaire pour l’autoconfiguration sans état. Accepter le type 133 (Router Solicitation) en entrée ou le type 134 en sortie n’est utile que pour une machine faisant office de routeur IPv6.

  • Ce jeu de règles et la présence de deux interfaces ethernet laissent penser que cette machine doit servir de routeur IPv6. Si c’est le cas, et donc si le sysctl net.ipv6.conf.all.forwarding=1, cela désactive l’autoconfiguration sans état. Sur les noyaux récents il y a une valeur de sysctl pour forcer l’autoconfiguration même avec forwarding=1.

bonjour, mon /etc/sysctl.conf

root@alpha30:~# pg /etc/sysctl.conf
#
# /etc/sysctl.conf - Configuration file for setting system variables
# See /etc/sysctl.d/ for additional system variables.
# See sysctl.conf (5) for information.
#

#kernel.domainname = example.com

# Uncomment the following to stop low-level messages on console
#kernel.printk = 3 4 1 3

##############################################################3
# Functions previously found in netbase
#

# Uncomment the next two lines to enable Spoof protection (reverse-path filter)
# Turn on Source Address Verification in all interfaces to
# prevent some spoofing attacks
#net.ipv4.conf.default.rp_filter=1
#net.ipv4.conf.all.rp_filter=1

# Uncomment the next line to enable TCP/IP SYN cookies
# See http://lwn.net/Articles/277146/
# Note: This may impact IPv6 TCP sessions too
#net.ipv4.tcp_syncookies=1

# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1

# Uncomment the next line to enable packet forwarding for IPv6
#  Enabling this option disables Stateless Address Autoconfiguration
#  based on Router Advertisements for this host
net.ipv6.conf.all.forwarding=1


###################################################################
# Additional settings - these settings can improve the network
# security of the host and prevent against some network attacks
# including spoofing attacks and man in the middle attacks through
# redirection. Some network environments, however, require that these
# settings are disabled so review and enable them as needed.
#
# Do not accept ICMP redirects (prevent MITM attacks)
#net.ipv4.conf.all.accept_redirects = 0
#net.ipv6.conf.all.accept_redirects = 0
# _or_
# Accept ICMP redirects only for gateways listed in our default
# gateway list (enabled by default)
# net.ipv4.conf.all.secure_redirects = 1
#
# Do not send ICMP redirects (we are not a router)
#net.ipv4.conf.all.send_redirects = 0
#
# Do not accept IP source route packets (we are not a router)
#net.ipv4.conf.all.accept_source_route = 0
#net.ipv6.conf.all.accept_source_route = 0
#
# Log Martian Packets                                                                                                                                                                 
#net.ipv4.conf.all.log_martians = 1
#

###################################################################
# Magic system request Key
# 0=disable, 1=enable all
# Debian kernels have this set to 0 (disable the key)
# See https://www.kernel.org/doc/Documentation/sysrq.txt
# for what other values do
kernel.sysrq=1

###################################################################
# Protected links
#
# Protects against creating or following links under certain conditions
# Debian kernels have both set to 1 (restricted) 
# See https://www.kernel.org/doc/Documentation/sysctl/fs.txt
#fs.protected_hardlinks=0
#fs.protected_symlinks=0

icmp_echo_ignore_broadcasts = 1

net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
net.ipv6.conf.eth0.disable_ipv6 = 0

root@alpha30:~#    

pour l’icmpv6 type 133 manquerait-il un 2a01…:1?
ou un
fe80:…:1.

Non, comme je l’ai déjà écrit c’est le type 134 qui manque pour accepter les annonces de routeur de la box contenant le préfixe.

Mais ce n’est pas suffisant : comme je l’ai aussi déjà écrit, puisque le forwarding IPv6 est activé, alors l’autoconfiguration grâce aux annonces de routeur est désactivée par défaut. Pour passer outre sur l’interface enp7s0 qui fait face à la box, il faut net.ipv6.conf.enp7s0.accept_ra=2.

Source : https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt

à priori la valeur 2 étè déjà présente:

root@alpha30:/proc/sys/net/ipv6/conf# cd enp7s0;ls
accept_dad		    accept_ra_rtr_pref		  drop_unsolicited_na	       max_addresses			  proxy_ndp			    stable_secret
accept_ra		    accept_redirects		  enhanced_dad		       max_desync_factor		  regen_max_retry		    suppress_frag_ndisc
accept_ra_defrtr	    accept_source_route		  force_mld_version	       mc_forwarding			  router_probe_interval		    temp_prefered_lft
accept_ra_from_local	    addr_gen_mode		  force_tllao		       mldv1_unsolicited_report_interval  router_solicitation_delay	    temp_valid_lft
accept_ra_min_hop_limit     autoconf			  forwarding		       mldv2_unsolicited_report_interval  router_solicitation_interval	    use_oif_addrs_only
accept_ra_mtu		    dad_transmits		  hop_limit		       mtu				  router_solicitation_max_interval  use_optimistic
accept_ra_pinfo		    disable_ipv6		  ignore_routes_with_linkdown  ndisc_notify			  router_solicitations		    use_tempaddr
accept_ra_rt_info_max_plen  drop_unicast_in_l2_multicast  keep_addr_on_down	       optimistic_dad			  seg6_enabled
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# cat accep_ra
cat: accep_ra: Aucun fichier ou dossier de ce type
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# cat accept_ra
2
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# cat accept_ra*
2
1
0
1
1
1
0
1
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# cat accept_redirects
1
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# cat autoconf
1
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# 

Bien, donc il ne reste qu’à ajouter une règle ip6tables pour accepter le type ICMPv6 134 et ça devrait être bon.

vous confirmez ce que je pensais; ma LB est déjà un modèle ancien.

j’ai saisi:

root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# ip6tables -I INPUT -p icmpv6 --icmpv6-type 133/0 -j ACCEPT root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# ip6tables -A OUTPUT -p icmpv6 --icmpv6-type 134/0 -j ACCEPT root@alpha30:/proc/sys/net/ipv6/conf/enp7s0#

à priori ce n’est pas suffisant pour moi et test ipv6.com


Test with IPv4 DNS record 	  	
ok (0.112s) using ipv4
Test with IPv6 DNS record 	  	
timeout (6.163s)
Test with Dual Stack DNS record 	  	
ok (0.134s) using ipv4
Test for Dual Stack DNS and large packet 	  	
ok (0.492s) using ipv4
Test IPv4 without DNS 	  	
ok (0.121s) using ipv4
Test IPv6 without DNS 	  	
timeout (6.139s)
Test IPv6 large packet 	  	
timeout (6.145s)
Test if your ISP's DNS server uses IPv6 	  	
ok (0.796s) using ipv4
Find IPv4 Service Provider 	  	
ok (0.490s) using ipv4 ASN 3215
Find IPv6 Service Provider 	  	
timeout (6.158s)

il me reste dans mon tablier:
c’est du copier/coller

Les règles pour un poste client peuvent s'écrire :

# Router Solicitation / Advertisement

ip6tables -A OUTPUT -d ff02::/16 -p icmpv6 --icmpv6-type 133/0 -j ACCEPT

ip6tables -A INPUT -s fe80::/64 -p icmpv6 --icmpv6-type 134/0 -j ACCEPT

avec ff02 prenant pour valeur 2a01
j’attends la bénèdiction car cela dépasse mes trés petites compétences “réseau”

Je n’ai pas dû être assez clair. Le type 134 doit être accepté en entrée (INPUT) sur l’interface connectée à la box.

à priori cela fonctionne:

	Your IPv4 address on the public Internet appears to be 90.109.176.52

	Your IPv6 address on the public Internet appears to be 2a01:cb0c:835f:2400:1e6f:65ff:fe3d:3516

	Your Internet Service Provider (ISP) appears to be AS3215, FR

	Since you have IPv6, we are including a tab that shows how well you can reach other IPv6 sites. [more info]

	Your browser has real working IPv6 address - but is avoiding using it. We're concerned about this. [more info]

	Good news! Your current configuration will continue to work as web sites enable IPv6.

	Your DNS server (possibly run by your ISP) appears to have IPv6 Internet access.

j’ai rajouté ceci:

root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# ip6tables -I INPUT -p icmpv6 --icmpv6-type 133/0 -j ACCEPT
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# ip6tables -A OUTPUT -p icmpv6 --icmpv6-type 134/0 -j ACCEPT
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# ip6tables -A INPUT -s fe80::/64 -p icmpv6 --icmpv6-type 134/0 -j ACCEPT
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# ip6tables -A OUTPUT -d 2a01:835f:2400:0111:fde1:81de:bdbb/64 -p icmpv6 --icmpv6-type 133/0 -j ACCEPT
ip6tables v1.6.0: host/network `2a01:835f:2400:0111:fde1:81de:bdbb' not found
Try `ip6tables -h' or 'ip6tables --help' for more information.
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# ip6tables -A OUTPUT -d 2a01:cb0c:835f:2400::/56 -p icmpv6 --icmpv6-type 133/0 -j ACCEPT
root@alpha30:/proc/sys/net/ipv6/conf/enp7s0# 

merci encore, vérifie
je sauvegarde sinon j’ai tout perdu

Tu en as trop fait.
Une règle autorisant le type 134 en INPUT aurait suffi.
Les règles ACCEPT en OUTPUT sont inutiles puisque la politique par défaut de la chaîne est déjà ACCEPT.
L’adresse IPv6 de la 4e règle est incomplète, il manque un bloc de 4 chiffres. Qu’est-censée être cette adresse ? De toute façon la règle était inutile, comme je viens de l’écrire.

la 4° régle:
ip6tables -A OUTPUT -d 2a01:cb0c:835f:2400::/56 -p icmpv6 --icmpv6-type 133/0 -j ACCEPT

correspond u préfixe de votre Livebox
je l’obtient avec 192.168.1.1 et passwd
configuration avancée internet ipv6
attention ceci n’est valable pour les LB récentes

un champ parefeu ipv6 existe, je ne l’utise pas
encore merci
A+
JB1

Je parlais de l’“adresse” 2a01:835f:2400:0111:fde1:81de:bdbb qui est dans la règle qui provoque une erreur.

Quant à la règle qui contient le préfixe de la box, je ne vois pas quelle est son utilité. Peux-tu m’éclairer ?

Note que le préfixe de la box /56 est le préfixe entier routé d’internet vers celle-ci, mais ce n’est normalement pas le préfixe annoncé sur le LAN qui doit être un des /64 inclus dans le /56 (qui contient 256 /64), car l’autoconfiguration ne fonctionne qu’avec un préfixe /64. Tu peux le vérifier avec ifconfig ou ip -6 addr.