首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >路由器后的源UDP端口

路由器后的源UDP端口
EN

Stack Overflow用户
提问于 2015-10-23 19:57:28
回答 1查看 97关注 0票数 0

我有两个网络,通过NAT/路由器连接。

网络A(路由器192.168.0.1)中的PC(A,192.168.0.2)向另一个网络B(路由器10.0.0.1)中的pc (B,10.0.0.2)发送UDP数据包。在网络A中,数据包具有源ip/端口192.168.0.2:2000和dst 10.0.0.2:5000,在网络B中,其变为src ip/端口10.0.0.1:6000 (因为出于任何原因,6000是空闲的,仅作为示例)和dst 10.0.0.2:5000。

现在,PC A从源ip/端口192.168.0.2:2000发送另一个udp数据包到网络B中的另一台PC。网络A中的源端口相同,但网络B中的源端口(本例中为6000)是否也相同?我想是的,但我不确定。

它是否也依赖于dst ip/端口?如果不是,这是否意味着一台pc,甚至网络A中的一个src端口,都可以用完网络B中的所有“路由器端口”?(我希望至少需要65536个网络A src端口才能填满网络B中的“路由器端口”)

我所说的“路由器端口”指的是哈希表条目,因此在PC B发送到A(通过路由器端口6000)的情况下,数据包将被传送。

EN

回答 1

Stack Overflow用户

发布于 2015-10-23 20:14:34

这很复杂。这取决于路由器配置。可以使用几种类型的NAT。-静态NAT -动态NAT -和端口重定向(与NAT不同)

通常,路由器执行从本地网络( A )到广域网(B)的NAT,端口重定向用于从B到A的流量。

由于UDP不会建立套接字,因此路由器应采用多种策略来映射UDP NATed数据包。这就是路由器使用端口6000的原因。

通常路由器不使用A中的源端口作为B中的源端口,这可能是您可以配置的,但不建议使用该信息(端口)进行NAT,路由器可能(默认情况下)使用ip-端口对在网络之间映射数据包。

已知的路由器型号可以帮助您找到更具体的答案。

您可以在此处查看有关使用iptables的linux NAT可能性的更多信息:

如果linux可以做到这一点,路由器也应该做到这一点,但这取决于型号。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33301755

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档