[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: qemu сетевой доступ из VM в HOST



rm-f@yandex.ru -> debian-russian@lists.debian.org  @ Tue, 24 Apr 2007 12:15:53 +0400:

 r> $ cat /etc/qemu.ifup
 r> #!/bin/sh

 r> HOST_IP=192.168.55.1
 r> GUEST_IP=192.168.55.2

 r> # configure tun0 device (UML and newer versions of Qemu use tap0 here!)
 r> sudo -p "Password for $0:" /sbin/ifconfig $1 $HOST_IP

 r> # activate ip forwarding
 r> sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'

 r> # set up routing to the guest IP
 r> sudo route add -host $GUEST_IP dev $1

 r> # activate ARP proxy to "spoof" arp address
 r> sudo bash -c "echo 1 > /proc/sys/net/ipv4/conf/$1/proxy_arp"

 r> # set "spoofed" arp address
 r> sudo arp -Ds $GUEST_IP eth0 pub


 r> $ ifconfig
 r> eth0      Link encap:Ethernet  HWaddr 00:14:85:8C:01:3B
 r>          inet addr:192.168.0.241  Bcast:192.168.0.255  Mask:255.255.255.0
 r>          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 r>          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 r>          TX packets:26 errors:0 dropped:0 overruns:0 carrier:0
 r>          collisions:0 txqueuelen:1000
 r>          RX bytes:0 (0.0 b)  TX bytes:3039 (2.9 KiB)
 r>          Interrupt:50 Base address:0x6000
 r> ...
 r> tap0      Link encap:Ethernet  HWaddr 3A:C3:FC:0C:BB:60
 r>          inet addr:192.168.55.1  Bcast:192.168.55.255  Mask:255.255.255.0
 r>          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 r>          RX packets:275 errors:0 dropped:0 overruns:0 frame:0
 r>          TX packets:272 errors:0 dropped:0 overruns:0 carrier:0
 r>          collisions:0 txqueuelen:500
 r>          RX bytes:260248 (254.1 KiB)  TX bytes:37867 (36.9 KiB)
 r> ...

 r> ...
 r> 192.168.100.1   0.0.0.0         255.255.255.255 UH    0      0        0 eth1
 r> 192.168.55.2    0.0.0.0         255.255.255.255 UH    0      0        0 tap0
 r> 192.168.55.0    0.0.0.0         255.255.255.0   U     0      0        0 tap0
 r> 192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
 r> ...

 r> $ qemu ... -net nic,vlan=0,model=rtl8139 -net
 r> tap,vlan=0,ifname=tap0,script=/etc/qemu-ifup ...

 r> В итоге, c хоста есть сетевой доступ в ВM,
 r> но нет возможности достучаться до ip хоста из ВМ.

Вывод tcpdump на tap0 при попытке достучаться?  Небось, на хосте файрвол настроен...

 r> Решение с инета. Фокусы с ARP не понял, может нужно для широковещательных
 r> пакетов?

Нет, для ситуации, когда у тебя адрес VM из той же сети, что и eth0.

-- 
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru

Максимум интеллекта у человеческих особей приходится на группу из двух-трех
человек.
	П.Шумил, "Осколки Эдема"



Reply to: