V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
ray8888
V2EX  ›  问与答

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

  •  
  •   ray8888 · 2018-01-07 19:33:57 +08:00 via iPhone · 2101 次点击
    这是一个创建于 2545 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比如我有个服务通过 1234 端口对外提供,我防火墙入站肯定要把 1234 端口打开,那出站还需要打开 1234 端口吗?还是说服务提供数据,外面的客户端主动来取,我不用开出站的 1234 ?? http 是不是这种客户端主动取,服务端不会主动发的呢?
    10 条回复    2018-01-07 22:32:26 +08:00
    phoebuss
        1
    phoebuss  
       2018-01-07 19:43:24 +08:00 via Android
    按照 C-S 模型,服务器只响应请求不会主动联系客户端…出站要开所有端口,这样才能选择随机端口建立反向连接
    WordTian
        2
    WordTian  
       2018-01-07 19:48:06 +08:00 via iPhone
    1234 的端口出站应该需要开吧,不开出站,客户端怎么能收到回复?
    ray8888
        3
    ray8888  
    OP
       2018-01-07 19:51:38 +08:00 via iPhone
    @WordTian 所以就是我想问的,服务端到底是主动发出去还是等客户端来取?主动发,那肯定要开出站,等客户端取,那就不用吧,我查了一下,http 协议好像是客户端取,服务端不主动发的?
    xenme
        4
    xenme  
       2018-01-07 19:53:45 +08:00 via iPhone   ❤️ 1
    所谓出站入站都是针对第一个数据包,也就是建立连接的第一个请求。

    很显然你的服务是被动响应,请求都是客户端发往本机 1234,对你本机来说需要开对应协议( tcp/udp )等的入站规则即可。
    ray8888
        5
    ray8888  
    OP
       2018-01-07 19:55:08 +08:00 via iPhone
    @phoebuss 服务端出站开所有端口,那对应的客户端是哪个端口接受?(相对应的是不是就是客户端的入站规则?要开所有的入站端口了?)不是很了解,望赐教,谢谢
    ray8888
        6
    ray8888  
    OP
       2018-01-07 19:56:51 +08:00 via iPhone
    @xenme 如果是这样,那就和我想的一样了,服务端不需要开出站规则
    h4lbhg1G
        7
    h4lbhg1G  
       2018-01-07 20:02:50 +08:00
    出站的话 看什么协议了,比如 ftp,21 只传输控制指令,数据传输好像是临时协商的一个高位端口传输的。
    WordTian
        8
    WordTian  
       2018-01-07 20:18:16 +08:00 via iPhone
    @ray8888 服务端一般是被动响应。感觉具体还得看防火墙的拦截机制,不同防火墙应该还不太一样。
    yingfengi
        9
    yingfengi  
       2018-01-07 22:22:39 +08:00 via Android
    源地址,目的地址,源端口,目的端口
    你是用户请求的目的地址,端口
    jzy
        10
    jzy  
       2018-01-07 22:32:26 +08:00 via iPhone
    开入站规则即可
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3030 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 11:02 · PVG 19:02 · LAX 03:02 · JFK 06:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.