Index: /trunk/FACT++/src/DimSetup.cc
===================================================================
--- /trunk/FACT++/src/DimSetup.cc	(revision 11009)
+++ /trunk/FACT++/src/DimSetup.cc	(revision 11010)
@@ -25,4 +25,18 @@
 //! to the DIM dns.
 //!
+//! The local IP address is necessary because in some circumstances
+//! Dim needs the IP address of the connecting machine (DIM_HOST_NODE)
+//! for the clients to correctly connect to them. So what we would
+//! need is the IP address over which the machine is reachable from
+//! the client. Unfortunately, we have no access to the client
+//! connection, hence, we have to find the best guess of an address
+//! which is not our own machine and hope it is routed over the
+//! standard ethernet interface over which other clients will connect.
+//!
+//! To not send random packages over the network we use a local
+//! IP address. To make sure it is something which leaves the network
+//! card and is not just our machine, we can use a broadcast address.
+//! Consequently, the deafult has been chosen to be "192.168.0.255"
+//!
 //! @param dns
 //!     Address of the Dim-dns
@@ -31,4 +45,7 @@
 //!     The IP Address through which the connection to the DNS will
 //!     take place.
+//!
+//! @todo
+//!     Implement a --host command line option (just in case)
 //!
 string Dim::GetLocalIp(const string &dns)
@@ -143,6 +160,6 @@
 void Dim::Setup(const std::string &dns)
 {
-    setenv("DIM_DNS_NODE",  dns.c_str(),             1);
-    setenv("DIM_HOST_NODE", GetLocalIp(dns).c_str(), 1);
+    setenv("DIM_DNS_NODE",  dns.c_str(),               1);
+    setenv("DIM_HOST_NODE", Dim::GetLocalIp().c_str(), 1);
 
     cout << "Setting DIM_DNS_NODE=" << dns << endl;
@@ -151,7 +168,7 @@
 extern "C"
 {
-    const char *GetLocalIp(const char *dns)
+    const char *GetLocalIp()
     {
-        return Dim::GetLocalIp(dns).c_str();
+        return Dim::GetLocalIp().c_str();
     }
 }
Index: /trunk/FACT++/src/DimSetup.h
===================================================================
--- /trunk/FACT++/src/DimSetup.h	(revision 11009)
+++ /trunk/FACT++/src/DimSetup.h	(revision 11010)
@@ -6,5 +6,5 @@
 namespace Dim
 {
-    std::string GetLocalIp(const std::string &dns);
+    std::string GetLocalIp(const std::string &dns="192.168.0.255");
     void Setup(const std::string &dns);
 }
Index: /trunk/FACT++/src/dns.c
===================================================================
--- /trunk/FACT++/src/dns.c	(revision 11009)
+++ /trunk/FACT++/src/dns.c	(revision 11010)
@@ -1,5 +1,5 @@
 #include <stdlib.h>
 
-extern const char *GetLocalIp(const char *dns);
+extern const char *GetLocalIp();
 
 int local_main(int argc, char **argv);
@@ -7,5 +7,5 @@
 int main(int argc, char **argv)
 {
-    setenv("DIM_HOST_NODE", GetLocalIp("172.0.0.0"), 1);
+    setenv("DIM_HOST_NODE", GetLocalIp(), 1);
 
     return local_main(argc, argv);
