I recently bought 3 Port USB 2.0 HUB Adapter + USB 2.0 Male to LAN Network Ethernet RJ45 Adapter which seems to be best choice for Raspberry pi zero witch lack of network connection and USBs.

s-l500

For the first time, everything seems to be fine, adapter get IP address, but when you tried to begin even basic communication, the driver crash.
There is no driver fix till now and who knows if will be any (yeah cheap is cheap… you have to „pay“ for it)
Fortunately there is workaround (double the driver buffer), but you will need to compile kernel.

Update fw and install tools for building the kernel
sudo rpi-update
sudo apt-get -y update
sudo apt-get -y install gcc make bc screen ncurses-dev

Get the source code and apply patch from kmtaylor (thank you man!)
git clone --depth 1 git://github.com/raspberrypi/linux.git
git clone https://github.com/kmtaylor/rpi_patches.git
cd linux
patch -p1 < ../rpi_patches/dm9601-bug.patch

Setup the enviroment and copy your current config, make and left the pi work for ~15 hours
KERNEL_SRC=/home/pi/linux/
make mrproper
sudo modprobe configs
zcat /proc/config.gz > .config
make oldconfig
make

Now install modules and copy the kernel
sudo make modules_install
sudo cp arch/arm/boot/zImage /boot/kernel.img

Reboot and check the adapter, it should be working