How do I bridge a connection from Wi-Fi to TAP on Mac OS X? (for the emulator QEMU)
You are forgetting 2 important steps : running the natd daemon and configuring the firewall to allow that traffic, ie :
natd -interface en0 ipfw add divert natd ip from any to any via en0
en0 is my wifi interface (macbook air) and this work like a charm. The proposed openvpn solution is overtly complicated.
You can also run natd in fancier ways (ex: # fancy: natd -alias_address 10.0.0.2 -interface en0 -use_sockets -same_ports -unregistered_only -dynamic -clamp_mss) if you want to be very specific, but the above will work.
I detailed the whole process on http://en.blog.guylhem.net/post/88201449689/running-qemu-with-tap0-and-nat-under-osx-10-9-maverick
Related videos on Youtube
penx
Updated on September 18, 2022Comments
-
penx over 1 year
I'm trying to setup a bridge between my Wi-Fi connection and an emulator (QEMU). I need a virtual machine to be on the same LAN as the host, with its own IP address.
QEMU requires using a TAP (virtual network device) so I have installed tuntaposx, have it running, and can open up QEMU using a TAP:
qemu-system-arm -kernel zImage.integrator -initrd arm_root.img -m 256 -net nic -net tap,ifname=tap1 -nographic -append "console=ttyAMA0"
I have a script that configures the bridge once QEMU has opened up the TAP interface:
sysctl -w net.link.ether.inet.proxyall=1 sysctl -w net.inet.ip.forwarding=1 sysctl -w net.inet.ip.fw.enable=1 ifconfig bridge0 create ifconfig bridge0 addm en1 ifconfig tap1 0.0.0.0 up ifconfig bridge0 addm tap1 ifconfig bridge0 up
If I manually set an IP on the VM, I can ping from the VM to the host, but not from the host to the VM. Also, I can't access the rest of the network from the VM - including not being able to set an IP over DHCP.
Any ideas?
-
Admin about 10 yearsI have provided a solution to this problem here.
-
Admin almost 10 yearsNucAr, openvpn or the likes is overkill. Just use natd.
-
Admin over 4 yearsWiFi cannot be bridged.
-
-
Arto Bendiken almost 8 yearsBlog link appears dead, but the instructions would seem to be replicated at: github.com/ckujau/scripts/blob/master/qemu-tap.sh
-
Vomit IT - Chunky Mess Style over 4 yearsPlease clarify what you are answering.