Я пытаюсь эмулировать Raspberry Pi на моем Ubuntu 13.04. Я установил QEMU, и он работает хорошо, за исключением сети.
Я следовал этой процедуре . На виртуальной машине файл /etc/network/interface
выглядит так
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.20.106 # your IP
gateway 192.168.20.1 # IP of the Router
netmask 255.255.255.0 # Network mask
Я запускаю QEMU, как это sudo qemu-system-arm -kernel kernel-qemu -cpu arm1176 -m 256 -M versatilepb -no-reboot -append "root=/dev/sda2" -hda 2013-09-25-wheezy-raspbian.img -kernel kernel-qemu -redir tcp:5022::22
.
На Ubuntu, когда я делаю ifconfig
, у меня есть этот результат:
br0 Link encap:Ethernet HWaddr 8e:0f:b1:ad:1c:18
inet adr:10.10.10.2 Bcast:10.255.255.255 Masque:255.0.0.0
adr inet6: fe80::8c0f:b1ff:fead:1c18/64 Scope:Lien
UP BROADCAST MULTICAST MTU:1500 Metric:1
Packets reçus:8 erreurs:0 :8 overruns:0 frame:0
TX packets:26 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
Octets reçus:792 (792.0 B) Octets transmis:5092 (5.0 KB)
eth0 Link encap:Ethernet HWaddr 90:2b:34:39:b4:1d
UP BROADCAST MULTICAST MTU:1500 Metric:1
Packets reçus:0 erreurs:0 :0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:0 (0.0 B) Octets transmis:0 (0.0 B)
lo Link encap:Boucle locale
inet adr:127.0.0.1 Masque:255.0.0.0
adr inet6: ::1/128 Scope:Hôte
UP LOOPBACK RUNNING MTU:65536 Metric:1
Packets reçus:12770 erreurs:0 :0 overruns:0 frame:0
TX packets:12770 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
Octets reçus:2121321 (2.1 MB) Octets transmis:2121321 (2.1 MB)
wlan1 Link encap:Ethernet HWaddr ac:f1:df:79:01:80
inet adr:192.168.20.106 Bcast:192.168.20.255 Masque:255.255.255.0
adr inet6: fe80::aef1:dfff:fe79:180/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Packets reçus:5283 erreurs:0 :48 overruns:0 frame:0
TX packets:5252 errors:0 dropped:5 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:2806386 (2.8 MB) Octets transmis:1461531 (1.4 MB)
на виртуальной машине ping 192.168.20.106
работает, потому что это локальный адрес, но ping 192.168.20.1
не работает. Я также попытался установить разные адреса для реальной и виртуальной машины.
Что я могу сделать?
-redir
.Ответы:
Было бы неплохо увидеть результат работы
ifconfig
вашей виртуальной машины.Согласно http://en.wikibooks.org/wiki/QEMU/Networking с указанными вами опциями, вы должны получить NAT с виртуальным DHCP-сервером, а не прямой мост в вашу локальную IP-сеть, поэтому ваши жестко закодированные IP-адреса наверное не сработает. Пытаться:
перезагрузите или используйте
ifdown
/,ifup
чтобы перенастроитьeth0
и посмотреть, находит ли он виртуальный DHCP-сервер.ifconfig
иroute -n
должен сказать вам, работает ли он - у вас будет локальный IP-адрес и маршрут шлюза.Предполагая, что это сработало, вы должны иметь возможность перейти
ssh
с вашего хоста на вашу виртуальную машину, используя:потому что этот порт настраивается с помощью
-redir
пункта в вашей командной строке.источник