# Socketverbindung übers WWW



## stev.glasow (23. Okt 2004)

Hi,
ich habe folgenden Code:

```
public class Testa {
	public static void main(String[] args) throws Exception {
		
		ServerSocket socket = new ServerSocket (1234);
		socket.accept();
		System.out.println("verbunden");
		
		}
}
```


```
public class Testb {

	public static void main(String[] args) throws Exception{
                String host = ... ;// da komm ich gleich zu
		new Socket(host, 1234);
		System.out.println("alles klar");
	}
}
```

wenn ich als host "127.0.0.1"  verwende geht es aber wenn ich als host "217.237.43.163" (meine zu gewiesene ip) angebe bekomme ich  folgende Exception "Exception java.net.ConnectException: Connection timed out: connect"
Dauert etwa 10 Sekunden.
Keine UnknownHostException !

Dass man die IP als Host angeben kann bin ich mir ziehmlich sicher, da ich vor einiger Zeit eine Server-Client Anwendung nach dem gleichem Prinzip (ip als host übergeben) in einem LAN laufen lassen habe, was ohne Probleme funktioniert hat.

[edit]
achja: ne Firewall ist nicht im weg.


----------



## Illuvatar (24. Okt 2004)

Hast du nen Router und (wenn ja) den Port geforwarded?


----------



## foobar (24. Okt 2004)

Teste doch mal den ServerSocket mit ping und einem Portscanner.


----------



## stev.glasow (25. Okt 2004)

Illuvatar hat gesagt.:
			
		

> Hast du nen Router und (wenn ja) den Port geforwarded?


Nein, habe keine eigenen Router zulaufen.



			
				foobar hat gesagt.:
			
		

> Teste doch mal den ServerSocket mit ping und einem Portscanner.


Den Port findet er von Außen nicht.

Ich hab das Problem zwar jetzt anders gelöst, interssieren würde mich das jetzt trotzdem.

Funktinoniert das bei euch?


----------



## Bleiglanz (25. Okt 2004)

freilich funktionierts

=> besorg dir etherreal, damit du dir anschauen kannst, was im Netzwerk passiert


----------



## stev.glasow (25. Okt 2004)

Bleiglanz hat gesagt.:
			
		

> freilich funktionierts
> 
> => besorg dir etherreal, damit du dir anschauen kannst, was im Netzwerk passiert


Naja das da nix passiert weiß ich ja. Nur warum nicht?


----------



## Bleiglanz (25. Okt 2004)

>>wenn ich als host "127.0.0.1" verwende geht es 

läuft lokal (ohne dass was übers netz geht)

>>aber wenn ich als host "217.237.43.163" 

läuft über den TCP/IP-Stack, Paket wird an den nächsten Router/Gateway geschickt, dieser schickts irgendwohin weiter

irgendein anderer Router sollte das Paket dann wieder "zurück" in dein eigenes Netzwerksegnment schicken

=> weiss dein nächstes Gateway, dass dein Rechner diese IP hat?


----------

