Arduino UNO Ethernet sheild 5100 not connecting to dlink rounter

Hi,

I have connected Arduino Uno with Ethernet shield and uploaded default ethernet server code from Arduino IDE. I have set up the IP address properly and connected to Dlink router. serial monitor shows server is stated in the given IP address but actually it did not start. I checked in the Dlink home page, the Arduino not appears there.

Now I have connected the same setup to my laptop ethernet port. laptop creates an IP address for the Arduino irrespective of the IP, that I have configured in the sketch. now I took the generated IP and updated in the Arduino sketch now I can see the output. it's working.

Why is it not working with Dlink? can anybody pls help?