# ServerSocket -> Zugriff nur von localhost



## Hansl (27. Jun 2007)

Hallo,

ich habe einen Serversocket erstellt:

```
ServerSocket server = new ServerSocket(3456);
```

jetzt würde ich gerne den Zugriff auf diesen Serversocket beschränken, so dass nur Verbindungen von localhost erlaubt sind. Wie kann ich das einstellen?
Vielen Dank!


----------



## André B. (27. Jun 2007)

Wie sieht es mit:
http://java.sun.com/j2se/1.5.0/docs/api/java/net/Socket.html#getInetAddress()
aus?
Du musst doch eigentlich nur an die Adresse kommen, an die das Socket gebunden ist. Wenn du feststellst, dass die Adresse von ausserhalb ist, also nicht 127.0.0.1, kannst du die Verbindung trennen.

Mfg André

Ps. : Das Socket bekommst du natürlich durch die accept()-Methode vom ServerSocket.


----------



## HoaX (27. Jun 2007)

warum kompliziert wenn man doch mit 
http://java.sun.com/j2se/1.4.2/docs/api/java/net/ServerSocket.html#ServerSocket(int,%20int,%20java.net.InetAddress)
die adresse angeben kann wo gelauscht wird?


----------



## André B. (27. Jun 2007)

So gehts natürlich auch


----------



## Hansl (29. Jun 2007)

Hm, brings irgendwie nicht ganz hin. Hab folgendes gemacht:

```
ServerSocket server = new ServerSocket(3456,10,InetAddress.getByName("127.0.0.1"));
```
Aber ich kann immer noch von anderen PCs im LAN auf den Socket verbinden.


----------



## André B. (29. Jun 2007)

Mal mit meiner Idee probiert?
http://www.java-forum.org/de/viewtopic.php?p=309004#309004


----------



## Hansl (29. Jun 2007)

Uh sorry mein Fehler. Da die Verbindung immer über einen Webserver, der auf localhost lief, wurde die Verbindung auch nie blockiert. 
Es funktionieren übrigens beide Methoden.
Danke euch!


----------

