为什么 20 以内的端口基本上没人使用?

2018-02-19 20:20:14 +08:00
 yuzenan888

今天搭服务器,试着把酸酸乳放到了 1 号端口上,结果一切正常。

tcpmux          1/tcp                           # TCP port service multiplexer
tcpmux          1/udp                           # TCP port service multiplexer
rje             5/tcp                           # Remote Job Entry
rje             5/udp                           # Remote Job Entry
echo            7/tcp
echo            7/udp
discard         9/tcp           sink null
discard         9/udp           sink null
systat          11/tcp          users
systat          11/udp          users
daytime         13/tcp
daytime         13/udp
qotd            17/tcp          quote
qotd            17/udp          quote
msp             18/tcp                          # message send protocol (historic)
msp             18/udp                          # message send protocol (historic)
chargen         19/tcp          ttytst source
chargen         19/udp          ttytst source
ftp-data        20/tcp
ftp-data        20/udp

然而这激发了我的好奇心,为什么 20 以内的端口基本上没人使用?

看了下协议列表,这些端口都是有绑定协议的,但是这些协议基本上一个都没看到过,网上的资料也非常少。

我猜想 20 以内端口绑定的协议是 TCP/IP 协议刚制定时候,测试用的协议?

大家讨论一下。

7952 次点击
所在节点    服务器
57 条回复
mario85
2018-02-19 22:58:41 +08:00
@liwufan “熟知”的意思是端口一旦被定义就应该被熟知。所以熟知端口号范围是种资源,跟 IP 一样,Unassigned 是为了留作日后定义新的协议使用。
liwufan
2018-02-19 23:10:50 +08:00
@yylbfyl 我晕倒,cpu 和公交车位的解释也有点生搬硬套吧。我去翻了一下 rfc6335 ( https://tools.ietf.org/html/rfc6335#page-11 ),有段挺有意思的,讲的是 76%的 tcp udp system 端口被注册了(我猜是指 0-1023 ),另一边只有 9%的 1024-49151 区间用户端口是被注册的。每年用户端口以 800 个的速度增加,估计 85 年以后会出现老的端口被重新分配的时间。想想这问题是问早了,等到曾孙这一辈的人再来回答吧
Humorce
2018-02-19 23:12:09 +08:00
不不不,这就跟有条只有傻子才会走的远路一样,
你没走向里面之前还和大家一样呢
ETiV
2018-02-19 23:47:22 +08:00
说到端口号,我觉得 iOS 很有意思

下午用 iOS VLC 往手机里传片子,走的网络,发现 VLC 居然可以监听 80 端口
GooMS
2018-02-20 00:08:12 +08:00
可能是怕冲突?所以没有人用我觉得这也是一点吧
另外约定也是答案的一种,随意指责和教育合适吗?
congeec
2018-02-20 00:17:39 +08:00
看了楼上的我只想说冷静啊大兄弟。别打起来了

也就是 convention 和 rule 的区别
TheKiller
2018-02-20 00:34:44 +08:00
专门留给一些服务的 当然你不会用到这些服务的话使用这些端口是没什么问题的
kkzxak47
2018-02-20 00:53:38 +08:00
为什么思维死板的人要强调其他人思维死板😂
阶段一,没有规范,所有端口随意使用。
阶段二,在实践中产生非标准规则。
阶段三,定义标准,固化规则。

人家已经在问阶段二和阶段三了,你跑来回答阶段一,真的以为人家不懂嘛
yylbfyl
2018-02-20 02:58:51 +08:00
@kkzxak47 我只是可以从一个人的语言和用词中,大致判断出一个人的处境和心理。源于对中文的理解。
你的这个阶段是适合什么场景呢?秦朝统一全国时,焚书坑儒,建立了统一的新的单位衡量制,这个直接就从你说的第三阶段开始了,并不是从第一、第二、第三阶段这样发展的。但是从中国文化整个历史的发展中,又是这样的阶段。所以从不同的角度,宏观或微观,整体或阶段。不同的场景,情况也不同。
有空的时候多看看《易经》吧。
binux
2018-02-20 03:13:11 +08:00
你当然可以用,当你的软件足够流行的时候,那个端口就是你的了。
当然在此之前,别人会质问你为什么要用这个端口。
hundan
2018-02-20 03:41:44 +08:00
@yylbfyl 当我们在讨论一件事的时候,你跑来分析我们的语言,然后分析我们的情绪,从对一件事转到对一个人的讨论,这对于事情的讨论有任何帮助吗?话里行间带着不必要的补充说明,踩别人捧自己,未免自视过高。
你说秦朝直接从第三阶段开始?难不成,秦统一前,不在楼上所说的第三 第二 第一任何阶段?照你说的从 0 开始,则之前没有汇率转化问题,那岂不是统一之前,各国之间从未有过贸易往来?你所说的从第三阶段直接开始,不过是生生把这一阶段从完整演变体系里剥离,不同的场景,总有相同的情况,正因事情总有相通之处,你看的 易经 三国 才有存在的必要,如果事事都不同,何来逻辑,何来以史为鉴?
你看了这么多三国易经,连这点道理都不懂?
cnnblike
2018-02-20 03:51:21 +08:00
随便用都行,我 ssh 就开在 2 端口,反正能用啊,其他什么熟知端口之类的,管他毛事。
我 ssh 开 443 端口也是我自己爽,我又不用 https,我的系统就是我的,想怎么用就怎么用。
snnn
2018-02-20 07:01:22 +08:00
那些是老服务,没人跑了
有 rfc,你没找到。
win10 都还有它们呢
yylbfyl
2018-02-20 07:27:13 +08:00
@hundan 从表象看出问题的本质,从语言的表象看出一个人内心的逻辑和思维,这是我的思维习惯,也是我自己的看法和理解。你有参加过答辩环节吗?下面的老师没有对你的话和你的想法有过任何拷问?
“但是从中国文化整个历史的发展中,又是这样的阶段。”上面的回复中,这句话表示从宏观中看,我没否认楼上那种阶段一、阶段二、阶段三的发展啊。
lfk0000
2018-02-20 07:50:15 +08:00
这帖子是 守序善良 和 混乱邪恶 测试帖么_(:з」∠)_

ps:那些端口是在用相对应的协议的时偷懒用的吧,可以少打个端口号。。。
jedihy
2018-02-20 08:22:45 +08:00
你自己的 server 爱怎么用就怎么用呀
coymail
2018-02-20 09:03:22 +08:00
冗余
msg7086
2018-02-20 09:12:33 +08:00
主要原因:
1-1024 是特权端口,需要 root 权限才能监听,像是酸欧派这样无所谓的程序,放在 root 权限上是很危险的。
如果不放在 root 权限上,就要另行给程序附加 CAP_NET_BIND_SERVICE 特权,从各种角度来说都不方便。
所以对于普通应用程序,监听在 1024 以上是一般的行为。

至于端口号分配,那都是上古时代的遗留问题。现在常用的可能只有 21 22 这些,更低的那些早已被淘汰了。
dot
2018-02-20 09:18:55 +08:00
有预定义的端口,只要是为了方便互联互通,比如你也用浏览器访问 HTTP 网站默认连接 80,FTP 默认 21,HTTPS 默认 443,SSH 默认 22,这些属于[约定俗成],如果是你自己的服务,你可以不遵守,但是用户就需要额外的东西来适应你,比如 http://example.com:88
再比如键盘的 QWERTY 键位,你完全可以 DIY 一个 26 字母顺序排列的键盘。
这些规则是为了方便,是规则,不是规定。
MonoLogueChi
2018-02-20 09:19:40 +08:00
http://www.bejson.com/doc/port/

想看端口具体是干什么用的,可以看这里。只要端口用不到,你自己随便用,但是建议还是不要用这些端口。虽然我以前用过 80,也用过 443

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/431253

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX