注册端口(1024 - 49,151)是向 IANA 注册供公众使用的端口号。
假设我有一个像 discord 这样的流行应用程序,它在某些端口上使用名为“xxx”的不同协议运行。
- 我是否必须向 IANA 注册端口号?
- 如果不是,那么如果每个人都可以使用任何端口,那么在 IANA 中注册端口号的目的是什么,在这种情况下会发生端口冲突?
- 为什么端口号公开使用会出现端口冲突?
- 如果一个端口已注册,那么如何知道它是否已注册或者是否未注册,是否有任何数据库?
任何实际的例子都会有助于理解。
答案1
关于 IANA 端口注册存在一个常见的误解。
此列表存在的唯一原因是为了避免与知名软件发生冲突。
如果您没有安装默认使用某个端口的软件,则没有什么可以阻止您使用列表中的任何一个端口。即使如此,您也可以将该软件设置为使用另一个端口(如果可能)。
我不建议在你的电脑上安装一个网络服务器,并使用端口 80 做除提供网页之外的其他事情,但你当然可以,只要你知道你在做什么。这很多时候是故意为之,例如 蜜罐。