面试通关计算机网络–基础(3)

kayokoi 发布于 2025-08-07 56 次阅读


常见的端口以及对应的服务

端口号的范围是 0 到 65535,其中:

  • 0 - 1023: 熟知端口 (Well-known Ports) 或系统端口。这些端口被分配给一些最常见、最核心的网络服务,由IANA(互联网号码分配机构)统一管理。我们表格中的大部分端口都属于这个范围。
  • 1024 - 49151: 注册端口 (Registered Ports)。可以被软件供应商注册,供其特定应用程序使用。
  • 49152 - 65535: 动态端口 (Dynamic Ports) 或私有端口、临时端口。客户端程序通常使用这个范围内的端口与服务器建立连接。

客户端的端口可以重复使用吗?

在客户端执行 connect 函数的时候,只要客户端连接的服务器不是同一个,内核允许端口重复使用。

TCP 连接是由四元组(源IP地址,源端口,目的IP地址,目的端口)唯一确认的,那么只要四元组中其中一个元素发生了变化,那么就表示不同的 TCP 连接的。

所以,如果客户端已使用端口 64992 与服务端 A 建立了连接,那么客户端要与服务端 B 建立连接,还是可以使用端口 64992 的,因为内核是通过四元祖信息来定位一个 TCP 连接的,并不会因为客户端的端口号相同,而导致连接冲突的问题。

正向代理和反向代理

特性 正向代理 (Forward Proxy) 反向代理 (Reverse Proxy)
服务对象 客户端 服务器端
客户端是否知情 通常知情 (主动配置代理) 通常不知情 (以为直连目标服务)
隐藏对象 隐藏真实客户端,对目标服务器透明 隐藏真实服务器,对客户端透明
主要作用点 客户端侧,作为客户端请求的出口 服务器侧,作为服务器接收请求的入口
典型应用 科学上网、内网访问控制、客户端缓存、身份隐藏 负载均衡、安全防护、SSL卸载、应用网关、缓存
谁发起的“代理” 客户端请求代理去访问目标 代理服务器代表后端服务器集群接收客户端请求
IP暴露情况 目标服务器看到的是正向代理的IP 客户端看到的是反向代理的IP,后端服务器IP被隐藏