注意

本篇文章内容是在“光猫使用桥接模式,由路由器拨号”这个大前提下进行的。光猫使用路由模式的用户请勿参考。

ipv6相关设置

ipv6地址获取

之前我在PVE/物理机安装OpenWrt以及各种设置里讲过最基本的ipv6地址获取方法,选择“自动”时,openwrt会创建一个隐藏接口wan-6来进行ipv6地址的获取。而我需要更高的可自定义性,于是搜到另一个和“自动”选项类似的可以自动获取ipv6的设置方法。

  1. 首先把自动改为手动
  2. 新建一个接口,命名随便,我使用wan6新的接口协议选择DHCPv6 client物理设置选择自定义接口,并填写@wan
  3. 提交,然后保存并应用

关于“使用内置的IPv6管理”选项

网上有人说勾选有人说不勾选,这个其实要看你使用的是谁编译的固件而自行选择,我这里的情况时勾选与不勾选都没有区别,都可以正常使用ipv6地址。

关于公网访问

  • 如果你使用的是openwrt,一定要把网络->防火墙->基本设置->转发这项设置设为接受。稍微解释一下,转发的意思是,收到了不是对本机(软路由自身)的请求,而是对内网设备的请求,由路由将此请求转发给内网设备。其作用实质上与IPv4的端口转发类似,端口转发也是把外网对路由的某个端口的请求,转发到对内网设备某个端口的请求。如果此处不为接受,那么路由看到不是对自己的请求就直接无视或者扔了,这样即使内网设备有公网IPv6,外网也无法访问内网设备。具体可参考本链接内容
  • 如果你使用的是华硕路由,我自己是刷了梅林固件的,需要在防火墙->一般设置->IPv6 防火墙->传入防火墙规则中把你需要允许外网访问的设备v6地址添加进去,当然,如果不怕死的可以直接关了防火墙。

IPv6地址区别

一般设置好ipv6以后是这样的,你会得到3个v6地址。前2个是可以公网访问的,区别在于:

  • IPv6 地址是由SLAAC(Stateless Address Autoconfiguration)机制分配的v6地址,即无状态地址自动配置,具体内容可自行搜索。此地址可以被公网访问。
  • 临时 IPv6 地址是用网设备生成的,访问外网使用的真正的地址,使用网络上的ipv6查询工具可以查到的地址。顾名思义,此地址会频繁更改,目的是保护隐私。此地址同样可以被公网访问。
  • fe80开头的是一种本地连接地址,即”link-local” 地址。内网可用,外网无法访问。通常可以被理解为v4地址中的169.254.0.0/16

还会出现这种情况。注意到出现了2个前三段相同的地址,一长一短。长的即为上面所说的由SLAAC分配的;短的是由DHCPv6分配的,与IPv4的DHCP类似,全称Stateful Address Autoconfiguration,即有状态地址自动配置。这2个对应openwrt->网络->接口->LAN->DHCP服务器->IPv6设置->DHCPv6模式->无状态的 + 有状态的。如果你选择其中一个,那么用网设备获取到的v6地址也只会有对应的那一个。这2个v6地址与临时 IPv6 地址都可以被公网访问。

其余的,前三段与临时 IPv6 地址的前三段不一样的v6地址,是无法由公网访问到的。图中最后一个IPv6 地址的前三段与临时 IPv6 地址的前三段相同,那么此地址则可以由公网访问到。这些前三段不一样的v6地址是否能内网访问我没有进行测试,别问,问就是懒。

不过至于为什么一台设备会获取如此之多的v6地址,以及前三段不同的地址为什么不能被公网访问,这些问题我暂时还没有研究,如果之后有时间可能会自己搜搜补充上。

IPv6 DDNS

待更新

2024/08/01更新

无公网IPV4,使用纯IPV6实现公网访问

“强制链路”设置相关

强制链路通俗的讲,就是无论物理接口是否连接,路由里的逻辑接口设置都保持应用状态。举个例子,如果你wan口开了强制链路,那么在你插上网线的时候wan口会获取到一个ip地址,如果此时你拔掉了网线,wan口依然会保留这个ip地址的设置,而不会显示断开连接,即使已经没有网了,直到你下一次插上网线,wan口获取新的ip地址。

对于这个设置项,大多建议都是:wan口关闭,lan口开启。这个是合理的,因为一般wan口需要实时更新链路状态,而lan口链接的设备我们一般是不会总动它的。我的理解是,在内网NAT的设备开启DHCP获取ip,可以依靠这个选项保持设备每次开机ip地址不会频繁变更。不过我并没有非常深入的了解DHCP的工作原理,也有可能对于同一MAC地址,DHCP租约分配的ip会保持不变。但对我来说其实无所谓了,因为我内网设备全是自己手动设置ipv4地址的。