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

13

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 j'ai défini sur Hôte uniquement que j'utiliserai pour SSH et accéderai au serveur Web à partir de 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/interfacesfichier sur CentOS 6.5 donc je suppose que la configuration se fait différemment.

Après avoir configuré les adaptateurs NAT et Host-only, j'ai démarré la machine virtuelle et ip addr showj'ai fait une et j'ai 2 interfaces, eth0et eth2(je ne sais pas pourquoi a eth1été ignoré). Je configure donc les deux ifcfg-ethXfichiers /etc/sysconfig/network-scripts, en définissant eth0DHCP (pour NAT) et eth2IP statique (pour hôte uniquement). Pour eth0, ONBOOT=yestandis que pour eth2, ONBOOT=no. Avec cette configuration, je peux pingInternet, c'est-à ping -c 3 www.google.com- dire et il obtient une réponse, donc je sais que je peux me connecter à Internet (alors que le temps eth2est en panne).

Ensuite, je ifup eth2. Depuis la machine hôte, je SSH en utilisant l'IP statique que j'ai définie et je peux me connecter sans problème. Mais quand je le fais ping -c www.google.comcette fois-ci, cela échoue et je sais que j'ai perdu ma connexion à Internet même si elle eth0est toujours active. Faire un route -nme montre une sortie tabulaire avec eth2prendre la première et la dernière ligne eth0entre les deux (désolé, je ne peux pas poster la sortie réelle parce que j'ai supprimé la VM par frustration ...).

J'ai créé une nouvelle machine virtuelle CentOS et je voudrais procéder à la même configuration. Mon réseau-fu est presque inexistant, donc je suis un n00b. Je voudrais quelques conseils sur la façon de le faire correctement (c'est-à-dire comment configurer l'adaptateur NAT à utiliser eth0et définir l'adaptateur hôte uniquement à utiliser eth1et non eth2, comment le rendre eth0toujours utilisable même si eth1/ eth2est en place et fonctionne).

Mise à jour

J'ai donc la nouvelle machine virtuelle opérationnelle et cela semble fonctionner maintenant si j'ai le premier adaptateur réglé sur hôte uniquement et le deuxième adaptateur réglé sur NAT. Il est configuré comme suit:

Paramètres réseau VirtualBox

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

/etc/sysconfig/network-scripts/ifcfg-ethXParamètres de la machine virtuelle CentOS

# 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
baktin
la source
Quelle est votre passerelle par défaut?
spuder
@spuder Pour l'interface hôte uniquement? Si je me souviens bien, vboxnet0(hôte uniquement si) a été défini sur 192.168.56.1donc je suppose que c'est la passerelle par défaut. Je ne me souviens pas de l'interface NAT.
baktin
Si le problème persiste, pourquoi ne nous donnez-vous pas la sortie de ip routesur la nouvelle VM ...? Et celle de ip addr.
Hauke ​​Laging
@HaukeLaging J'ai mis à jour la question avec les sorties que vous avez demandées. Il semble fonctionner maintenant, ayant le premier adaptateur à l'hôte uniquement et le second à NAT. Mais je pense que c'est une solution de contournement ... et j'aimerais savoir la meilleure façon de le faire si j'ai défini le premier adaptateur sur NAT et le second sur hôte uniquement.
baktin
Si vous essayez de répliquer cela, utilisez "ifconfig -a" pour obtenir le MAC d'eth2 qui doit être utilisé dans la ligne HWADDR. Et vous voudrez probablement remplacer eth2 par eth1. Comme vous aurez probablement eth1, pas eth2
Mangirdas Skripka

Réponses:

9

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 le suivant: comment procéder le routage 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.

Hauke ​​Laging
la source
2
La suppression de la passerelle pour l'interface hôte uniquement a fonctionné pour moi. Merci.
Baktin
-1

J'ai une configuration de

Adapter 1 = NAT = eth0
Adapter 2 = Bridged Adapter = eth1

Sous Oracle Linux (RHEL / CentOS), j'exécute l'application Connexions réseau
et je mets eth0 sur une adresse IP fixe
et je mets eth1 sur DHCP automatique

Lorsque vous effectuez un ifconfig, je vois que eth0 et eth1 ont des adresses inet définies et que la communication de l'hôte au travail invité et de l'invité à Internet fonctionne.

Il y a eu des moments où je ne démarre pas VBOX pendant un certain temps et je trouve que la communication ne fonctionnera pas. Aucune idée.

Aujourd'hui, j'ai commencé le GUEST et aucune connexion réseau (dans les deux sens), j'ai redémarré et cela fonctionne.

Peut-être pour les mises à niveau VBXO, je ne sais pas.

BTW: Pour communiquer avec Oracle DB, définissez la redirection de port sur le NAT (eth0) de 127.0.0.1 vers le port IP invité 1521. Pour ce faire, à partir de VBOX.

J'ai également mon pare-feu désactivé.

al881
la source