端口发送给自己

时间:2012-01-20 18:51:29

标签: port

几年前,我正在研究一种可以使用直接连接在计算机之间进行通信的应用程序。我记得当我想要仅使用一台计算机进行测试时,我会发送一个端口。此端口会将数据包视为从另一台计算机发送到计算机,或者......某事。

我为某些含糊不清而道歉,但我并没有回忆起我所做的具体细节。我只记得它非常方便用于测试目的。我会运行应用程序两次,并将一个充当服务器,另一个充当客户端。他们都会从不同的端口发送,但都会发送到同一个“本地”端口......或类似的东西。

任何人都知道我在说什么?我想知道这将是什么端口号。我相信它是为这种用途而保留的。

谢谢你, 乔纳森

2 个答案:

答案 0 :(得分:1)

端口用于相同或不同主机上的应用程序之间的通信。 当您的主机充当客户端时,它可以决定发送到任何端口。如果您的主机充当服务器,则可以将服务器程序配置为侦听一系列端口。

接口用于不同的主机以相互识别。一个主机可能有多个接口。 你的主机应该有一个带有ip 127.0.0.1的环回接口,非常方便测试本地流量。假设您已在端口8080上启动了Tomcat服务器,那么您可以通过

访问在您自己的服务器上运行的Web应用程序
http://127.0.0.1:8080/your_app

假设您希望主机通过另一个接口(例如通常代表本地网络上的节点的192.168.1.1)访问自己,您同样可以通过

访问您的应用程序
http://192.168.1.1:8080/your_app 

如果您未能加载网页,原因可能包括:

  1. 您的防火墙(Windows)或iptables(Linux)不允许进入端口8080的入站流量。
  2. 您的服务器未在侦听此接口IP地址192.168.1.1。
  3. 出于第一个原因,您可以在具有高级安全性的Windows防火墙中添加规则以允许到特定端口或特定应用程序(Windows)的入站流量,或者在/ etc / sysconfig / iptables(Linux)中添加一行。

    出于第二个原因,检查服务器配置文件(例如,对于Tomcat,它位于server.xml中)。

    希望信息有所帮助。

答案 1 :(得分:0)

我要求在Java中创建Socket时可以使用的“String”地址localhost。