Bon reprenons,
D'abord il faut s'assurer de la méthode d'activation du réseau.
Par défaut Ubuntu utilise NetworkManager la "nouvelle méthode" qui peut entrer en conflit avec la méthode "traditionnelle" ifupdown lorsque les deux sont utilisées en même temps.
Pour vérifier tu peux faire :
(Attention les relevés de config viennent de 2 machines différente, celle ci-dessous vient de mon laptop sous Ubuntu avec NetworkManager les suivantes de mon pc sous Debian avec ifupdown)
# systemctl status NetworkManager
● NetworkManager.service - Network Manager
Loaded: loaded (/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
Active: active (running) since mar. 2016-07-19 23:38:48 CEST; 3 days ago
Main PID: 877 (NetworkManager)
CGroup: /system.slice/NetworkManager.service
├─ 877 /usr/sbin/NetworkManager --no-daemon
├─1271 /sbin/dhclient -d -q -sf /usr/lib/NetworkManager/nm-dhcp-helper -pf /var/run/dhclient-br0.pid -lf /var/lib/NetworkManager/dhclient-78a6eebe-6c43-477e-8709-c57c8fa74920-br0.lease
└─1412 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var/run/NetworkManager/dnsmasq.pid --listen-address=127.0.1.1 --cache-size=0 --proxy-
juil. 23 07:27:14 mld-lap dhclient[1271]: DHCPACK of 192.168.1.58 from 192.168.1.1
juil. 23 07:27:14 mld-lap NetworkManager[877]: <info> [1469251634.8192] address 192.168.1.58
juil. 23 07:27:14 mld-lap NetworkManager[877]: <info> [1469251634.8193] plen 24 (255.255.255.0)
juil. 23 07:27:14 mld-lap NetworkManager[877]: <info> [1469251634.8193] gateway 192.168.1.1
juil. 23 07:27:14 mld-lap NetworkManager[877]: <info> [1469251634.8193] server identifier 192.168.1.1
juil. 23 07:27:14 mld-lap NetworkManager[877]: <info> [1469251634.8193] lease time 86400
juil. 23 07:27:14 mld-lap NetworkManager[877]: <info> [1469251634.8193] hostname 'mld-lap'
juil. 23 07:27:14 mld-lap NetworkManager[877]: <info> [1469251634.8193] nameserver '192.168.1.1'
juil. 23 07:27:14 mld-lap NetworkManager[877]: <info> [1469251634.8193] dhcp4 (br0): state changed bound -> bound
juil. 23 07:27:14 mld-lap dhclient[1271]: bound to 192.168.1.58 -- renewal in 37471 seconds.
La il n'y a pas de doute, ça tourne.
De là deux possibilité :
- Tu fais ton bridge via NetworkManager
- Tu désactives NetworkManager et tu effectues ta config avec ifupdown (ce que tu as fait jusque là).
Pour une config avec ifupdown le fichier /etc/network/interfaces se paramètre au minimum tel que :
# The loopback network interface
auto lo br0
iface lo inet loopback
# The primary network interface
allow-hotplug eth1
iface eth1 inet manual
iface br0 inet static
pre-up ifconfig eth1 up
pre-up brctl addbr br0
pre-up brctl addif br0 eth1
address 192.168.1.100
broadcast 192.168.1.255
netmask 255.255.255.0
gateway 192.168.1.1
Attention cette config est sur une Debian 8.5 et dans sa construction est un poil archaïque mais les lignes de pre-up permettent de s'assurer que :
- eth1 est up
- créer le bridge
- ajouter l'interface au bridge
(j'ajoute directement les dns dans /etc/resolv.conf mais tu peux continuer à utiliser resolvconf en plaçant les lignes dns-nameservers et dns-search local dans les paramètres de br0)
A partir de là l'adresse IP de ta machine physique (ton hôte dans la suite) est attribuée à br0 et ton interface physique n'est plus que le connecteur vers l’extérieur ce qui nous donne :
br0 Link encap:Ethernet HWaddr 00:15:17:25:ac:6c
inet adr:192.168.1.100 Bcast:192.168.1.255 Masque:255.255.255.0
adr inet6: fe80::215:17ff:fe25:ac6c/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1274 errors:0 dropped:0 overruns:0 frame:0
TX packets:850 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
RX bytes:243332 (237.6 KiB) TX bytes:155967 (152.3 KiB)
[...]
eth1 Link encap:Ethernet HWaddr 00:15:17:25:ac:6c
adr inet6: fe80::215:17ff:fe25:ac6c/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2523 errors:0 dropped:0 overruns:0 frame:0
TX packets:2505 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:499641 (487.9 KiB) TX bytes:983668 (960.6 KiB)
Interruption:47 Mémoire:fd3a0000-fd3c0000
[...]
root@deb-wrk:~# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.00151725ac6c no eth1
[...]
root@deb-wrk:~# route -n
Table de routage IP du noyau
Destination Passerelle Genmask Indic Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 br0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
[...]
Tu remarques que l'adresse MAC (HWaddr) de br0 et de eth1 sont identiques, en fait br0 a hérité de l'adresse MAC de eth1
Ton hôte doit maintenant avoir un accès normal au réseau.
De la il faut paramétrer ta VM (en l’éteignant au préalable, pas obligatoire mais mieux) pour qu'elle utilise br0.
Tu peux le faire via l'interface graphique ou via virsh.
Une fois démarré tu devrais voir l'interface de ta VM (vnet0) dans br0
root@deb-wrk:~# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.00151725ac6c no eth1
vnet0
Et normalement là c'est bon.
@+