im able to use my arduino+ardu eth in my home sub net but i'm not able to find the public ip of my device(arduino ethenet shield).
That's because it doesn't have one, most likely. If you have a router, the router has a public IP address. The Arduino does not. The router needs to route data for a particular port to the Arduino.