我没有访问网关路由器,所以我不能查找转发规则。 在Windowsnetworking环境中,我怎样才能知道WAN IP转发到哪个主机?
你没有。 否则,机器都会有WAN-ip,而防火墙/ NAT就没用了。
我不确定为什么这个问题是downvoted。 这是一个合理的问题。
简短的答案是你不能。 寻找本地地址是一个难题。 通常这是通过在两端运行一个应用程序并只是让它查询WMI来解决的。 显然,如果没有特殊的软件,你不会这样做。
另一种方法是使用常识。 做一个端口扫描。 哪些端口正在被监听。 它运行Apache 80吗? 如果是这样,你有多less个Apache服务器。 apache是否显示任何额外的信息,如主机名? RDP是否被转发? 这将显示主机名。 或FTP,SSH等
您只能从WAN IPfindLAN IP或它的范围。 这是私人和公共地址的整个意义。
您只能通过网关路由器find转发规则。
当我看到这是可能的唯一的情况是发送一个TCP数据包与SYN标志设置和logging路由选项设置为一个私人IP上转发的服务(DNAT)。
你可以尝试使用tcptraceroute 。 它的工作方式是发送多个TCP SYN数据包,增加每一步的生命周期。
第一个数据包将超时在您的本地路由器(1跳)。 如果路由器configuration正确,它将发送一个ICMP错误消息,通知您有关超时。
第二个数据包将超时在您的ISP的网关。 再次,您将收到一个ICMP消息。
让我们跳到当你发送一个足够大的数据包到达目的地NAT的数据包。 NAT不会转发数据包并发送ICMP错误数据包。
你再次增加数据包的使用寿命。 现在,NAT将转发数据包,但主机不会接受它。 它将一个ICMP数据包发送回TCP数据包的原始发送者。 这个ICMP数据包将包含主机IP。
如果NAT不进行ICMP检查,则ICMP数据包将以目的地的IP地址到达您的主机。 要小心,因为大多数NAT路由器不遵守这些规则,阻止或修改ICMP错误数据包。