从子网内通过公共IP连接到默认主机是否会导致任何问题?

我正在build立一个拥有一个公共IP的小型办公室networking(假设它是69.16.230.117)。 我在路由器上configuration了NAT,并将传入的stream量转发给服务器(假设服务器的私有IP为192.168.0.2)。

可以在同一个子网上configuration客户机,通过路由器的公共IP(69.16.230.117)访问服务器吗? 在实践中,它从来没有引起我的问​​题,但我听说,这是一个坏主意,应该使用私有IP(192.168.0.2)。

从子网内通过公共IP连接到默认主机是否会导致任何问题?

请不要写“永远不要打破内联网 !” 😉

如果您的路由器没有启用“NAT环回”,则可能会导致问题。 在这种情况下,所有的stream量将被丢弃,或redirect错误(例如路由器的Web界面)。

但是通常这个function不能直接在网页界面中使用。 在某些Zyxel路由器中,您可以通过调用“ip nat loopback on”命令来启用此function。 其他一些路由器只能通过configurationiptables(从root访问)来启用。

不,没有什么会导致连接问题。

虽然这个scheme有安全问题。 非常非常确定NAT'd服务器上的防火墙是正确的。 把这台机器放在自己的子网上,远离其他内部的NAT机器,以便build立一个非军事区(DMZ)。

过去,内部客户端无法访问NAT的公有IP地址时,我遇到了这个configuration问题。 这将是唯一的问题,我可以看到,除了使用外部IP引入额外的跳转path相比,只是使用内部IP

它会工作,你的客户将路由到你的路由器,然后回到你的路由器到你的NATnetworking提供的服务。 取决于路由器上的tcp / ip堆栈的智能程度如何,它实际上可能会跳出一跳,然后回来,但这是值得怀疑的。 你可以想象这是一个不太理想的。 它也有一个缺点,就是你想在你的networking上提供给客户的任何服务必须公开访问。 另外,如果您添加第二台服务器,则开始出现端口转发错误以提供服务。 如果你的客户使用内部nat地址作为他们的服务,那么你只需要为那些必须是外部可用的服务提供端口转发。

这有点像走出你的前门进入你的后院。 它会工作,你会到达那里,但走出后门通常更容易。

我曾经遇到过内部客户端在服务器上被区别对待的情况。

例如。 允许pipe理员访问内部与外部的连接。

您也可以将您的内部DNSconfiguration为指向内部IP,因此在您内部连接的Intranet上,外部您将获得外部IP。

这对我来说似乎有些奇怪, 有效地,你迫使你所有的内部stream量打到你的NAT设备上,得到NAT,然后通过LAN接口送回内部服务器。 根据您期望的并发内部用户数量,这可能最终导致性能问题,因为您最终将消耗NAT设备上的CPU和内存。 这可能会对从办公室出站Internet访问以及远程用户的入站访问产生负面影响。

随着你的办公室的增长,值得关注你的路由器/防火墙的性能。 如果您遇到连接问题(数据包丢失,拒绝连接),则将您的内部客户端切换回使用LAN IP可能是一个有用的步骤。