Since which Android version can you use Ethernet through the USB port? Which makes are repotedly work with CyanogenMod? As far as I know Android supports Ethernet via USB, right? If yes, since which version of the OS?

What are makes of Ethernet USB adapters which are reportedly work with CyanogenMod? What are makes that don't work so well? Maybe one which are "plug and play" in Windows 7 work better on Android too, compared to those which require a driver?

Edit: As I'm not that technical I'd like to see an explanation, a drawing an article or something of an example of the most easily done USB Ethernet setup on any Android device (esp. the model name of the USB to Ethernet connector is interesting), if it's on stock Android it's even better than if it's on a modded ROM.
That is dependent:


The kernel, along with the appropriate driver
Chipset support for USB OTG


The general consensus, if the kernel is modded and has support for OTG provided the handset supports it, then it will work alongside with the appropriate OTG cable with power support.

It might need custom modifications to Android to make it aware of OTG facilities if running on pre-Honeycomb Android versions.

However, since Honeycomb (Android 3.0) and upwards, there is USB facilities integrated into the framework which makes OTG mechanism even easier.