Hey guys, been banging my head against the wall for 48 hours now trying to get networking set up on my new Qubes 4.1 laptop. The laptop has a broadcom BCM4360 network card which has given me trouble in the past (mainly within kali) so I just use a USB hub that contains an ethernet jack. Normally it’s just plug and play.
But in Qubes it doesn’t show up in the device manager. I tried binding the USB controller to sys-net but all that accomplished was robbing dom0 of I/O devices, leading to multiple clean installs.
Weird thing is, I have a wireless USB mouse connected to the same hub and it works fine whenever I plug the hub into my laptop.
I will provide more of what I have attempted and the resulting logs… After this reinstall finishes hehe
**Sorry for wall of text. The last command is what happens when the hub is unplugged and plugged back into the laptop.
#anon@dom0 Desktop]$ qvm-usb
BACKEND:DEVID DESCRIPTION USED BY
#[anon@dom0 Desktop]$ qvm-pci
BACKEND:DEVID DESCRIPTION USED BY
dom0:00_00.0 Host bridge: Intel Corporation Crystal Well DRAM Controller
dom0:00_01.0 PCI bridge: Intel Corporation Crystal Well PCI Express x16 Controller
dom0:00_01.1 PCI bridge: Intel Corporation Crystal Well PCI Express x8 Controller
dom0:00_14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI
dom0:00_16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1
dom0:00_1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller
dom0:00_1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1
dom0:00_1c.2 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3
dom0:00_1c.3 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4
dom0:00_1c.4 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #5
dom0:00_1f.0 ISA bridge: Intel Corporation HM87 Express LPC Controller
dom0:00_1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller
dom0:01_00.0 VGA compatible controller: NVIDIA Corporation GK107M [GeForce GT 750M Mac Edition]
dom0:01_00.1 Audio device: NVIDIA Corporation GK107 HDMI Audio Controller
dom0:03_00.0 Network controller: Broadcom Inc. and subsidiaries BCM4360 802.11ac Wireless Network Adapter sys-net
dom0:04_00.0 Multimedia controller: Broadcom Inc. and subsidiaries 720p FaceTime HD Camera
dom0:05_00.0 SATA controller: Samsung Electronics Co Ltd Apple PCIe SSD
dom0:06_00.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
dom0:07_00.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
dom0:07_03.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
dom0:07_04.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
dom0:07_05.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
dom0:07_06.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
dom0:08_00.0 System peripheral: Intel Corporation DSL5520 Thunderbolt 2 NHI [Falcon Ridge 4C 2013]
#[anon@dom0 Desktop]$ lsusb
Bus 002 Device 003: ID 05ac:8406 Apple, Inc. Internal Memory Card Reader
Bus 002 Device 014: ID 17e9:4318 DisplayLink
Bus 002 Device 013: ID 05e3:0612 Genesys Logic, Inc. Hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 009: ID 05ac:8289 Apple, Inc. Bluetooth Host Controller
Bus 001 Device 003: ID 0a5c:4500 Broadcom Corp. BCM2046B1 USB 2.0 Hub (part of BCM2046 Bluetooth)
Bus 001 Device 005: ID 05ac:0262 Apple, Inc. Apple Internal Keyboard / Trackpad
Bus 001 Device 024: ID 046d:c548 Logitech, Inc.
Bus 001 Device 023: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 022: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
#[anon@dom0 Desktop]$ sudo dmesg | grep USB | tail -n 36
[ 2087.689650] usb 1-1: USB disconnect, device number 19
[ 2087.689652] usb 1-1.4: USB disconnect, device number 20
[ 2087.689654] usb 1-1.4.4: USB disconnect, device number 21
[ 2088.414481] usb 2-1: USB disconnect, device number 11
[ 2088.414483] usb 2-1.3: USB disconnect, device number 12
[ 2091.744379] usb 1-1: new high-speed USB device number 22 using xhci_hcd
[ 2091.896758] usb 1-1: New USB device found, idVendor=05e3, idProduct=0610, bcdDevice=44.01
[ 2091.896760] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 2091.896761] usb 1-1: Product: USB2.0 Hub
[ 2091.900942] hub 1-1:1.0: USB hub found
[ 2091.987593] usb 2-1: new SuperSpeed Gen 1 USB device number 13 using xhci_hcd
[ 2092.003951] usb 2-1: New USB device found, idVendor=05e3, idProduct=0612, bcdDevice=44.01
[ 2092.003953] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 2092.003954] usb 2-1: Product: USB3.0 Hub
[ 2092.011627] hub 2-1:1.0: USB hub found
[ 2092.262397] usb 1-1.4: new high-speed USB device number 23 using xhci_hcd
[ 2092.345929] usb 1-1.4: New USB device found, idVendor=05e3, idProduct=0610, bcdDevice=32.98
[ 2092.345932] usb 1-1.4: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[ 2092.345933] usb 1-1.4: Product: USB2.0 Hub
[ 2092.347783] hub 1-1.4:1.0: USB hub found
[ 2092.410620] usb 2-1.3: new SuperSpeed Gen 1 USB device number 14 using xhci_hcd
[ 2092.423416] usb 2-1.3: New USB device found, idVendor=17e9, idProduct=4318, bcdDevice=31.02
[ 2092.423418] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2092.423419] usb 2-1.3: Product: Dell USB 3.0 Dock
[ 2092.433243] usb 2-1.3: [15] FU [Dell USB Audio Playback Volume] ch = 6, val = -8176/0/16
[ 2092.624268] usb 1-1.4.4: new full-speed USB device number 24 using xhci_hcd
[ 2092.703112] usb 1-1.4.4: New USB device found, idVendor=046d, idProduct=c548, bcdDevice= 5.01
[ 2092.703114] usb 1-1.4.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 2092.703115] usb 1-1.4.4: Product: USB Receiver
[ 2092.712453] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1.4/1-1.4.4/1-1.4.4:1.0/0003:046D:C548.0014/input/input39
[ 2092.764496] hid-generic 0003:046D:C548.0014: input,hidraw2: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-1.4.4/input0
[ 2092.765592] input: Logitech USB Receiver Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1.4/1-1.4.4/1-1.4.4:1.1/0003:046D:C548.0015/input/input40
[ 2092.765700] input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1.4/1-1.4.4/1-1.4.4:1.1/0003:046D:C548.0015/input/input41
[ 2092.817421] input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1.4/1-1.4.4/1-1.4.4:1.1/0003:046D:C548.0015/input/input42
[ 2092.817557] hid-generic 0003:046D:C548.0015: input,hidraw3: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-1.4.4/input1
[ 2092.818442] hid-generic 0003:046D:C548.0016: hiddev96,hidraw4: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-1.4.4/input2
[anon@dom0 Desktop]$
There was an option during Qubes installation “Use sys-net qube for both networking and USB devices”.
I think it should be configured like this, but I’m not sure so you better to make a backup before trying it out.
You can add the USB controller to sys-net and use it as USB VM but first allow dom0 to get to the keyboard and mouse from sys-net:
Edit the qubes.InputKeyboard
policy file in dom0, which is located here:
/etc/qubes-rpc/policy/qubes.InputKeyboard
Add a line like this one to the top of the file:
sys-net dom0 allow
Edit the qubes.InputMouse
policy file in dom0, located at:
/etc/qubes-rpc/policy/qubes.InputMouse
Add a line like this one to the top of the file:
sys-net dom0 allow
Then you can attach USB controller to sys-net.
But disable autostart for sys-net and every AppVM that require sys-net so it won’t start at system boot in case something goes wrong and your keyboard will stop working in dom0.
More info here:
2 Likes
Thank you for the help.
Had to substitute sys-net in for sys-usb when editing these files but everything is now in working order.
Yes, I forgot to change that part. Fixed my answer just in case someone else stumbles upon it.