可以建立两个相同的插座吗?

时间:2014-07-07 10:30:57

标签: sockets

套接字是IP地址,传输协议和端口号的组合 例如:在NAT后面的不同LAN上的两台主机可以具有相同的IP(假设为192.168.0.2)。
当这些主机连接到Web服务器时,是否可以建立两个相同的套接字? 我知道端口是随机生成的,但是在不同的主机上它可以生成相同的端口 或者是服务器告诉该端口号已被使用? 或者是NAT设备,它改变了IP数据包中的SRC IP? NAT设备如何知道,在哪里将数据包发送回LAN上的主机?

由于

1 个答案:

答案 0 :(得分:1)

正如你正确猜到的那样,NAT分配短暂的端口号,所以它们不能重合。因此,从服务器的角度来看,主机#1的目标副本类似于192.168.0.2:46812,主机#2的目标副本类似于192.168.0.2:51378。当NAT收到这些数据包时,它会根据端口号知道数据包所属的NAT后面的主机。如果您可以访问计算机控制台,则可以使用netstat -anp

检查号码