web-dev-qa-db-fra.com

ne peut pas supprimer la passerelle par défaut IPv6

Les commandes ci-dessous devraient être assez explicites. Veuillez noter que la route pour laquelle je reçois un échec est obtenue par RA et a une échéance très réduite (e Flag in UDAe).

 @vm:~$ ip -6 route 
 2001:4860:4001:800::1002 via fe80::20c:29ff:fe87:f9e7 dev eth1  proto static  metric 1024
 2001:4860:4001:800::1003 via fe80::20c:29ff:fe87:f9e7 dev eth1  proto static  metric 1024
 2001:4860:4001:800::1005 via fe80::20c:29ff:fe87:f9e7 dev eth1  proto static  metric 1024
 2001:4860:4001:803::100e via fe80::20c:29ff:fe87:f9e7 dev eth1  proto static  metric 1024
 fd00:ffff:ffff:fff1::/64 dev eth1  proto kernel  metric 256  expires 2592300sec
 fe80::/64 dev eth1  proto kernel  metric 256
 default via fe80::20c:29ff:fe87:f9e7 dev eth1  proto static  metric 1
 default via fe80::20c:29ff:fe87:f9e7 dev eth1  proto kernel  metric 1024  expires 1776sec
 @vm:~$
 @vm:~$
 @vm:~$
 @vm:~$ Sudo route -6 delete default gw fe80::20c:29ff:fe87:f9e7
 @vm:~$ ip -6 route
 2001:4860:4001:800::1002 via fe80::20c:29ff:fe87:f9e7 dev eth1  proto static  metric 1024
 2001:4860:4001:800::1003 via fe80::20c:29ff:fe87:f9e7 dev eth1  proto static  metric 1024
 2001:4860:4001:800::1005 via fe80::20c:29ff:fe87:f9e7 dev eth1  proto static  metric 1024
 2001:4860:4001:803::100e via fe80::20c:29ff:fe87:f9e7 dev eth1  proto static  metric 1024
 fd00:ffff:ffff:fff1::/64 dev eth1  proto kernel  metric 256  expires 2592279sec
 fe80::/64 dev eth1  proto kernel  metric 256
 default via fe80::20c:29ff:fe87:f9e7 dev eth1  proto kernel  metric 1024  expires 1755sec
 @vm:~$
 @vm:~$
 @vm:~$ Sudo route -6 delete ::/0 gw fe80::20c:29ff:fe87:f9e7 dev eth1
 SIOCDELRT: No such process
 @vm:~$
 @vm:~$
 @vm:~$ route -n6
 Kernel IPv6 routing table
 Destination                    Next Hop                   Flag Met Ref Use If
 2001:4860:4001:800::1002/128   fe80::20c:29ff:fe87:f9e7   UG   1024 0     0 eth1
 2001:4860:4001:800::1003/128   fe80::20c:29ff:fe87:f9e7   UG   1024 0     0 eth1
 2001:4860:4001:800::1005/128   fe80::20c:29ff:fe87:f9e7   UG   1024 0     0 eth1
 2001:4860:4001:803::100e/128   fe80::20c:29ff:fe87:f9e7   UG   1024 0     0 eth1
 fd00:ffff:ffff:fff1::/64       ::                         UAe  256 0     0 eth1
 fe80::/64                      ::                         U    256 0     0 eth1
 ::/0                           fe80::20c:29ff:fe87:f9e7   UGDAe 1024 0     0 eth1
 ::/0                           ::                         !n   -1  1   349 lo
 ::1/128                        ::                         Un   0   1     3 lo
 fd00:ffff:ffff:fff1:a00:27ff:fe7f:7245/128 ::                         Un   0   1     0 lo
 fd00:ffff:ffff:fff1:fce8:ce07:b9ea:389f/128 ::                         Un   0   1     0 lo
 fe80::a00:27ff:fe7f:7245/128   ::                         Un   0   1     0 lo
 ff00::/8                       ::                         U    256 0     0 eth1
 ::/0                           ::                         !n   -1  1   349 lo
 @vm:~$

MISE À JOUR: Une autre question concerne l'utilisation de l'adresse locale du lien comme itinéraire par défaut.

1
PnotNP

L'itinéraire que vous essayez de supprimer ressemble à un itinéraire ajouté automatiquement par le noyau en réponse à une annonce de routeur (RA). Sachez que si vous le supprimez, il reviendra probablement tout seul dans les 5 minutes suivant l’envoi par le routeur d’une autre annonce, comme il le fait normalement périodiquement. Si vous ne voulez pas que votre machine écoute les annonces de routeur, vous voudrez probablement procéder ainsi:

echo 0 >/proc/sys/net/ipv6/conf/eth1/accept_ra

Si vous faites cela, vous n’avez même pas à vous soucier de le supprimer manuellement: il disparaîtra dans quelques minutes quand il expirera naturellement.

Néanmoins, si vous le souhaitez, vous pouvez le supprimer manuellement. C'est juste qu'il semble que la commande route ne soit pas capable de le faire. Utilisez la commande ip à la place:

ip route del ::/0 via fe80::20c:29ff:fe87:f9e7 dev eth1

En fait, si vous ne travaillez que sous Linux, je vous recommande de toujours utiliser la commande ip en remplacement moderne de tout des commandes suivantes: route, ifconfig, et netstat. Sa syntaxe est beaucoup plus facile à gérer que n'importe laquelle de ces autres commandes, elle les unifie toutes ensemble et il existe des fonctions (telles que ip rule et ip tunnel) qui ne sont disponibles que par son intermédiaire.

1
Celada