端口和IP地址之间的关系

时间:2010-05-30 07:03:20

标签: port ip

我的问题是,如果机器A有两个IP地址X,Y。

可以打开端口80两次,例如X:80Y:80吗?

说,端口是机器还是IP唯一的?

3 个答案:

答案 0 :(得分:6)

IP地址指定网络接口(考虑计算机上的以太网端口或WiFi连接)。端口号指定路由到达给定网络接口的消息的进程。因此,您可以使用具有不同IP地址的相同端口号,因为它们指定要在该给定接口上侦听的端口。但请注意,如果在调用bind函数时使用SO_REUSEADDR选项,则甚至可以重用具有相同IP地址的端口号。

答案 1 :(得分:3)

IP是独一无二的。当您bind(即重要部分)时,您绑定到IP和端口号,而不是机器和端口号。要绑定到所有地址,您可以使用INADDR_ANY

之类的内容

如果您只想绑定到几个地址,则必须“手动”执行此操作。当OS接收到数据包时,它首先检查他是否为目的地。然后它将它转发到具有requested(通过绑定,通过连接等)的程序,该程序是具有该特定IP和端口号的数据包的目的地。

答案 2 :(得分:1)

端口和IP具有1对1映射。

所以,是的,你可以在同一台机器上的两个不同的IP上打开端口80。