在远程服务器上,该iscsi
服务侦听端口3260
。
什么决定了 iscsi 客户端上使用的本地端口?
我正在使用该open-iscsi
包,并/usr/sbin/iscsid
作为客户端。
在下面的示例中,可以看到netstat -ptn
我的客户端 ( 1.2.3.4
) 侦听端口 38770:
tcp 0 0 1.2.3.4:38770 1.2.3.5:3260 ESTABLISHED 29161/iscsid
这个端口是完全随机的,还是可以在客户端的某个地方指定?
我需要提前知道这个端口,以便我可以配置防火墙。
答案1
这个端口是完全随机的,还是可以在客户端的某个地方指定?
所有 TCP/UDP 连接都是通过为客户端选择一个随机端口来工作的(而服务器有一个众所周知的端口)。您不必指定端口,操作系统会为您选择它(尽管客户端可能可以解决该问题,如果您向其添加足够的代码)。
我需要提前知道这个端口,以便我可以配置防火墙。
不,你不知道。您告诉防火墙服务器端口,然后告诉防火墙的连接跟踪器应该通过与该端口建立的连接。这将处理客户端的随机端口。