J'ai un système avec deux NIC dessus. Cette machine et quelques appareils qui l'accompagnent seront déplacés et connectés à différents LAN ou parfois elle utilisera une connexion à distance.
eth0:
- 10.x.x.x address space
- no internet gateway
- only a few devices
eth1 (when used):
- 172.16.x.x or 192.168.x.x or other address spaces
- access to the gateway from LAN to internet
ppp0 (when used):
- internet access through dialup using KPPP
J'utilise ifconfig pour monter ou descendre des interfaces (sauf avec ppp0, qui est géré par KPPP).
Si j'évoque eth1 en premier, il obtient une adresse de son DHCP et obtient la passerelle et cela est ajouté au routage donc il n'y a aucun problème pour atteindre le LAN et Internet.
Si j'affiche eth0 en premier ou en second, il obtient son adresse et définit la passerelle par défaut dans son espace d'adressage (dans la plage 10.xxx). Si j'évoque eth0 en premier et eth1 en second, la passerelle par défaut est toujours maintenue dans la plage 10.xxx.
Donc, peu importe ce que je fais, eth0 remplacera eth1 et "revendiquera" la passerelle dans le routage.
Existe-t-il un moyen d'empêcher eth0 de revendiquer la passerelle ou de s'assurer que eth1 (s'il est affiché en 2e) utilise sa passerelle? Ou puis-je en quelque sorte prioriser un classement de la passerelle de l'interface à utiliser par rapport aux autres?
Je veux essentiellement m'assurer que la passerelle d'espace d'adressage par défaut d'eth1 est utilisée si elle est active, et sinon, la passerelle par défaut de ppp0 est utilisée. Je voudrais pouvoir empêcher eth0 d'avoir jamais la passerelle par défaut.
ifconfig
provoque toute sorte d'interaction DHCP. Leifup
fera généralement en commençantdhclient
. Vos interfaces eth * sont-elles éventuellement mises en place par le processus de démarrage du système, par exemple/etc/init.d/network
, ou par NetworkManager?