如何从本地网络访问外部网络上的网络服务器?

如何从本地网络访问外部网络上的网络服务器?

网络图

我正在尝试从我的本地网络(C)访问另一个网络(A)上的网络服务器。

他们在我们这边有一个路由器,我无法直接访问它进行任何更改,如果我将电缆(B)从该路由器连接到 PC,我就能使用正确的 IP 配置访问 Web 服务器。但显然我无法将(B)连接到主交换机,因为它需要 IP 配置。

我希望整个本地网络能够访问这个网络服务器(B)。

我指的是通过浏览器访问。内部代理运行 Fedora 和连接到互联网的 Squid,并且唯一访问外部 Web 服务器的方式是通过 (B)。

我希望通过这张超级图表能够清楚地看到一切。

编辑:请让我知道是否也可以通过编辑路由器配置来实现,它是一个瞻博网络。

谢谢你们,很棒的社区!

答案1

好的,您可以将单个设备连接到该“路由器”,它会获得一个 IP 地址在远程网络上。看起来很糟糕,也许它只是充当桥梁。随便吧。

然后,您可以使用自己的路由器;购买一个(或购买一台带有两个网卡和您最喜欢的操作系统的 PC),并提供远程网络上的 IP 地址,然后使用它让您自己的网络与远程网络通信。

您需要 NAT,因为您不能在这里使用普通路由;远程网络中的计算机永远不会知道如何访问您的网络。因此,您需要设置一个 NAT 路由器(使用 Windows RRAS 或 Linux IPTABLES 都很容易),该路由器将您自己的 LAN 作为其内部/专用网络,并将与其他路由器的交叉链接作为其外部/公共网络;将其配置为 NAT,并向您的主路由器添加一条路由,说明您可以通过这个新路由器访问远程网络。

一个小例子(现在不能画图):

--------- ----------- --------------- --------- -------------
|10.1.35|--|路由器(?)|--|10.1.35.235 | 10.1.36.42 |--|10.1.36|--|主路由器|->
--------- ----------- --------------- --------- -------------

中间的是您的 NAT 设备;它有两个接口,NAT 方向朝向 10.1.35 网络;因此它在其“公共”接口上获取 10.1.35.235;其“私有”接口连接到您的 LAN。然后向您的主路由器(您的网络的默认网关)添加一条路由,指出“要到达 10.1.35,请经过 10.1.36.42”。完成。

答案2

您在图中指出路由器有一个 10.1.35.235 IP 地址;但路由器应该有两个地址,每个连接到的网络一个。

路由器是否有两个网络接口(我认为有)?

它在网络A上的IP地址是多少?就是你说的10.1.35.235吗?

另一个接口(即您应该连接到网络 C 的接口)上的 IP 地址是多少?它有 IP 地址吗?它适合网络 C 吗?

如果 10.1.35.235 是网络 A 上路由器的地址,并且它在网络 C 上有一个(或者您可以给它一个)合适的地址,例如 10.1.36.42,那么您需要向网络 C 上的机器添加一条路由,以便告诉它们可以通过该路由器与网络 A 通信;在 Windows 上,命令如下

ROUTE ADD 10.1.35.0 MASK 255.255.255.0 10.1.36.42

您还可以使用 ROUTE -p ADD [等] 使设置永久生效(即,机器重新启动后依然有效)。

另一个(更好的)选择是将路由添加到网络 C 的主网关,这样它将能够通过另一个路由器路由指向网络 A 的数据包;这比将路由添加到网络 A 上的每台机器要简单得多。

答案3

如果您无法更改路由器上的任何配置,并且电缆 B 上的端口仅允许/有一个 IP 地址,我想您必须在路由器和交换机之间的设备上配置 SNAT,以便能够使用此单个 IP 由此 SNAT 设备后面的许多客户端使用。

答案4

如果您的内部代理服务器有多个网络接口,您可以将其双归属到您的内部网络和提供商交接处。然后,您可以按如下方式在代理上配置路由表:

10.1.35.0/24 -> 10.1.35.235

10.1.36.0/24 -> <your internal default gateway>

或者,如果您的代理只有一个接口,您可以安装另一个面向提供商路由器的路由器。在不知道其余网络拓扑的情况下指定配置有点困难。例如,您提到的代理是否还需要为您的工作站提供互联网连接?还是仅用于代理内部连接?

相关内容