如果服务器机器侦听更多65536端口会发生什么?

问题描述 投票:-2回答:1

在Storm的情况下,它说“每个工作人员使用单个端口接收消息,此设置定义哪些端口可以使用。”,这意味着我可以将插槽号设置为大于65536的数字,以便服务器机器可以打开超过65536个进程,每个进程都侦听一个独特的端口?

这不是一次有多少tcp连接,我知道tcp连接可以超过65536。

那么服务器机器会打开超过65536个进程并侦听更多65536个端口会发生什么?

sockets tcp port apache-storm
1个回答
2
投票

当进程侦听TCP端口时,它不只是侦听端口号。它侦听端口号和IP地址的组合。通配符IP地址可用于指示侦听所有IP地址。

对于本地连接,您可以将127.0.0.2或127.1.0.1等IP地址与各种端口号组合使用,以超过65,536个本地端口。您可以通过这种方式拥有超过65,536个端口,并且工作正常。但是,无法从其他计算机访问127.0.0.0/8内的IP地址,因此它仅在本地。

要拥有可以通过网络接受入站连接的端口,必须将其绑定到可通过该网络访问的IP地址与TCP端口号的组合。因此,只有一个网络地址的计算机只能有65,535个不同的端口,可以进行传入的TCP连接。但是,您可以通过为计算机分配其他网络IP地址来超出此限制,假设您使用的软件允许您指定要绑定的IP地址。 (如果没有,你可以很容易地破解它以允许它。)

© www.soinside.com 2019 - 2024. All rights reserved.