Sous FreeBSD, un ifconfig semble supprimer la route de la passerelle par défaut, même si l'on donne la même adresse IP (par exemple, en mettant à jour le masque de réseau uniquement). S'agit-il d'un bogue ou d'une fonctionnalité ?
Autant que je me souvienne, Linux ne change pas la passerelle par défaut dans ce cas.
Réponses
Trop de publicités?Sous FreeBSD, un ifconfig
qui supprime la connectivité directe à un sous-réseau supprime également les routes contenant ce sous-réseau (IIRC la mise à jour des netmasks est réduite à une suppression et un remplacement). Il s'agit d'une "fonctionnalité" permettant de ne pas perturber votre configuration de routage en essayant de parler à un hôte qu'il ne peut plus atteindre, bien qu'elle provoque sa part de confusion lorsque les utilisateurs rencontrent des routes qui disparaissent.
Voir aussi : http://forums.freebsd.org/showthread.php?t=12132
Je cherchais un moyen de garder la route vers le gw par défaut en place, mais depuis que j'ai vu ce fil et essayé par moi-même, je suppose qu'il n'y a aucun moyen. La seule chose que j'ai dû faire est de définir manuellement le gw par défaut juste après avoir défini l'ip :
sudo ifconfig eth0 10.0.0.2 subnet 255.255.255.0
sudo route add default gw 10.0.0.138
Gardez à l'esprit que si vous faites cela à distance, il vaut mieux exécuter les deux commandes avec && ou vous serez bloqué.
sudo ifconfig eth0 10.0.0.2 subnet 255.255.255.0 && sudo route add default gw 10.0.0.138