String/Array auflösen bei Webabfrage

plaubel:
Uffff!

Werd mir das mal bei Gelegenheit anschauen, ob ich das verstehe, auf dem ersten Blick sehr... verwirrend.

Im Moment habe ich aber erstmal das Problem, daß ich (warum auch immer) heute keine DNS Auflösung bekomme (DNS failed). Meine Versuche ihm von Hand einen unterzuschieben funktionieren irgendwie nicht. Wobei es gestern auch so ging....

NARRRRFFFFFFFFFFFFFFFFFFFFFFFFFFFFF :stuck_out_tongue_closed_eyes:

Hab im nun nen google DNS unter geschoben, funzt aber trotzdem nicht mehr. Ist doch alles sch***** :frowning:

Ich bekomme nicht mal mehr das getViaDNS Beispiel zum Laufen im heute...

Und bei dem Beispiel sollte man ja wohl erwarten, daß es funktioniert, oder?

Ich sehe grade, das Beispiel "getDHCPandDNS" ist fast mein Code (der seit 2 Tagen nicht funktioniert, das Beispiel auch nicht)...

// This demo does web requests via DHCP and DNS lookup.
// 2011-07-05 <jc@wippler.nl> http://opensource.org/licenses/mit-license.php

#include <EtherCard.h>

#define REQUEST_RATE 5000 // milliseconds

// ethernet interface mac address
static byte mymac[] = { 0x74,0x69,0x69,0x2D,0x30,0x31 };
// remote website name
char website[] PROGMEM = "google.com";

byte Ethernet::buffer[700];
static long timer;

// called when the client request is complete
static void my_result_cb (byte status, word off, word len) {
  Serial.print("<<< reply ");
  Serial.print(millis() - timer);
  Serial.println(" ms");
  Serial.println((const char*) Ethernet::buffer + off);
}

void setup () {
  Serial.begin(57600);
  Serial.println("\n[getDHCPandDNS]");
  
  if (ether.begin(sizeof Ethernet::buffer, mymac) == 0) 
    Serial.println( "Failed to access Ethernet controller");

  if (!ether.dhcpSetup())
    Serial.println("DHCP failed");
  
  ether.printIp("My IP: ", ether.myip);
  // ether.printIp("Netmask: ", ether.mymask);
  ether.printIp("GW IP: ", ether.gwip);
  ether.printIp("DNS IP: ", ether.dnsip);

  if (!ether.dnsLookup(website))
    Serial.println("DNS failed");
  ether.printIp("Server: ", ether.hisip);
  
  timer = - REQUEST_RATE; // start timing out right away
}

void loop () {
    
  ether.packetLoop(ether.packetReceive());
  
  if (millis() > timer + REQUEST_RATE) {
    timer = millis();
    Serial.println("\n>>> REQ");
    ether.browseUrl(PSTR("/foo/"), "bar", website, my_result_cb);
  }
}

Warum ging das vor 2 Tagen und jetzt nicht mehr?