Insure all shield pins are inserted fully into the Uno. The ICSP pins are important. That is the SPI lines between the two devices.
Try this sketch. You can change the ip to fit your subnet, but for this test it really doesn't matter.
#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192,168,2,2);
void setup() {
Serial.begin(9600);
Serial.println("Starting w5100");
Ethernet.begin(mac,ip);
Serial.println(Ethernet.localIP());
}
void loop() {
}
If the serial monitor shows the ip as 192.168.2.2, the Uno/w5100 SPI link is ok. If it shows 0.0.0.0, that is not ok.