【问题标题】:Can there ever be more than one program running on a single port?一个端口上可以运行多个程序吗?
【发布时间】:2014-03-02 21:01:21
【问题描述】:

可以在一个端口上运行多个程序吗?换句话说,同一台服务器上的两个应用程序可以有相同的端口号吗?

【问题讨论】:

标签: sockets networking port


【解决方案1】:

如果它们绑定到不同的 IP,可以。绑定到端口会同时绑定到 IP 地址端口号。因此,如果应用程序 A 绑定到 192.168.0.56:25565,而应用程序 B 绑定到 127.0.0.1:25565,它们将不会有问题。但是如果应用程序 C 想要绑定到其中任何一个,或者绑定到0.0.0.0:25565,它就会报错。

【讨论】:

  • 如何让同一台服务器上的应用绑定不同的IP?
  • 取决于语言。
  • @SotiriosDelimanolis 在 Java 中,您可以为各种套接字构造函数指定 InetSocketAddress;接口地址可以在那里指定。
【解决方案2】:

对于 TCP:可以,只要它们绑定到不同的接口(例如 eth0loopback)。在同一个界面,没有。

对于 UDP:是的。

【讨论】:

  • 如果我没记错的话,这对于 TCP 来说是正确的,但对于 UDP 是不正确的,但我的记忆可能是错误的。
猜你喜欢
  • 2013-04-04
  • 2018-04-04
  • 2019-10-09
  • 1970-01-01
  • 2011-11-16
  • 1970-01-01
  • 2020-05-17
  • 2013-04-26
  • 1970-01-01
相关资源
最近更新 更多