From: ching <lsching17@gmail.com>
To: qemu-devel@nongnu.org
Subject: [Qemu-devel] macvlan/macvtap: guest/host cannot communicate when network cable is unplugged
Date: Wed, 29 Aug 2012 06:38:35 +0800 [thread overview]
Message-ID: <503D486B.1030208@gmail.com> (raw)
Hi all,
I try to setup guest network with macvlan, as guest cannot communicate with host directly, i try to workaround by configuring host to using a macvlan interface
host: Gentoo x64, kernel 3.5.2, qemu-kvm 1.1.1-r1, libvirt 0.9.13
guest: Ubuntu 12.04, kernel 3.4.9, virtio-net
The host is using macvlan (interface name: znet0, ip: 192.168.1.2, bridge mode)
The guest is using macvtap managed by libvirt (interface name: macvtap0, ip: 192.168.1.184, bridge mode, with vhost)
I am facing a strange problem that the guest/host can communicate only when the network cable of the ethernet adapter is connected.
The network config of the host
$ifconfig
eth0 Link encap:Ethernet HWaddr f4:6d:xx:xx:xx:xx
inet6 addr: fe80::xx:xx:xx:xx/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:86507 errors:0 dropped:0 overruns:0 frame:0
TX packets:55940 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:126005746 (120.1 MiB) TX bytes:4394225 (4.1 MiB)
macvtap0 Link encap:Ethernet HWaddr 52:54:xx:xx:xx:xx
inet6 addr: fe80::xx:xx:xx:xx/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:70 errors:0 dropped:0 overruns:0 frame:0
TX packets:84 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:9036 (8.8 KiB) TX bytes:14734 (14.3 KiB)
znet0 Link encap:Ethernet HWaddr 00:60:xx:xx:xx:xx
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: 2002:xx:xx:xx:xx/64 Scope:Global
inet6 addr: fe80:xx:xx:xx:xx/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4463190 errors:0 dropped:0 overruns:0 frame:0
TX packets:12527522 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3959213697 (3.6 GiB) TX bytes:18590336476 (17.3 GiB)
$ip -d link show
10: znet0@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT
link/ether 00:60:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
macvlan mode bridge
17: macvtap0@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN mode DEFAULT qlen 500
link/ether 52:54:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
macvtap mode bridge
libvirt config of the guest network
<interface type='direct'>
<mac address='52:54:xx:xx:xx:xx'/>
<source dev='eth0' mode='bridge'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
</interface>
The network config of the guest
eth0 Link encap:Ethernet HWaddr 52:54:xx:xx:xx:xx
inet addr:192.168.1.184 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: 2002:xx:xx:xx:xxx/64 Scope:Global
inet6 addr: 2002:xx:xx:xx:xx/64 Scope:Global
inet6 addr: fe80:xx:xx:xx:xx/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:25 errors:0 dropped:0 overruns:0 frame:0
TX packets:66 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3108 (3.1 KB) TX bytes:13066 (13.0 KB)
when network cable of host is plugged in
$ ping 192.168.1.184
PING 192.168.1.184 (192.168.1.184) 56(84) bytes of data.
64 bytes from 192.168.1.184: icmp_req=1 ttl=64 time=0.314 ms
64 bytes from 192.168.1.184: icmp_req=2 ttl=64 time=0.253 ms
64 bytes from 192.168.1.184: icmp_req=3 ttl=64 time=0.230 ms
Afterward, i unplugged the network cable to ensure that packet is not routed via external router, but the test seems failed.
$ ping 192.168.1.184
PING 192.168.1.184 (192.168.1.184) 56(84) bytes of data.
>From 192.168.1.2: icmp_seq=10 Destination Host Unreachable
>From 192.168.1.2: icmp_seq=11 Destination Host Unreachable
Do anyone have similar problem? Am i missing something?
Regards,
ching
next reply other threads:[~2012-08-28 22:38 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-28 22:38 ching [this message]
2012-08-29 7:03 ` [Qemu-devel] macvlan/macvtap: guest/host cannot communicate when network cable is unplugged Stefan Hajnoczi
2012-08-30 12:13 ` ching
2012-08-30 12:53 ` Stefan Hajnoczi
2012-08-30 22:32 ` ching
2012-08-31 5:34 ` Stefan Hajnoczi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=503D486B.1030208@gmail.com \
--to=lsching17@gmail.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).