理解OpenWrt的Server与Relay模式

对于openwrt,现在知道对于内网的ipv6地址分配,有两种方式。

一种是server模式:

这时候公网路由不知道内网的设备,是最像ipv4时代的设置。

首先,你取消designated master上游出口,在wan6。

但这也导致ra和dhcpv6服务无法设置为relay模式。你想啊,怎么relay呢?公网路由都不知道有这个ipv6地址,到它那了便直接扔掉包了,所以数据包都到不了openwrt这,故谈何relay?

于是,这两个服务只能设置为server模式,也就是让openwrt代理所有ipv6数据并作为一个出口的形式来转发。

然后,ndp也只能设置成disabled,因为relay需要建立在有designated master的基础上。

最后,开启IPv6 prefix delegation,把运营商提供的PD前缀,下发到内网设备中去。至此完成设置。

可选地,你还可以为内网设备开启IPv6的NAT地址转换。但这有点太不把IPv6当回事了,不是很推荐。

server模式,会使得你内网设备分配到的地址是基于PD前缀的,于是它们所在的子网和你主路由或者运营商上游所在的子网可能不是同一个,是不在同一层级的。

还不得不说,有些运营商貌似会屏蔽下方会讲到的relay模式。也就是它只提供给你PD前缀,并且前缀只有64的mask,并且只能让你openwrt路由器当做ra server。这时候你只能这么设置。

还有一种是relay模式:

这时候公网路由知道内网的设备,是最ipv6的设置。

首先,你需要关闭IPv6 prefix delegation。

然后把ra和dhcpv6最好设置为relay模式。也就是全权听外面公网路由的安排。ndp同理也是relay模式,允许外网设备打听内网设备。

(设置server模式估计也可以,但我没试过,我估计有70%的概率会失败或者不以设想的方式工作。可能网络地址更新后上会有点问题,需要频繁的重启openwrt)。

relay模式,会使得你内网的设备直接暴露给上一级网络,此时内网设备和你的主路由是在同一个层级、同一个子网内的,PD前缀是没有使用的。

relay模式,好处是更扁平化,坏处是不好管理、缺乏风控,主路由在两者之间频繁copy流量,也容易发生流量风暴。


关于DREAMSCAPER

I am what I seem.

用Facebook、WordPress或邮箱即可评论