In arduino IDE 1 a library for managing DHCP is included. This is taken from Jordan Terrell's library and it is called when we inwoke int EthernetClass::begin(uint8_t *mac_address)
. The problem is that, because of Ethernet library new structure, the DHCP is called ONLY there. So if your ip lease expires you have to call again the begin (or reset the program execution). I think this is not the best way and I prefer to use Georg Kaindl 's library http://gkaindl.com/software/arduino-ethernet
I think it's strange to have included in the official arduino ide the poorest library beetwen Terrell and Kaindl. What do you think about? May be I am wrong and leases are well managed also by Terrell's library?