NemesisFS
Lt. Commander
- Dabei seit
- Sep. 2008
- Beiträge
- 1.293
Hi,
ich versuche gerade einen kleinen IRC Client in go zu schreiben, dabei ist mir etwas merkwürdiges aufgefallen.
Ich öffne eine TCP Verbindung zu einem Server und schließe sie nach einer Sekunde wieder:
Die Verbindung zu einem "normalen Server" (zB google.de:80) läuft normal dh ich sehe den threeway handshake und das schließen (die letzten sechs Packete im Screenshot)
Wenn ich aber zu einem IRC Server Verbinde sendet mein Rechner ein RST statt dem FIN (die ersten 10 Packete).

Ich kann mir das nicht erklären, habt ihr dazu ne Idee?
ich versuche gerade einen kleinen IRC Client in go zu schreiben, dabei ist mir etwas merkwürdiges aufgefallen.
Ich öffne eine TCP Verbindung zu einem Server und schließe sie nach einer Sekunde wieder:
Code:
package main
import (
"fmt"
"net"
"os"
"time"
)
func main() {
conn, err := net.Dial("tcp", os.Args[1])
if err != nil {
fmt.Println(err)
return
}
time.Sleep(time.Second)
err = conn.Close()
if err != nil {
fmt.Println(err)
return packete
}
}
Die Verbindung zu einem "normalen Server" (zB google.de:80) läuft normal dh ich sehe den threeway handshake und das schließen (die letzten sechs Packete im Screenshot)
Wenn ich aber zu einem IRC Server Verbinde sendet mein Rechner ein RST statt dem FIN (die ersten 10 Packete).

Ich kann mir das nicht erklären, habt ihr dazu ne Idee?