TCP端口属于主机还是IP地址?

TCP端口属于主机还是IP地址?,tcp,Tcp,我了解TCP/IP地址,也了解端口,但我不知道端口是否绑定到主机(因此一个主机获得一个端口80),或者端口是否绑定到IP地址(因此一个具有2个NIC/IP地址的主机获得2个端口80)?端口属于IP地址。如果一个主机有两个NIC,并且一个程序只绑定到一个IP地址,那么同一个端口仍然可以被另一个程序使用(假定它绑定到另一个IP地址)。答案是“两者都可以” 如果绑定到特定的IP:端口,则可以使用与IP地址相同的端口号进行尽可能多的绑定 如果在IPv6中绑定到0.0.0.0:port,或:port,则该

我了解TCP/IP地址,也了解端口,但我不知道端口是否绑定到主机(因此一个主机获得一个端口80),或者端口是否绑定到IP地址(因此一个具有2个NIC/IP地址的主机获得2个端口80)?

端口属于IP地址。如果一个主机有两个NIC,并且一个程序只绑定到一个IP地址,那么同一个端口仍然可以被另一个程序使用(假定它绑定到另一个IP地址)。

答案是“两者都可以”

如果绑定到特定的IP:端口,则可以使用与IP地址相同的端口号进行尽可能多的绑定

如果在IPv6中绑定到
0.0.0.0:port
,或
:port
,则该端口对主机的所有可能IP地址都是全局的,包括那些尚不存在的IP地址


但我同意@DavidShwartz的观点,这个问题有点不合理。事实上,端点是由
IP:port
定义的,而不仅仅是由
port
定义的。一个端口不是一个真正的东西,你实际上可以数。这只是一个16位的数字。

您的问题实际上没有意义,因此对它的回答不太可能有意义。“单端口80”和“双端口80”之间到底有什么区别?好吧,有了双端口80,你可以有两个完全不同的web服务器和网站(……是的,我知道你如何在一台主机上托管多个站点……这是一个理论问题……这很有意义,我在下面得到了有意义的答案)如果这两个完全不同的web服务器和web站点都使用相同的端口,但根据IP地址的差异区分要服务的数据,该怎么办?这是一个纯粹的语义问题,无论你想考虑它们不同的端口(因为它们可以通过IP地址区分)或者同一个端口(因为端口是相同的)。两个核心i5-3570K CPU是否“相同的CPU”?它只是一个16位。。。它由文档指定,因此它是某事物的一部分,因此它属于它,即使它不存在。所以不是像你所说的那样,萨亚特的身体不好RFC 793指定TCP标头中字段的格式,从而指定其值范围。实际值在任何意义上都是不可计数的。如果“同一端口”仍然可以被另一个程序使用,那就意味着只有一个端口,尽管它可以被两个程序使用。你确定这就是你的意思吗?