IP Address and Ethernet Wiznet

Hi All,

I'm using an Atmega 328 and the wiznet ethernet module. Everything works fine. BUT sometimes the wiznet module stops responding. I'm using code similar to the SERVER code on this website. Or at least I think it's the module since the arduino program is still running.
I have a firewall called Zone Alarm on the windows laptops here. Zone Alarm pops up a window up and says:

The firewall has blocked Internet access to your computer (ICMP Unreachable) from

When this occurs the wiznet module stops responding to GET requests for the server running on the 328.

Does anyone have any idea where IP address is coming from? And what the connection to the wiznet module is? This one has me bafooned! The only thing that comes to mind is ARP? But that's at a lower level?

My ethernet setup is a DSL modem connected to an 8 port switch and all my computers and duino off the switch. The modem has a built in firewall and does not let IP address through. The duino is listening on port 80. It responds to requests for data and just sends back an HTML OK and some data. I tried to make the server code robust so if an unidentified request comes in then it just sends back OK and closes the connection.
These IP address things occur very rarely. Several days apart.