常见网络端口及其应用(1024+)

常见网络端口及其应用(1024+)

经验文章nimo972025-03-24 17:12:5513A+A-

Linux 系统保留了小于1024的端口(0-1023),供系统使用,其他端口由用户自己分配。本文总结了被各种常见应用占用的大于1024的端口。

下面是原文的大概翻译:

大多数应用程序通过 TCP 或 UDP 端口进行通信。0-1023 端口通常是特权端口,需要管理员或超级用户权限才能将网络套接字绑定到具有相应端口的 IP。但超过 1024 的任何端口都可以自由使用。IANA(Internet 分配号码管理局)可以为特定应用程序“保留”端口——但这只是一种形式,用户和应用程序可以自由使用他们想要的任何端口。

来看一些端口号(1024+)以及它们在今天作为默认端口的用法。

有许多列表,但这旨在捕获实际用于生产的协议列表(并省略了许多用于特定游戏的一次性端口)。

观察到一些有趣的模式:

奇数和易于记忆的端口通常用于开发服务器。3000、5000 和 9000 在全功能 web 框架中很常见。具有相关特权应用程序端口的应用程序(例如,SMTP、DNS)有时使用重复的字符串(例如,用于多播 DNS 的 5353、用于 SMTP 的 3535 或用于 web 服务器的 8080)。除此之外,似乎策略是选择熵低的数字(例如,Jupyter 在 8888 上)或一个完全随机的数字,不太可能引起冲突(例如,用于 Minecraft 的 25565)。

1080 - SOCKproxy 2049 - Network File System (NFS)

2181 - Apache ZooKeeper

2375 - Docker REST API (HTTP)

2376 - Docker REST API (HTTPS)

3000 - "The Development Framework Port." Ruby on Rails 使用端口 3000 作为其 web 服务器的默认开发端口。Node 框架也使用此端口(例如,Express.js、Meteor、Create React App、NextJS、SvelteJS、Astro、Remix)。

3306 - MySQL

3478 - STUN, TURN (NAT Traversal)

4000 - Phoenix, Jekyll

4001 - etcd

4200 - AngularJS

4567 - Sinatra

5000 - "The Other Development Framework Port." Flask(Python)使用 5000 作为默认开发端口。ASP.NET Core 也一样。

5222 - XMPP (Extensible Messaging and Presence Protocol)

5349 - STUN, TURN over TLS

5353 - Multicast DNS - 遵循与 SMTP 相同的模式,偶尔在端口 3535 上运行。重复特权端口(DNS 使用 53)。

5432 - PostgreSQL

5900 - VNC (using a remote frame buffer, RFB)

6000 - X11(通过网络)。常见的做法是将显示编号添加到 6000(例如,DISPLAY 6 将通过 6006 提供)。

6379 - Redis 6660 - IRC(Internet Relay Chat)

6881 - BitTorrent

8000 - "Python Development Framework Port." 包括 Django 和 Python 3 的 http.server。

8080 - "The HTTP web server port." 像 5353(多播 DNS)和 3535(SMTP)一样,这是一个非特权端口,用于运行 HTTP web 服务器。

8333 - Bitcoin

8888 -Jupyter Notebook

8983 - Apache Solr

9000 - 用于各种应用程序,但没有中心主题或极其知名的应用程序。

25565 - Minecraft

27017 - MongoDB

51820 - WireGuard

点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7