【问题标题】:Who needs to open port - client or server?谁需要打开端口 - 客户端或服务器?
【发布时间】:2018-05-24 11:35:22
【问题描述】:

在网络通信中,如果 PC1 正在发送请求以在 PC2 上执行任务,那么 PC2 将结果响应给 PC1,谁(PC1 或 PC2)需要打开端口?还是两者都需要打开端口?

我正在使用 NRPE 和 NSClient++ 设置 nagios Core,但我不清楚打开端口需要哪个系统。以及需要在客户端和服务器上打开哪些端口号?

【问题讨论】:

  • “服务器正在发起请求”已经是一个矛盾的术语。客户端发起请求:服务器响应它们。
  • @EJP 好的。我所说的服务器是“Nagios 服务器计算机”向客户端计算机发送请求以执行某些操作。客户端计算机以结果响应。我会改写我的句子
  • PC2 需要有一个 openlistening 端口以及一个正在运行的 server 进程监听这个端口。这 3 个要求是不同的,必须仔细检查,因为网络拓扑和虚拟化充满了魔力。您需要检查客户端计算机软件操作系统防火墙、客户端计算机物理路由器防火墙、服务器计算机物理路由器防火墙以及服务器计算机操作系统软件防火墙的开放性。开放性要求 inboundoutbound 都是开放的。

标签: networking port communication nagios nrpe


【解决方案1】:
  • 他们都需要打开端口。
  • 需要从可用端口中选择端口号(通常 > 1024)。
  • 客户端需要知道服务器的端口号才能启动通信。

我对您的环境或用例一无所知。但以上 3 行适用于任何类型的套接字通信。

【讨论】:

  • 我不明白你所说的They both need to open ports. 是什么意思。据我所知,只有服务器需要打开一个端口,并且可以通过在客户端机器上运行nc -w 5 -z server_ipaddr_here server_port_here 来验证这一点的证据或证明。当客户端成功建立到服务器的 tcp 连接后,客户端将使用系统随机选择的整数动态创建端口。这个来自客户端的随机整数和服务器端的固定端口号都形成了连接。但是客户端端口肯定没有打开。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-23
相关资源
最近更新 更多