ServerSocket默认邦定IP实现过程详解

ServerSocket默认邦定IP实现过程详解,第1张

ServerSocket默认邦定IP实现过程详解

本文详细介绍了设置ServerSocket默认设置和绑定IP的全过程。原文根据示例代码非常详细,对大家的学习培训或者工作都有一定的参考价值,有需要的朋友可以参考一下。

当设计中必须开放服务器端时,立即写入端口号进行本地检测,具体自然环境必须针对要绑定的IP。

至于网络服务器,有时候不仅仅是一个网络端口,每个人的系统软件都必须按照一个特定的IP和端口号进行通信,所以服务器申请的IP和端口号必须定义环境变量

那么在正常检测中,没有特定IP的情况下,ServerSocket绑定在哪里呢?

在这种情况下,网络服务器会将这个端口号与0.0.0相关联,即与所有ip地址相关联,即可以在每个IP地址上接收请求。对于0.0.0.0是什么,这里就不多说了。

下面是一个测试代码,你可以根据下面的程序流程来看清楚到底是什么情况:

packagetest; importjava.net.InetSocketAddress; importjava.net.ServerSocket; importjava.net.Socket; publicclassTest{ publicstaticvoidmain(String[]args)throwsException{ SocketClientclient=newSocketClient(); newThread(client).start(); ServerSocketserverSocket=newServerSocket(); serverSocket.bind(newInetSocketAddress(8888)); //serverSocket.bind(newInetSocketAddress("127.0.0.1",8888)); //serverSocket.bind(newInetSocketAddress("192.168.1.100",8888)); System.out.println(serverSocket.toString()); serverSocket.accept(); } } classSocketClientimplementsRunnable{ publicvoidrun(){ try{ Thread.sleep(2000); try{ Socketsocket=newSocket("127.0.0.1",8888); System.out.println("127.0.0.1取得成功"socket.toString()); }catch(Exceptione){ System.err.println("127.0.0.1不成功"); } try{ Socketsocket=newSocket("192.168.1.100",8888); System.out.println("192.168.1.100取得成功"socket.toString()); }catch(Exceptione){ System.err.println("192.168.1.100不成功"); } }catch(Exceptione){ e.printStackTrace(); } } }

这时,复制结果是:

服务器[addr=0.0.0.0/0.0.0,port=0,localport=8888]
127.0.0.1套接字成功[addr=/127.0.0.1Port=59213]
192.168.1.100成功套接字[addr=/192.168.1.100,Port=8888,local

应用127.0.0.1时复制结果:

服务器[addr=/127.0.0.1,port=0,localport=8888]
127.0.0.1套接字[addr=/127.0.0.1,port=8888,]

应用192.168.1.100时复制结果:

服务器[
192.168.1.100,port=0,localport=8888]
127.0.0.1失败
192.168.1

可以看到默认设置是0.0.0.0,然后可以通过应用这台电脑上可以识别的所有IP,浏览到8888端口号。

自然这不是双网卡的认证,因为还是在一个网口上玩。有标准的可以在刀片机上测试。

文章里的内容就这些了。期待对大家的学习和培训有所帮助,也期待大家的应用。

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

原文地址: http://outofmemory.cn/zz/774245.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存