web-dev-qa-db-fra.com

Comment configurer correctement 2 interfaces réseau dans CentOS (fonctionnant dans VirtualBox)?

J'ai une machine VirtualBox exécutant CentOS 6.5. J'ai créé 2 adaptateurs réseau pour cela dans les paramètres de mise en réseau de VirtualBox pour la machine. Le premier est NAT que je veux que l'invité utilise pour se connecter à Internet et le second que je mets sur Host-only que j'utiliserai sur SSH et accèderai au serveur Web depuis l'ordinateur hôte. - Ce tutoriel sur les forums VirtualBox est ce que je veux réaliser mais je n'arrive pas à trouver le /etc/network/interfaces fichier sur CentOS 6.5 donc je suppose que la configuration se fait différemment.

Après avoir configuré à la fois NAT et les adaptateurs réservés aux hôtes, j'ai commencé le VM et fait un ip addr show et j'ai 2 interfaces, eth0 et eth2 (Je ne sais pas pourquoi eth1 a été en quelque sorte ignoré). Je configure donc les deux ifcfg-ethX fichiers dans /etc/sysconfig/network-scripts, réglage eth0 pour être DHCP (pour NAT) et eth2 pour être une adresse IP statique (pour l'hôte uniquement). Pour eth0, ONBOOT=yes tandis que pour eth2, ONBOOT=no. Avec cette configuration, je peux ping Internet, c'est-à-dire ping -c 3 www.google.com et il reçoit une réponse, donc je sais que je peux me connecter à Internet (tandis que eth2 est éteint).

Ensuite je ifup eth2. Depuis la machine hôte, j'utilise SSH en utilisant l'IP statique que j'ai définie et je peux me connecter sans problème. Mais quand je fais ping -c www.google.com cette fois, cela échoue et je sais que j'ai perdu ma connexion à Internet même si eth0 est toujours en place. Faire un route -n me montre une sortie tabulaire avec eth2 en occupant les première et dernière lignes tandis que eth0 est entre les deux (désolé, je ne peux pas publier la sortie réelle car j'ai supprimé le VM par frustration ...).

J'ai créé un nouveau CentOS VM et j'aimerais procéder avec la même configuration. Mon réseau-fu est presque inexistant, donc je suis un n00b. Je voudrais comme quelques conseils sur la façon de le faire correctement (c'est-à-dire comment définir l'adaptateur NAT pour utiliser eth0 et définissez l'adaptateur hôte uniquement pour utiliser eth1 et pas eth2, comment faire eth0 toujours utilisable même si eth1/eth2 est opérationnel).

Mise à jour

J'ai donc le nouveau VM opérationnel et il semble fonctionner maintenant si j'ai le premier adaptateur réglé sur Host-only et le deuxième adaptateur réglé sur NAT. Il est configuré comme ça :

Paramètres réseau VirtualBox

  • Carte réseau 1: hôte uniquement (vboxnet0 L'adresse IP est définie sur 10.3.0.1, masque de réseau 255.255.255.0 et DHCP est désactivé)
  • Carte réseau 2: NAT (DHCP)

CentOS VM /etc/sysconfig/network-scripts/ifcfg-ethX paramètres

# ifcfg-eth0
DEVICE=eth0
HWADDR=08:00:27:EC:6C:B9
TYPE=Ethernet
UUID=1339bc30-...
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
DHCPCLASS=
IPADDR=10.3.0.100
NETMASK=255.255.255.0
GATEWAY=10.3.0.1

# ifcfg-eth2
DEVICE=eth2
HWADDR=08:00:27:EB:73:BA
TYPE=Ethernet
UUID=1339bc30-...
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp

Résultat de ip route

10.0.3.0/24  dev  eth2  proto  kernel  scope  link  src  10.0.3.15
10.3.0.0/24  dev  eth0  proto  kernel  scope  link  src  10.3.0.100
169.254.0.0/16  dev  eth0  scope  link  metric  1002
169.254.0.0/16  dev  eth2  scope  link  metric  1003
default via 10.0.3.2 dev eth2

Résultat de ip addr

1:  lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00:00
     inet 127.0.0.1/8 scope Host lo
     inet6 ::1/128 scope Host
        valid_lft forever preferred_lft forever
2:  eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
     link/ether 08:00:27:ec:6c:b9 brd ff:ff:ff:ff:ff:ff
     inet 10.3.0.100/24 brd 10.3.0.255 scope global eth0
     inet6 fe80::a00:27ff:feec:6cb9/64 scope link
        valid_lft forever preferred_lft forever
3:  eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
     link/ether 08:00:27:eb:73:ba brd ff:ff:ff:ff:ff:ff
     inet 10.0.0.15/24 brd 10.0.3.255 scope global eth2
     inet6 fe80::a00:27ff:feeb:73ba/64 scope link
        valid_lft forever preferred_lft forever
13
baktin

Je suppose que le problème est (ou était) que la définition de la passerelle entre en collision avec DHCP. D'une certaine manière, l'ordre des interfaces semble influencer cela.

Le problème de base est: comment le routage doit-il être effectué avec deux cartes réseau? Si je comprends bien, la carte hôte uniquement doit être utilisée pour les connexions à l'hôte uniquement. Par conséquent, vous ne devez définir aucune passerelle pour cette interface. Mais cela ne fonctionne peut-être que si la première interface utilise DHCP.

De plus, vous pouvez envisager d'éviter complètement DHCP. L'interface NAT fonctionne également avec une configuration statique.

9
Hauke Laging