java服务端如何获得客户端的ip

java服务端如何获得客户端的ip,第1张

网络通信可分为两种模式:TCP有连接的通信

UDP无连接的通信

依照上述的问题我可以理解为你是要进行有连接的通信。是要经过三次握手才能实现可靠的连接

第一次:建立连接时三次握手,客户端发送syn包(syn=j)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN(Synchronize Sequence Numbers)同步序列号。

服务器端即可使用:

Socket s=serverSocketaccept();

String clientIP=sgetInetAddress()toString();

这就实现了java服务器端获取到连接此服务器的客户端的IP了,你若想实现获取所有连接此服务器的客户端的IP,你可以把每次accept()返回的socket放进全局的Vector里面,然后在遍历这个vector方法就同上代码咯……

服务器安装的 *** 作系统通常是windows、linux,当安装布署时,都会安装相应的应用软件,例如IIS,Apache,NET,JAVA,ORACLE,SQLserver,mysql等。当服务端都安装好后,经常遇到客户端无法访问的情况,要如何判断及处理IP地址的开放端口情况呢?

1、举例:linux服务器安装了Oracle软件,但同一网段局域网内的客户端无法访问。

2、 通常为了保障服务器的安全,许多端口都是默认不打开的,例如ORACLE的默认端口1521,在linux中也是不打开的。

3、     在windows客户端中运行CMD命令打开DOS命令执行窗口,运行命令:"telnet 19216802 1521" (IP地址要改为对应的服务器地址)

这命令是用于访问服务器上的相应端口,如果服务器的端口没打开,那么就会提示连接失败;

4、windows server的 *** 作系统要在防火墙中开放端口,linux *** 作系统要在iptables中增加打开端口的配置信息。

5、

服务器上的相应端口打开后,在客户端运行命令:"telnet 19216802 1521" ,当命令窗口跳为全黑,或者出现应用的名称提示,那么就说明端口正常连上了。  总之没有提示连接失败,那么就表示连成功了。

通过IP只能进行通信,要想 *** 作远程计算机,必须在远程计算机中运行自己写好的java程序,监听你通过socket之类发送的消息,根据消息内容,进行制定 *** 作,如果只是本地计算机写一个程序 *** 作远程,必然是不可能的 首先你都没权限

import javaioBufferedReader;

import javaioDataInputStream;

import javaioDataOutputStream;

import javaioInputStreamReader;

import javanetSocket;

public class Client {

public static void main(String[] args) throws Exception {

Socket clientSocket = new Socket("127001", 8008);

clientSocketclose();

}

}

没有异常就是可以连接了。

以上就是关于java服务端如何获得客户端的ip全部的内容,包括:java服务端如何获得客户端的ip、如何查看IP地址的开放端口情况、JAVA中如何通过IP 、端口连接到远程计算机,并读取文件。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9332409.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存