Domain-Adresse in eine IP-Adresse umwandeln

Versuch's mal mit dieser Version:

#include <SPI.h>
#include <Ethernet.h>
#include <Dns.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 178, 177 };
byte dnsserver[] = { 8,8,8,8 };
byte gateway[] = { 192, 168, 178, 150 };
byte sub[] = { 255, 255, 255, 0 };

int ret;

void setup() {
  Serial.begin(9600);
  Ethernet.begin(mac, ip, dnsserver, gateway, sub);
  Serial.print("TEST "); 
  DNSClient dnsC;
  char host[] = "http://www.google.de";
  IPAddress remote_addr;
  IPAddress server_ip = ( 8, 8, 8, 8 ); // Google DNS
  dnsC.begin(server_ip);
  ret = dnsC.getHostByName(host, remote_addr);
  Serial.print("Ausgabe "); 
  Serial.print(remote_addr);
}

void loop() {
}

Die kompiliert bei mir (IDE 1.0.1) ohne Fehler. Zu Deinem Fehler: Du darfst den Namen "dns" nicht zweimal vergeben, mit unterschiedlicher Bedeutung. Dies hat der Compiler reklamiert und das zu Recht.

Der Include "Dns.h" ist keine Fremd-Bibliothek, die Datei ist Teil der Ethernet-Bibliothek. Sie wird normalerweise intern verwendet, es hält uns jedoch niemand davon ab, sie auch direkt zu verwenden. Wenn der OP die IP-Adresse des verwendeten Dienstes unbedingt wissen will, dann darf er das, auch wenn er den Namen im Sketch auch direkt verwenden kann.