问个计算机通讯端口问题,一直没搞懂

2018-01-07 19:33:57 +08:00
 ray8888
比如我有个服务通过 1234 端口对外提供,我防火墙入站肯定要把 1234 端口打开,那出站还需要打开 1234 端口吗?还是说服务提供数据,外面的客户端主动来取,我不用开出站的 1234 ?? http 是不是这种客户端主动取,服务端不会主动发的呢?
2281 次点击
所在节点    问与答
10 条回复
phoebuss
2018-01-07 19:43:24 +08:00
按照 C-S 模型,服务器只响应请求不会主动联系客户端…出站要开所有端口,这样才能选择随机端口建立反向连接
WordTian
2018-01-07 19:48:06 +08:00
1234 的端口出站应该需要开吧,不开出站,客户端怎么能收到回复?
ray8888
2018-01-07 19:51:38 +08:00
@WordTian 所以就是我想问的,服务端到底是主动发出去还是等客户端来取?主动发,那肯定要开出站,等客户端取,那就不用吧,我查了一下,http 协议好像是客户端取,服务端不主动发的?
xenme
2018-01-07 19:53:45 +08:00
所谓出站入站都是针对第一个数据包,也就是建立连接的第一个请求。

很显然你的服务是被动响应,请求都是客户端发往本机 1234,对你本机来说需要开对应协议( tcp/udp )等的入站规则即可。
ray8888
2018-01-07 19:55:08 +08:00
@phoebuss 服务端出站开所有端口,那对应的客户端是哪个端口接受?(相对应的是不是就是客户端的入站规则?要开所有的入站端口了?)不是很了解,望赐教,谢谢
ray8888
2018-01-07 19:56:51 +08:00
@xenme 如果是这样,那就和我想的一样了,服务端不需要开出站规则
h4lbhg1G
2018-01-07 20:02:50 +08:00
出站的话 看什么协议了,比如 ftp,21 只传输控制指令,数据传输好像是临时协商的一个高位端口传输的。
WordTian
2018-01-07 20:18:16 +08:00
@ray8888 服务端一般是被动响应。感觉具体还得看防火墙的拦截机制,不同防火墙应该还不太一样。
yingfengi
2018-01-07 22:22:39 +08:00
源地址,目的地址,源端口,目的端口
你是用户请求的目的地址,端口
jzy
2018-01-07 22:32:26 +08:00
开入站规则即可

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

https://yangjunhui.monster/t/420852

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

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

© 2021 V2EX