If you are going to all that trouble, then assign a static ip and read it.
I could, but then if I plug multiple sous-vide cookers into my network, I'd have to customize the code for each arduino., and then I could collide with an IP that was already assigned by DHCP, etc, etc
Some background. I'm making an internet-of-things-sous-vide cooker. I have the arduino with a ethernet shield controlling a crock pot with the PID library generating PWM to control a solid-state relay. The arduino is running a mqtt client, communicating to an mqtt broker running on a raspberry pi. I have commands, status, and temperature data on separate channels, so I can remote control and query my arduino. I also have a node.js data logger, sending temperature logs to a file every 10s, so I can plot my PID controller performance.
I may try to do away with the rasperry pi, and write a web server on the arduino that tracks temperature logs. I could use the google charts api, to do all the graphics on the client side.
I want these things to be smart enough, so that I can fab a bunch of pcb for friends and family, they can plug them in and happily start cooking without requiring everybody to upload custom arduino code that is compatible with their network. For now I just gave up and added a jumper that will select ethernet or not.