W5100 Verbindungsproblem mit externem Server

OP #2623510
Hallo alle zusammen,

ich versuche vergebend seit drei Tagen mit WIZNET Modul mit einem 
externen Server zu verbinden. Interne Verbindung funktioniert wunderbar: 
w5100 <-> switch <-> PC (Hercules SETUP > TCP Server).

Mein Programm:
uint8_t openTCP(void)
{
uint8_t  mac[] = {0x00, 0x50, 0xC2, 0x18, 0x20, 0x89};
uint8_t  gateway[] = {192,168,2,1};
uint8_t  subnet[] = {255, 255, 255, 0};

uint8_t  clientIP[] = {192, 168, 0, 110};
uint8_t  clientPort[] = {0x04,0xE6};// 110 + 1024

uint8_t  serverIP[] = {217,72,200,132};//<-google IP
uint8_t  serverPort[] = {0, 80};

setMode(0x01);  //TCP Mode
setSubnet(subnet);
setMac(mac);
setIP(clientIP);
setGateway(gateway);
setClientPort(clientPort);
setServerIP(serverIP);
setServerPort(serverPort);

//open, needs check that it did open
uint8_t status0 = 0;
_delay_ms(5);

writeAddress(0x0401, 0x01);
status0 = readAddress(0x0403);

while (status0 != 0x13)
  {
   _delay_ms(5);
   //Close Socket
   writeAddress(0x0401, 0x10);
   status0 = readAddress(0x0403);

   _delay_ms(5);
   //Open Socket
    writeAddress(0x0401, 0x01);
   status0 = readAddress(0x0403);
   }

//Connect
writeAddress(0x0401, 0x04);

//check established
delay_ms(10);
status0 = readAddress(0x0403);

uint8_t i = 0;
_delay_ms(200);
status0 = readAddress(0x0403);

while(status0 != 0x17 && i < 10)
   {
   i++;
   _delay_ms(200);
   status0 = readAddress(0x0403);

   //UART Ausgabe
   uchar(status0);
   }
}

Wenn ich versuche mit einem externen Server z.B. von Google zu 
verbinden, erhalte ich als UART-Ausgabe: SOCK_SYNSENT 0x15 (It  is 
shown  in  case  that  CONNECT  commands  are  given  to
Socket n Command Register(Sn_CR) at the SOCK_INIT status.
It  is  automatically  changed  to  SOCK_ESTABLISH  when  the
connection is established.)

Verbindungsaufbau:
w5100 <-> Router (Speedport W 721V)

Ich denke, an den Quellcode liegt es nicht, da ich schon 
unterschiedliche Codes inklusive original von Wiznet ausprobiert habe. 
Unter meinem Verdacht liegt der Router.

Hat vielleicht jemand von Euch das gleiches Problem gehabt? oder hat ein 
Tipp für mich :)

Ich würde mich wirklich über jeden Antwort freuen.

Vielen Herzlichen Dank.
OP #2623581
vielen Dank für die Möglichkeit sich aus zu sprechen.

Das Problem hat sich gleich gelöst.

Meine gateway[] = {192,168,2,1}; und clientIP[] = {192, 168, 0, 110}; 
das hat dem Router nicht gefallen und er hat hat jeden möglichen Kontakt 
mit externem Router geblockt. Nach dem ich die IP-Adresse wie folgt 
geändert clientIP[] = {192, 168, 2, 110}; funktioniert wunderbar.

P.S.  serverIP[] = {217,72,200,132};//<-google IP
diese IP-Adresse ist nicht von Google sondern von web.de

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.