【问题标题】:what happens if two private IP addresses have the same virtual port number如果两个私有 IP 地址具有相同的虚拟端口号会发生什么
【发布时间】:2022-01-04 08:10:39
【问题描述】:

如果本地网络上有多台计算机,并且恰好其中两台发送具有相同虚拟端口号的请求,

如果他们的私有IP地址变成一个公共IP地址并且它们具有相同的虚拟端口号,如何确定哪个请求属于哪台计算机。

例如 192.168.0.2:5555 和 192.168.0.3:5555?

【问题讨论】:

    标签: ip-address


    【解决方案1】:

    Iirc,网关路由器在私有 IP+端口组合与其单个公共 IP 的外部端口号之间进行转换。

    有不同的方法可以选择何时可以从外部寻址端口以及何时打开新端口。详情请查看https://datatracker.ietf.org/doc/html/rfc4787#section-4

    【讨论】:

    • 抱歉我的误解...例如有两个私有 IP 地址和相同的虚拟端口号 192.168.0.2:5555 192.168.0.3:5555 。在使用 NAT 的路由器上,ip 地址和端口号都更改了 124,231,54,100: 4867 124.231.54.100: 6165 ,但是当响应到来时,路由器看到不同的端口号,但仍然是虚拟端口号(操作系统给在每台计算机上)保持不变。路由器如何知道响应属于哪个主机?
    • 它保留了外部端口到主机+端口组合的映射,而不仅仅是端口到端口。例如端口 4867 上的传入请求转到 192.168.0.2:5555;对 6165 的请求转到 192.168.0.3:5555
    • 我稍微更新了答案并添加了参考
    猜你喜欢
    • 2016-03-24
    • 1970-01-01
    • 1970-01-01
    • 2017-09-16
    • 1970-01-01
    • 2012-06-27
    • 2011-08-29
    • 2016-10-05
    • 1970-01-01
    相关资源
    最近更新 更多