Connecting ethernet to AVR
The open-source Nanode project pretty much implements the bare minimum hardware required to connect an Arduino to the internet - an ATMega328 microcontroller, an ENC28J60 ethernet controller, a 74HC125 level converter (so that the Mega328 can still operate at 5v and talk to the ENC28J60 running from 3.3V), and a Ethernet Jack (with internal magnetics), along with the relevant power and passive circuitry. You can read lots more about it on the web, including it's solderpad page. It was also voted the 2011 Best IoT Open Source Project, for what it's worth.

Full disclosure - I sell this product at Wicked Device.