Java 通过WLAN的TCP/IP,权限被拒绝

Java 通过WLAN的TCP/IP,权限被拒绝,java,sockets,tcp-ip,Java,Sockets,Tcp Ip,这是我第一次接触java TCP/IP,我试图弄清楚这些东西是如何工作的。我在计算机PC1中为服务器制作了jar,在PC2中为客户端制作了jar,两者都连接到路由器。我正在尝试使用wlan接口遵循这些步骤。如果我在PC1中这样做 ifconfig wlan0 我明白了 好吧,如果我用参数64作为端口号运行服务器代码,我会得到 Port: 64 Nov 10, 2014 3:07:13 AM comunicacion.JavaTCPServer main SEVERE: null java.ne

这是我第一次接触java TCP/IP,我试图弄清楚这些东西是如何工作的。我在计算机PC1中为服务器制作了jar,在PC2中为客户端制作了jar,两者都连接到路由器。我正在尝试使用wlan接口遵循这些步骤。如果我在PC1中这样做

ifconfig wlan0
我明白了

好吧,如果我用参数64作为端口号运行服务器代码,我会得到

Port: 64
Nov 10, 2014 3:07:13 AM comunicacion.JavaTCPServer main
SEVERE: null
java.net.BindException: Permission denied
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:382)
at java.net.ServerSocket.bind(ServerSocket.java:375)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at java.net.ServerSocket.<init>(ServerSocket.java:128)
at comunicacion.JavaTCPServer.main(JavaTCPServer.java:74) 
端口:64
2014年11月10日凌晨3:07:13 com.JavaTCPServer main
严重:空
java.net.BindException:权限被拒绝
位于java.net.PlainSocketImpl.socketBind(本机方法)
位于java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:382)
位于java.net.ServerSocket.bind(ServerSocket.java:375)
位于java.net.ServerSocket.(ServerSocket.java:237)
位于java.net.ServerSocket。(ServerSocket.java:128)
位于comunicion.JavaTCPServer.main(JavaTCPServer.java:74)

我做错了什么?我怎样才能解决这个问题?我必须先在PC1中创建网络吗?所有代码都在Ubuntu中运行。

在基于Unix的系统中,1024以下的端口具有特权。您需要管理员权限才能访问1024以下的端口

因此,使用端口64会出现异常

您应该使用大于1024的端口号

您可以在此处获得有关使用1024以下端口的一些信息:


异常连接被拒绝通常发生在您尝试连接的端口上没有服务侦听时

可能存在以下问题:

  • 服务器未运行。
  • 服务器未等待接受连接。
  • 您可能连接到错误的端口号。您需要确保服务器和客户端使用相同的端口号
  • 您可能在服务器启动之前启动了客户端。
  • 您使用的代码很好。当然只有上述问题或某些网络问题。也可能有防火墙阻止连接。 有时,客户端的早期实例可能会使端口保持打开状态。因此,您可能需要再次使用其他端口

    您可以尝试从客户端ping服务器


    最好先检查本地主机上同一台机器上的服务器和客户端。

    好的,我已经用端口1025启动了服务器套接字,没有错误消息。但当我尝试使用参数inet addr 192.168.0.100和端口1025启动客户端时,出现异常,它表示连接被拒绝:-(在测试代码之前,我必须断开两台计算机与wifi路由器的连接吗?这是不必要的。在本地主机(即127.0.0.1)上测试时,您不需要wifi路由器。但在两台计算机上进行实际测试时,您需要连接到wifi路由器。在同一台计算机上测试时,请遵循以下步骤:1)在端口50000处启动计算机中的服务器代码。2). 在运行服务器的同一台计算机上,使用IP为127.0.0.1和端口50000启动客户端。现在,它正在运行正常:D谢谢,Kunjan,可以通过TCP/IP向PIC发送字节以远程移动步进电机吗?我想可以。但很抱歉,我对嵌入式编程一无所知。
    Port: 64
    Nov 10, 2014 3:07:13 AM comunicacion.JavaTCPServer main
    SEVERE: null
    java.net.BindException: Permission denied
    at java.net.PlainSocketImpl.socketBind(Native Method)
    at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:382)
    at java.net.ServerSocket.bind(ServerSocket.java:375)
    at java.net.ServerSocket.<init>(ServerSocket.java:237)
    at java.net.ServerSocket.<init>(ServerSocket.java:128)
    at comunicacion.JavaTCPServer.main(JavaTCPServer.java:74)