确定程序使用哪些端口

Rod*_*257 4 port wireshark

我正在尝试使用wireshark来确定某个程序使用的端口。如果我们在同一网络上,该程序可以很好地连接到服务器,但我显然需要转发防火墙上的端口以在办公室外使用它。

我打开wireshark,尝试建立从程序到192.168.1.6的连接。然后我查看进出 192.168.1.6 的数据包。

他们都是 TCP 并说:

Source: 192.168.1.130
Dest: 192.168.1.6
Service: TCP    
Info: 49716 > 808 [PSH, ACK] Seq=1102 Ack=395 Win=65304 Len=87
Run Code Online (Sandbox Code Playgroud)

或者有些相反

Source: 192.168.1.6 
Dest: 192.168.1.130 
Service: TCP    
Info: 808 > 49710 [ACK] Seq=2 Ack=320 Win=254 Len=0
Run Code Online (Sandbox Code Playgroud)

我的问题是:

  • 我认为这只是端口 808,其他端口(源端口)偶尔会在 49710 和 49716 之间发生变化,这是什么意思?

  • 流量是否是开放连接的另一部分?或者我是否需要确保客户端 PC 也有端口 808 连接到他们的 PC?

Sha*_*den 6

  • 不需要特定源端口的应用程序的源端口往往落在临时范围内,> 49152。更多信息在这里

  • 只要防火墙是“有状态的”,换句话说,跟踪连接将来自同一 TCP 流的数据包识别为同一流的一部分(绝大多数现代防火墙都这样做),您只需要允许一个连接方向(到端口 808)。