ServerSocket和Socket可以使用同一个端口吗?

时间:2011-11-13 21:06:50

标签: sockets port tuples serversocket


现在我想使用serversocket监听端口x,同时我想使用端口x建立一个套接字到其他serversocket,这意味着有一个serversocket和一个套接字将使用一个相同的端口,这可能吗?
我知道对于socket,它是四元组,一个端口可以有多个socket,但是对于socket和serversocket?
谢谢你的关注!

1 个答案:

答案 0 :(得分:4)

很难理解你的问题,因为当你说“port”时你不清楚你的意思是源端口还是目的端口。

如果您的问题是,“我可以接受端口X上的入站连接,还可以将的出站连接发送到端口X吗?”答案是肯定的。 (您可以绑定到连接到相同的端口。)

如果您的问题是“我可以在端口X上侦听,还可以从端口X进行出站连接吗?”答案是否定的 - 除非您使用两个不同的本地IP地址。对于单个IP地址上的TCP,您只能绑定一次该端口。如果你绑定到listen,那么从那时起,端口是为你接受的传入连接保留的 - 你不能再绑定它来从中建立传出连接