나는 FreeBSD에 첫 발을 내딛고 있으므로 "리눅스주의"가 있을 수 있다는 점을 양해해 주시기 바랍니다.
내 목표는 QEMU/KVM이 있는 가상 머신 내에서 FreeBSD 10.2를 실행하고 USB3 네트워크 카드가 호스트에서 통과할 수 있도록 하여 USB3 네트워크 카드를 유일한 WAN 인터페이스로 만드는 것입니다.
QEMU/KVM을 시작하려면 다음 명령을 실행합니다.
kvm -m 4096 \
-snapshot \
-hda /path/to/the/image \
-device nec-usb-xhci,id=xhci,addr=0x5 \
-device usb-host,bus=xhci.0,vendorid=0x0b95,productid=0x1790 \
-net none
Ubuntu 16.04를 부팅하려고 하면 제대로 작동합니다. 인터페이스가 작동 중이고 이 나타나고 lsusb
주소는 DHCP에 의해 할당됩니다. VirtualBox를 사용하여 동일한 FreeBSD 이미지를 실행할 수도 있습니다. 카드가 인식되고(FreeBSD에서 지원되기 때문에) 다음과 같이 표시됩니다.
pciconf -lv
#skipped
xhci0@pci0:0:12:0: class=0x0c0330 card=0x00000000 chip=0x1e318086 rev=0x00 hdr=0x00
vendor = 'Intel Corporation'
device = '7 Series/C210 Series Chipset Family USB xHCI Host Controller'
class = serial bus
subclass = USB
QEMU 모니터를 실행하면 info usb
Ubuntu와 FreeBSD 모두에 대해 동일한 네트워크 카드 항목이 반환됩니다. QEMU에 XHCI 컨트롤러를 추가하기 위해 제가 찾은 유일한 방법은 nec-usb-xhci를 지정하는 것입니다. 지금까지 이것이 VirtualBox와 QEMU 사이에서 본 유일한 차이점입니다.
QEMU를 통해 USB3를 FreeBSD로 패스스루할 수 있는 방법이 있습니까?
답변1
QEMU에는 먼저 패치가 필요한 USB3.0 버그가 있습니다. 현재 QEMU XHCI에서는 10-stable을 사용할 수 있는 것으로 알려져 있습니다.
https://lists.gnu.org/archive/html/qemu-devel/2016-08/msg03571.html
--HPS