作者:kikokikolove | 2023-09-04 20:03
在开发将在TCP/IP端口上侦听的应用程序时,应如何选择默认端口?假设此应用程序将安装在许多计算机上,并且需要避免端口冲突.
1> Kevin Wong..:
走在这里,并选择一个端口与说明Unassigned
你建议他选择100以下的港口?
我应该选哪一个?
2> curtisk..:
第一步:查看IANA列表:
在那里你会看到列表的尾部
"动态和/或专用端口是49152到65535的端口"
所以那些将是你更好的赌注,但是一旦你选择了一个你可以随时google上看看是否有一个足够受欢迎的应用程序已经"声称"它
但是不会使用动态端口让我对间歇性(虽然罕见)端口冲突持开放态度?也许在未注册或分配给不起眼的应用程序的注册范围中使用端口更安全.
关于动态范围,我认为"冲突"问题可能一直在询问,如果操作系统正在使用该范围用于临时端口(应该如此),那么如果操作系统随机决定,是否会与您选择的端口发生冲突使用该端口进行例如一些出站连接.(正如我所理解的那样,随机使用这个范围就是短暂的端口.)见另一个[问题](http://stackoverflow.com/questions/10476987/best-tcp-port-number-range-for-内部应用程序,更详细地说明了这一问题.
除非您明确向IANA注册您的端口选择,否则您会使用"UNASSIGNED"运行相同的冲突赔率.实际上由于低端有许多未分配的,这些可能更有可能是恕我直言
只是不要错误地假设您的应用需要IANA指定的端口,因为您认为您的应用会在实际使用之前爆炸.:)
始终以未分配的范围开始,并选择用户/管理员可配置端口来处理可能的冲突.只有当您的应用程序得到广泛使用时(想想BitTorrent或其他一些大用途),您才真正考虑申请指定的端口.否则不要超出指定的范围.如果这是严格内部/个人的事情,那么只需记录各种服务使用的端口,只要人们可以在网上查找它们就应该没问题.考虑类似于不可路由的IP的私有/动态范围 - 它们非常适合小型/私人使用.
3> jj33..:
如果广泛使用,你的意思是你想在未来使用它来防止其他人,可以申请将其标记为IANA保留您的应用程序在这里
4> Thorsten79..:
我知道的最全面的官方IANA端口号和非官方端口号列表是nmap-services.