![端口转发至多台计算机](https://linux22.com/image/1524416/%E7%AB%AF%E5%8F%A3%E8%BD%AC%E5%8F%91%E8%87%B3%E5%A4%9A%E5%8F%B0%E8%AE%A1%E7%AE%97%E6%9C%BA.png)
我和兄弟们正在玩电脑游戏《GTA Online》。我们都连接到同一个本地网络。
但是我们有时会遇到连接问题。现在我阅读Rockstar 官方网站它将有助于解锁/转发我的路由器中的某些端口。
但是,对于单台计算机来说,这对我来说是有意义的,但是如果我定义了以下两个端口转发规则,路由器如何处理传入的数据包?
你可以看到我将例如 80 端口转发到计算机黑色的和黑色2现在电脑“黑”和电脑“黑2”会不会收到路由器80端口所有进来的包,其他电脑什么都收不到?
计算机黑色的还会收到针对黑色2,还是只有他的包裹?
路由器如何知道正确的目标?
答案1
在端口 80 等处接收到的数据包将被转发到仅一台内部 PC,即 Black 或 Black2。
那么现在电脑“黑色”和电脑“黑色2”会不会接收到路由器80端口上所有传入的数据包,而其他电脑什么都收不到呢?
路由器外部接口 80 端口上的传入数据包将前往黑色的或者黑色2很难说是哪一个,这取决于路由器内部处理规则的顺序。黑色的在您的网络管理中处于首位并不一定意味着其规则比有关黑色2但有一件事是正确的:其他计算机不会收到任何东西。
黑计算机是否也接收到发往黑2的数据包,还是只接收到发往黑2的数据包?路由器如何知道正确的目标?
这是关键点:路由器无法判断数据包是否是要发送给黑色的或者黑色2。它无法辨别它们,可能会将它们全部发送给黑色的或者黑色2也有可能他们中的一些人去黑色的有些人去黑色2,但这些都不是“正确的”。由于您要转发多个端口,因此可能会发生一个端口传入的数据包将黑色的从另一个端口传入的数据包将转到黑色2。由于您给路由器的指令不明确,因此无法预测这一点。
你能做什么?
你必须控制哪些数据包发往何处。我看到两种方法。
- 一个是只启用一组规则,然后玩例如黑色的. 当你想玩黑色2,回到路由器的管理界面,进行切换:禁用黑色的并启用黑色2。我知道这不是您想要的,您正在寻找一种在两台电脑上同时玩游戏的方法。
- 另一种方法是将客户端配置为使用两组不同的端口,并在路由器上创建两组不同的转发规则。我的意思是打开游戏设置,看看是否有这样的选项。然而,这可能无法做到,这取决于游戏制造商是否预见到了这种可能性。这种设置在服务器领域非常常见,但在消费市场中,通常期望只有一个工作站,并且它直接连接到互联网。
答案2
您的要求是不可行的,因为您家里的每个人都使用同一个路由器和外部 IP 地址上网,因此外部观察者无法区分你们中的一个人和其他人。但也许有其他解决方案。
我不知道 GTA Online 是如何运作的,但在我看来,除非您托管服务器,否则所有连接都来自您的计算机,充当客户端,因此您连接的服务器永远不需要启动连接。
如果是这种情况,你根本不需要端口转发。你只需要在路由器的防火墙 以及您的电脑。您需要取消端口转发,否则只有一台电脑可以玩。
如果这不起作用,还有另一种解决方案,但成功率很低,即配置路由器和家庭网络上的所有设备仅使用 IPv6 协议,并在所有地方禁用 IPv4。这样,所有设备在互联网上都会有一个不同的地址。但是,IPv6 可能并未得到全面支持,并且路由器上的实现可能仍将仅使用一个外部 IP 地址。所涉及的技术问题可能太难解决。
答案3
根据我的经验,对于 GTA5,您需要使用支持 UPNP 的路由器。这是通用即插即用。GTA5 的每个实例都会请求您的路由器打开随机高端口,以允许您和您的兄弟同时玩游戏。不要尝试手动操作,否则只有你们中的一个可以玩。
答案4
是的,可以。您只需 30 分钟即可完成设置。
该技术于 2002 年使用其中一个代理模块推出。
任何人都可以使用最大 /8 的任何地址来拥有任何端口
因此,1 个公共 IP 可以将端口转发到数百万台具有数百万个重复所需端口的计算机,而无需使用明显的资源。
BSD/Linux 程序员比软件工程师领先数年。