我的老板将我们的 DSL 线路转换为静态 IP,以便我们可以连接各种设备(安全摄像机 DVR)并能够远程访问它们。
我们的 ISP(AT&T / SBC)派了一位技术人员安装了类似 Motorola Netopia 3300 的 DSL 网关(包装盒上没有型号,但 Google 让我相信它是 Netopia 3300 系列。)我们有 4 个静态 IP,我们将它们称为 11.22.33.44-48。
例如,如果将笔记本电脑插入网关上的四个端口之一,则只要将其中一个静态 IP 手动输入到笔记本电脑操作系统的网络配置中(以及默认网关地址和子网掩码 255.255.255.248),它就能正常工作。至少对于客户端应用程序而言是“正常”的。似乎出站连接正在运行,但入站连接在到达目的地之前就中断了:
C:\Users\Andrew>tracert 11.22.33.44
Tracing route to 11.22.33.44 over a maximum of 30 hops
1 <1 ms <1 ms <1 ms 192.168.1.1
2 14 ms 14 ms 13 ms adsl-blah-blah-blah //A physically different DSL line from the one in question
3 13 ms 12 ms 13 ms dist2-vlan62.pltnca.sbcglobal.net [99.36.71.2]
4 14 ms 13 ms 13 ms ag2-10g0-12-3-0.pltnca.sbcglobal.net [151.164.103.2]
5 33 ms 14 ms 14 ms 151.164.102.35
6 14 ms 14 ms 15 ms rback34-g1-1.snfcca.sbcglobal.net [206.13.3.68]
7 * * * Request timed out.
8 * * * Request timed out.
9 * * * Request timed out.
10 * * * Request timed out.
11 * * * Request timed out.
(etc)
如果这是插入路由器的标准 DSL 线路,我会假设没有转发正确的端口或类似的东西。这与我使用过的任何连接都大不相同,我不知所措。网关的配置页面没有端口转发设置。有一个“针孔”设置,我(认为)我为所需端口创建了针孔,但无济于事。
我发现的另一件事是,连接到网关的设备能互相通信。例如,我将 DVR 插入 11.22.33.44,将笔记本电脑插入 11.22.33.45,然后能够连接到 DVR 并查看视频流,但我怀疑是否有任何数据包离开大楼。
因此,长话短说,我如何使入站连接正常工作,以便服务器可以接收某些(或所有)端口上的连接?
答案1
这仍然是插入路由器的标准 DSL 线路,唯一的区别是路由器路由的是 IP 块而不是单个 IP。当您从一个公共 IP 连接到另一个公共 IP 时,它们仍然在同一个子网中(基于 255.255.255.248),因此它们不会通过网关,而只会在路由器内路由。也就是说,如果您可以通过这种方式正常连接,而无法从外部连接,那么几乎可以肯定是防火墙问题。如果您有公共 IP,则不会涉及 NAT,因此不会是端口转发。
在您的跟踪路由上,请求超时并不意味着其他任何事情,只是这些路由器要么没有配置为响应 ICMP,要么只是因为当时有更好的事情要做而丢弃了数据包。你能得到跟踪路由吗到你的 IP?这对入站连接很重要(尽管我认为你会发现它正在击中你的路由器)。
尝试在短时间内完全禁用防火墙,看看是否会产生任何效果。