Ich schreibe ein System, wo zwei Programme asynchron über einen TCP-Socket kommunizieren. Der Client ist in Golang geschrieben, aber der Server kann variieren. Ich schreibe gerade eine in C#.Welche Adresse wird für den lokalen TCP-Server verwendet?
Während der Entwicklung habe ich
conn, err := net.Dial("tcp", net.JoinHostPort("127.0.0.1", strconv.Itoa(d.port)))
für den Client und auf dem Server ich getan habe:
this.listener = new TcpListener(IPAddress.Parse("127.0.0.1"), port);
jedoch für die Produktion, ich vermute, dass nicht in allen Fällen funktionieren könnte. Zum Beispiel könnte der Benutzer IPv6 verwenden. Ich versuchte auch localhost
auf dem Server, aber auf Windows, das nicht als 127.0.0.1
standardmäßig zu sein scheint (es muss aktiviert sein, die keine Option ist).
Gibt es eine einfachere Möglichkeit, einen lokalen TCP-Server auszuführen, der in jedem Fall funktionieren sollte?
verwenden Sie 127.0.0.1. Für alle praktischen Zwecke ist es immer definiert. – JimB