我有两个路由器,一个是由我的 ISP 提供的,并有一个集成调制解调器(从现在开始:“调制解调器”),另一个是我买的 netgear r7000(从现在开始:“路由器”)。
我想将路由器级联到调制解调器,因此我将路由器的 Internet 端口连接到调制解调器,并进行如下配置:
- 互联网静态 IP:192.168.1.1
- 网关:192.168.1.254(这是调制解调器 IP)。
- 局域网IP:192.168.2.1
然后我继续按如下方式配置调制解调器:
- 我配置了一个指向 192.168.1.1(路由器互联网 IP)的 DMZ
- 禁用所有 DHCP
一切都按预期工作(例如:我可以浏览互联网),但是,当我使用在线 ipv6 端口扫描器,有几件事让我感到惊讶:
- 如果我不禁用调制解调器上的防火墙,扫描仪就会报告一切正常
STLTH(在分配的时间段内未收到来自您机器的响应。这是理想的响应,因为没有人可以确定您的机器在此 IPv6 地址/端口组合上的存在。)
即好的[编辑:这实际上是不好因为如上所述配置的 DMZ 应该绕过调制解调器防火墙,对吗?
- 如果我禁用调制解调器上的防火墙,我本以为会出现同样的结果,因为我认为所有流量都会被我的路由器过滤(路由器已打开 NAT 过滤),但事实并非如此!扫描仪报告
RFSD(尝试打开此端口时收到拒绝指示(TCP RST/ACK 或 ICMPv6 类型 1 代码 4)。有人可以确定您的机器正在对此 IPv6 地址/端口组合做出响应,但无法建立 TCP 连接。)
除了端口 22,这个端口在我的机器上实际上是打开的,扫描仪显示打开。这是不好
- 即使扫描仪报告我的 22 已打开,我也无法让任何人从网络外部连接到它。我的一个朋友试图用
ssh -6 myipv6
并收到主机无法访问的错误,但是当我让他尝试
nmap -6 -p22 -Pn --traceroute myipv6
他实际上设法访问了我的计算机并且 nmap 说端口 22 已被“过滤”。
总结一下我的问题是:
- 路由器上的防火墙为何不工作?
- 为什么我无法从外部连接到我的网络?
正如@Gordon Davisson 在评论中指出的那样 罪魁祸首可能是 IPv6,因此我更新了问题来解释我是如何配置它的:
- 我进入了我的 ISP 页面并启用了 IPv6
- 我的 ISP 重新启动了我的调制解调器并为其启用了 IPv6(调制解调器仪表板中还有一个新的配置部分,我保持不变)
- 我登录到我的路由器,在 IPv6 部分,我选择了自动配置 IPv6 的选项。路由器选择了 PassThrough 方法(它本来可以选择很多其他不同的配置选项,我实际上不记得了,现在也无法检查)。
这很可疑。也许 PassThrough 意味着绕过防火墙,正如 Gordon 在评论中暗示的那样?
答案1
如果不查看调制解调器和路由器配置的具体细节,就很难判断,但听起来调制解调器可能正在路由普通(公共)IPv6 子网,而“路由器”实际上充当 IPv6 的桥梁 - 也就是说,它根本不路由 IPv6,只是直接传递调制解调器提供的子网。(这意味着我对 teredo 的猜测是错误的。)
无论确切的配置是什么,关于 IPv6 需要了解的是它不使用 NAT。NAT 长期以来一直是 IPv4 中的“正常”选项,以至于人们倾向于将其视为互联网路由工作的一部分:您的 ISP 为您的路由器(/调制解调器)提供了一个公共地址,而您的路由器提供了一个私有子网(196.168.something、10.something 或可能是 172.16-31.something),该子网隐藏在该公共地址后面。由于您的计算机没有公共地址,因此无法从公共互联网寻址它们,除非您设置了从路由器的公共地址进行的某种转发(通过路由器中的 DMZ、端口映射等设置)。这意味着私有网络上的所有内容都位于相当于基本防火墙的后面,自动地,除非你专门在防火墙上打洞(使用 DMZ、端口映射等设置)。
IPv6 根本不是这样工作的。如果你使用 IPv6 访问互联网,这几乎意味着你至少有一个公共地址(2xxx:something 或可能是 3xxx:something)和私有地址(fe80:something)。与 IPv4 不同,默认情况下,您的公共地址可从 IPv6 互联网上的任何地方访问。
换句话说,IPv6没有自动防火墙这与 IPv4 不同。IPv4 会给你设置防火墙,除非你采取措施突破防火墙;而 IPv6 则不是除非您采取措施进行设置,否则您将受到防火墙的保护。
由于您的“路由器”正在运行 IPv6 直通,因此它可能无法充当任何类型的 IPv6 防火墙。调制解调器可能具有某种 IPv6 防火墙功能。或者可能没有,或者可能有一些非常薄弱的选项,或者...不幸的是,IPv6 还很新,以至于(至少在我看来)我们还没有真正就其安全性采取一致行动。目前,我认为我最好的建议是在您的计算机上运行某种软件防火墙。
(对于没有软件防火墙功能的设备,比如物联网设备,嗯,你可能有问题。