Arduino with DIY ethernet shield problems

I am using an ethernet shield that I made myself using the enc28j60 chip. I am using the most recent EtherCard library. The problem is that every time I try to run my code when connected to the wall ethernet jack to my school’s network, I am getting a DHCP failed error and all zero’s for all values including IP address.

The code I am using is as follows:

// Arduino demo sketch for testing the DHCP client code
//
// Original author: Andrew Lindsay
// Major rewrite and API overhaul by jcw, 2011-06-07
//
// Copyright: GPL V2
// See http://www.gnu.org/licenses/gpl.html

#include <EtherCard.h>

static byte mymac[] = { 0x74,0x69,0x69,0x2D,0x30,0x31 };

byte Ethernet::buffer[700];

void setup () {
  Serial.begin(57600);
  Serial.println("\n[testDHCP]");

  Serial.print("MAC: ");
  for (byte i = 0; i < 6; ++i) {
    Serial.print(mymac[i], HEX);
    if (i < 5)
      Serial.print(':');
  }
  Serial.println();
  
  if (ether.begin(sizeof Ethernet::buffer, mymac, 10) == 0) 
    Serial.println( "Failed to access Ethernet controller");

  Serial.println("Setting up DHCP");
  if (!ether.dhcpSetup())
    Serial.println( "DHCP failed");
  
  ether.printIp("My IP: ", ether.myip);
  ether.printIp("Netmask: ", ether.mymask);
  ether.printIp("GW IP: ", ether.gwip);
  ether.printIp("DNS IP: ", ether.dnsip);
}

void loop () {}

The result I am getting is:

[testDHCP]
MAC: 74:69:69:2D:30:31
Setting up DHCP
DHCP failed
My IP: 0.0.0.0
Netmask: 0.0.0.0
GW IP: 0.0.0.0
DNS IP: 0.0.0.0

Does anyone know what I should do to fix this problem? I have one week to fix this. The only thing I changed in the code is the third paramater set to 10 as that is the chip select of the enc28j60. Is this a common problem?

By the way, I am using the schematic from here: http://www.open-electronics.org/low-cost-ethernet-shield-with-enc28j60/

If anyone has any ideas, please let me know as soon as possible. Thanks in advance.

does it work with a static IP?