Gast
#1588069
Moin! Ich habe hier ein Problem mit einem AVR Webserver. Der Stack basiert auf dem von Ulrich Radig. Aber um die Details seiner Software sollte hier gar nicht gehen. Sondern eher um die Details des TCP Protokolls. Der Server funktioniert übers LAN bei mir wunderbar. Auch der selbst geschriebene http-Server läuft wunderbar. Das Problem ist, von einer externen IP funktioniert es gar nicht. Die Portweiterleitung im Router funktioniert. Die Pakete kommen am Webserver an und er antwortet darauf. Die Antworten kommen aber scheinbar nicht beim Browser an. Nun hab ich im Debugger beobachtet, dass Pakete mit SYN-Flag beim Webserver ankommen. Daraufhin sendet der Webserver ein Paket mit SYN+ACK zurück. Wenn ich das richtig verstanden habe, sollte dann als nächstes ein ACK Paket ankommen, richtig? Dies kommt aber nicht. Welche Absender-Adresse sollte der Webserver sehen, wenn ein Paket über den Router rein kommt? Die LAN-IP des Routers, meine externe IP, oder die externe IP des Absenders? Bei den am Webserver ankommenden Paketen sehe ich meine externe IP. Der Webserver versucht nun die Antwort an diese Adresse zurück zu senden. Was passiert denn mit einem Paket im LAN, dass nicht zum Subnetz gehört? Nimmt der Router das automatisch an? Oder ist es Sache des Absenders, ein Paket in ein anderes Subnetz an die Adresse des Routers zu senden?