Driver for the ASIX AX88172/AX88178/AX88772 USB Ethernet dongle


io-pkt-variant -d asix [option[,option ...]] ... &

where variant is one of v4, v4-hc, or v6-hc.


Use commas, not spaces, to separate the options.
busnum= 0xXX
The USB bus number.
devnum= 0xXX
The USB device number.
did= 0xXXXX
The USB device ID.
Half (0) or full (1) duplex mode. The default is automatically detected on supported hardware. If you specify duplex, specify speed as well; if duplex alone is specified, it is ignored and both speed and duplex are autonegotiated.
iftype= num
The interface type (from <net/if_types.h>). The default is IFT_ETHER.
lan= num
The LAN number. The default is 0.
The interface address of the controller. The default is automatically detected on supported hardware.
media= num
The media type (from <hw/nicinfo.h>). The default is NIC_MEDIA_802_3.
mru= num
The maximum receive unit. The default is 1514.
mtu= num
The maximum transmission unit. The default (1514) is automatically detected on supported hardware.
Disable multicast support. By default, multicast is enabled.
path=" name "
Connect to the specified USB stack. The default is /dev/io-usb/io-usb.
phy= num
The address of the connected PHY device.
priority= N
The priority of the driver's event thread. The default is 21.
Enable the driver to pass all data packets received, regardless of the address. By default, promiscuous mode is disabled.
receive= num
The number of Rx descriptors. The default is 5.
The media data rate in megabits/second.
transmit= num
The number of Tx descriptors. The default is 10.
uptype= name
The interface name. The default is en.
verbose or verbose= N
Be verbose. Specify num for more verbosity (num can be 1-4; the higher the number, the more detailed the output). The default is 0. The output goes to slogger ; invoke sloginfo to view it.
vid= 0xXXXX
The USB vendor ID.
wait= num
The number of seconds to wait for the USB stack. The default is 60 seconds.


The driver controls the ASIX AX88172/AX88178/AX88772 USB Ethernet dongle. This is a legacy io-net driver; its interface names are in the form en X, where X is an integer.

If the device enumerators (see enum-devices ) don't recognize your device, try explicitly specifying the device ID with the did option when you start the driver.

Some devices support hardware checksums, although some might do so in only one direction; to determine if your device does, type:

ifconfig en X

and look for the following in the list of supported options:

  • ip4csum, ip4csum-rx, ip4csum-tx
  • tcp4csum, tcp4csum-rx, tcp4csum-tx
  • tcp6csum, tcp6csum-rx, tcp6csum-tx
  • udp4csum, udp4csum-rx, udp4csum-tx
  • udp6csum, udp6csum-rx, udp6csum-tx

You can then use ifconfig to enable or disable whichever of these options your device supports.


Start io-pkt-v6-hc using the ASIX driver:

io-pkt-v6-hc -dasix verbose &
ifconfig en0


The directory where, by default, drivers and protocol modules add entries. For more information, see the documentation for io-pkt* .