Pagina 1 di 1

Slackware 12.2 - VirtualBox - DHCP non funzionante

Inviato: dom 14 dic 2008, 21:52
da DanBadJar
Ciao a tutti,
ho un problema abbastanza strano con Slackware 12.2, VirtualBox (PUEL) e una macchina virtuale Windows XP.
Avevo la necessità di rendere il sistema guest (Windows XP) visibile all'interno della rete, come se fosse una macchina fisica, facendo anche in modo che ottenesse un IP tramite un DHCP server. Ha sempre funzionato, ma da quando ho installato Slackware 12.2 si comporta in modo strano.
In pratica il sistema Slackware pinga la macchina Windows XP e viceversa, ma solo se questa ha un indirizzo IP fisso!
In pratica Windows non è in grado di ottenere un indirizzo IP tramite DHCP.
Ovviamente la macchina virtuale Windows XP è configurata in modo tale da utilizzare un'interfaccia host, dato che è l'unica modalità che permette una configurazione che fa a caso mio.
Tutto il networking è stato configurato con questo script

Codice: Seleziona tutto

  ########## Crea il Bridge br0 #############
  brctl addbr br0
  ########## Azzeramento scheda di rete #############
  ifconfig eth0 0.0.0.0
  ########## Aggiunge l'interfaccia eth0 al Bridge br0 ##########
  brctl addif br0 eth0
  ########## Crea l'interfaccia virtuale vbox0 tramite l'utility VBoxAddIF e la aggiunge a br0 ##########
  VBoxAddIF vbox0 danbadjar br0
  ########## Configura l'ip del bridge ##############
  dhcpcd br0
ottenendo che sia l'interfaccia eth0 che la vbox0 sono collegate al bridge br0.
Il bridge br0 ottiene correttamente un IP tramite DHCP, così da Slackware sono visibile in rete e posso navigare su Internet.
Ecco la situazione dopo lo script:

Codice: Seleziona tutto

br0       Link encap:Ethernet  HWaddr 00:23:ae:03:dd:6c
          inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::223:aeff:fe03:dd6c/64 Scope:Link
          UP BROADCAST NOTRAILERS RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2005 errors:0 dropped:0 overruns:0 frame:0
          TX packets:950 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:421391 (411.5 KiB)  TX bytes:171084 (167.0 KiB)

eth0      Link encap:Ethernet  HWaddr 00:23:ae:03:dd:6c
          inet6 addr: fe80::223:aeff:fe03:dd6c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3382 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1126 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:472819 (461.7 KiB)  TX bytes:194169 (189.6 KiB)
          Interrupt:16

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:460 errors:0 dropped:0 overruns:0 frame:0
          TX packets:460 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:13340 (13.0 KiB)  TX bytes:13340 (13.0 KiB)

vbox0     Link encap:Ethernet  HWaddr a2:b2:96:d4:85:b8
          inet6 addr: fe80::a0b2:96ff:fed4:85b8/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:175 errors:0 dropped:0 overruns:0 frame:0
          TX packets:861 errors:0 dropped:158 overruns:0 carrier:0
          collisions:0 txqueuelen:500
          RX bytes:23799 (23.2 KiB)  TX bytes:53034 (51.7 KiB)
Fin qui tutto sembra funzionare. Il mio sistema Slackware 12.2 ha IP 192.168.1.100 e Windows XP virtualizzato è impostato come 192.168.1.70.
Tutto bene, dico io, dato che i due si pingano correttamente. Il bridge, infatti, sembra essere configurato correttamente:

Codice: Seleziona tutto

# brctl show br0
bridge name     bridge id               STP enabled     interfaces
br0             8000.0023ae03dd6c       no              eth0
                                                        vbox0
Ora se da XP tento di ottenere un indirizzo IP via DHCP non funziona. Sembra che non esista un DHCP server nella rete, invece c'è, e Windows XP riesce anche a pingarlo correttamente.
Non capisco il perchè di questo comportamento strano, dato che sulla 12.0 e sulla 12.1 ha sempre funzionato perfettamente. Qualcuno mi sa dare una dritta per caso? Ha tutta l'aria di essere un bug :(