(警告、警告、警告、告诫(无论您的语言是什么):英语不是我的母语。我是通过翻译写的这篇文章)。
我需要通过 QEMU 运行大约 7 台虚拟机。每台虚拟机都运行 Debian 并自动启动 Steam。这样做的目的是在每台机器上运行来自不同帐户的特定游戏。
问题开始于每个虚拟机尝试登录 steam 帐户时。到处都出现登录错误。
事实证明,如果你在 Google 中输入“我的 IP 是什么”,它会在主机和虚拟机上显示相同的地址。
我决定做一个测试——同时运行两个虚拟机。在第一个虚拟机中一切正常,在第二个虚拟机中我启用了 wireguard 作为 vpn。最后,这个测试进行得很顺利:两台机器都能够登录到他们的账户。
现在有一个问题:是否可以为每台机器提供一个随机的公共地址?
答案1
无法将随机的公共 IP 分配给不同的系统。IP 地址由互联网号码分配机构。它们已被指定为本地实体的区块,然后本地实体进一步对其进行分配。
例如,本地 ISP 被分配了地址范围 203.0.113.0/24。他们为客户提供 IP 地址,并将其分配给客户面向互联网的路由器,例如您的路由器。
路由器使用的 LAN IP 地址范围很可能是 192.168.1.0/24,即本地网络中的每个系统都在此范围内具有唯一的 IP。当它们访问互联网时,路由器会执行 NAT。因此,本地网络中的每个系统在互联网上都显示相同的 IP 地址 - 即路由器的 IP 地址。
获得更多公共 IP 地址的唯一方法是从 ISP 那里承包。
登录的问题不在于你的 IP。在我写这篇文章的时候,我通过我的 Debian 笔记本电脑和上面运行的 2 个 Debian VM、MacBook 和一台 Windows 笔记本电脑登录了我的 Steam 帐户。没有 Wireguard 或其他技巧,只有 Steam 客户端。由于一切都通过同一个路由器运行,所有 5 个系统都使用一个公共 IP 地址连接到互联网。