首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用IP连接到多个网关后面的另一台机器?

如何使用IP连接到多个网关后面的另一台机器?
EN

Stack Overflow用户
提问于 2011-06-25 04:40:09
回答 2查看 2.2K关注 0票数 0

我不知道该在哪里问这个问题,所以它就在这里。这更像是一个网络技术问题,但任何建议都会有所帮助。

假设,我想连接到位于多个网关后面的一台机器。假设我想从我的办公室计算机连接到我的家庭计算机。我的家用电脑在ISP的网关后面,然后在家里的无线路由器后面。假设我知道他们所有人的IP地址。(ISP网关的全局IP、ISP n/w内无线路由器的本地IP和家庭内计算机的本地IP )。如何启动与家庭计算机的TCP连接?标准的berkeley套接字程序只需要一个IP,所以我只能连接到拥有全局IP的机器。

有解决方案吗?我对berkeley套接字的看法正确吗?

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-25 13:57:20

在运营商的合作下,是完全可能的。ISP提供私有地址这一事实应该会促使您迁移到另一个地址。

您想要的概念称为DNAT或Port Forwarding

假设您决定访问PC上的端口1234。PC的地址为Local2。无线路由器(在包含ISP的网络中)的地址为Local1

ISP路由器必须执行Local1:X -> Local2:1234

  • The Public:1234 -> Local1:X

转换

  • 必须执行转换

X意味着可以使用任何端口。

票数 0
EN

Stack Overflow用户

发布于 2011-07-22 00:35:07

您只需知道目的IP地址即可从应用程序进行连接,网关地址用于转发(路由)由OS网络堆栈处理的数据包。但是,如果目的地位于NAT之后,您将只知道目的地的NAT设备的公共IP地址。即使在这种情况下,您所拥有的也只是一个IP地址,并且您并不真正知道是否存在NAT。

如果您的目的地是固定的,您可以在NAT设备上设置端口转发(如果您可以控制它)。否则,您就会意识到NAT是纯粹的邪恶。

在您的情况下,您似乎希望连接到您的家庭计算机。如果您的无线设备具有公用IP地址,则可以在该地址上设置端口转发,以便将端口上的所有传入通信转发到家庭计算机上的端口。

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

https://stackoverflow.com/questions/6473535

复制
相关文章

相似问题

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