当前位置: 技术问答>java相关
java中的IP地址问题
来源: 互联网 发布时间:2015-08-17
本文导语: 有以下代码: 服务器端 ServerSocket svsocket=new ServerSocket(8000); Socket socket=svsocket.accept(); 有以下情况 socket.getLocalAddress(); socket.getLocalAddress().getHostAddress(); socket.getInetAddress(); socket.getInetAddress().getHostAddress(); socket.getPort()...
有以下代码:
服务器端
ServerSocket svsocket=new ServerSocket(8000);
Socket socket=svsocket.accept();
有以下情况
socket.getLocalAddress();
socket.getLocalAddress().getHostAddress();
socket.getInetAddress();
socket.getInetAddress().getHostAddress();
socket.getPort();
socket.getLocalPort();
客户端
Socket socket=new Socket(InetAddress.getByName(server),serPort);
有以下情况
socket.getLocalAddress();
socket.getLocalAddress().getHostAddress();
socket.getInetAddress();
socket.getInetAddress().getHostAddress();
socket.getPort();
socket.getLocalPort();
基本情况如下:
假如服务器的IP=202.202.0.1
客户端通过宽带上网,DNS=202.168.196.28 网关为192.168.0.1 本机IP为固定IP:192.168.0.93 域用户服务器为192.169.0.1
请问:如果在internet上
服务器器端的代码返回什么?
客户端代码返回什么?
如果在局域网内
假如服务器IP=192.168.0.1
客户端IP=192.168.0.93
分别考虑客户端加入域和不加入域的情况
服务器器端的代码返回什么?
客户端代码返回什么?
还有,上述代码分别代表什么意思?如何通过Socket取得一个服务器的地址,服务器如何通过Socket取得客户端地址?
小弟搞不明白,请各位大虾小虾指点一二,先谢过了
服务器端
ServerSocket svsocket=new ServerSocket(8000);
Socket socket=svsocket.accept();
有以下情况
socket.getLocalAddress();
socket.getLocalAddress().getHostAddress();
socket.getInetAddress();
socket.getInetAddress().getHostAddress();
socket.getPort();
socket.getLocalPort();
客户端
Socket socket=new Socket(InetAddress.getByName(server),serPort);
有以下情况
socket.getLocalAddress();
socket.getLocalAddress().getHostAddress();
socket.getInetAddress();
socket.getInetAddress().getHostAddress();
socket.getPort();
socket.getLocalPort();
基本情况如下:
假如服务器的IP=202.202.0.1
客户端通过宽带上网,DNS=202.168.196.28 网关为192.168.0.1 本机IP为固定IP:192.168.0.93 域用户服务器为192.169.0.1
请问:如果在internet上
服务器器端的代码返回什么?
客户端代码返回什么?
如果在局域网内
假如服务器IP=192.168.0.1
客户端IP=192.168.0.93
分别考虑客户端加入域和不加入域的情况
服务器器端的代码返回什么?
客户端代码返回什么?
还有,上述代码分别代表什么意思?如何通过Socket取得一个服务器的地址,服务器如何通过Socket取得客户端地址?
小弟搞不明白,请各位大虾小虾指点一二,先谢过了
|
1、在internet上:
服务器端:所有的local都显示本地的信息,包括:端口、地址等;所有的
inetaddress都显示client端的信息,其中:ip是202.168.196.28,端口是
不定的
2、在局域网中:
如果没有子网掩码,他们都是一个网段上的显示的都是对方和自己的真实ip
3、ServerSocket支持的是tcp协议,它只需要port即可,因为它是服务器,所以
它可以获得本地的地址;在客户端就需要知道server端的ip,port才可以通
信!其中的InetAddress就是java中用来处理ip地址格式数据的类,通过
InetAddress.getName(server)(其中server相信是server端的ip地址)就
处理了server的ip地址格式, 返回一个inetaddress 对象。
这些只是我的一些理解,请各位大侠指正!
服务器端:所有的local都显示本地的信息,包括:端口、地址等;所有的
inetaddress都显示client端的信息,其中:ip是202.168.196.28,端口是
不定的
2、在局域网中:
如果没有子网掩码,他们都是一个网段上的显示的都是对方和自己的真实ip
3、ServerSocket支持的是tcp协议,它只需要port即可,因为它是服务器,所以
它可以获得本地的地址;在客户端就需要知道server端的ip,port才可以通
信!其中的InetAddress就是java中用来处理ip地址格式数据的类,通过
InetAddress.getName(server)(其中server相信是server端的ip地址)就
处理了server的ip地址格式, 返回一个inetaddress 对象。
这些只是我的一些理解,请各位大侠指正!
|
帮你up