上海电信 IPV6 光猫拨号下设置软路由 Slaac 透传
概况:软路由使用 iStore ,22.03.6 版,一进一出两个网口。光猫拨号,下接软路由 wan 口,软路由 lan 口下,接交换机,交换机下接 AP (华为 AX3pro ,AP 模式,主要手机上网)和 Nas (一个很老的 Nas ,仅支持 ipv4 ),2 台电脑( win10 )。
软路由 istore 主要功能实现:
1 、ipv4 使用普通的 NAT 方式,无公网 IP ,XX 上网使用。
2 、ipv6 ,slaac 方式,实现 BT 软件使用 ipv6 公网端口(比如 qBittorrent 的 19433 端口,一般 DHT 数值在 300 多)
3 、下载服务,安装软件商店自带的迅雷 docker 版、qBittorrent 。迅雷快一点
4 、内部 lan 网可以共享硬盘,包括下载的电影。
5 、开 webdav ,通过 ipv6 ,外网可以访问,能简单的上传下载。有 DDNS 更方便。
6 、内部 PC 如果使用到端口,只需要在软路由防火墙上添加规则即可。软路由有防火墙,内部 PC 都是要经过软路由防火墙的,安全。
上海电信 ipv6 ,ipv6 前缀是 64 位的! slaac 和 nat 方式都可以实现,nat 方式之前已经发过贴,下面都是关于 slaac 方式的配置,需要非常仔细,有点小地方稍不注意,设置错了,就是各种并发症,会让你抓狂。以下涉及的 wan6 、wan 、lan 等都是安装后自动配好的,不需要额外修改名称,大致步骤如下:
第一步,先搞定 wan6 口(获得 ipv6 的 wan 口地址,正确的网关)
1 、网络--接口--wan6--编辑
1.1 、常规设置
协议:DHCPv6 客户端
设备:eth0
开机自动运行:选择
请求 IPv6 地址:try
请求指定长度的 IPv6 前缀:自动
1.2 、高级设置
强制链路:不选
请求 DHCP 时发送的客户端 ID:空
使用默认网关:选择
自动获取 DNS 服务器:选择
DNS 权重:空
使用网关跃点:空
覆盖 IPv4 路由表:未指定
覆盖 IPv6 路由表:未指定
IPv6 源路由:选择
委托 IPv6 前缀:选择
IPv6 分配长度:已禁用
IPv6 前缀过滤器:-- 请选择 --
IPv6 后缀:::1
IPv6 优先级:空
1.3 、防火墙设置
创建和分配防火墙区域:wan 和 wan6
1.4 、DHCP 服务器--常规设置
忽略此接口:不选
1.5 、DHCP 服务器--IPv6 设置
指定的主接口:选择
RA 服务:中继模式
DHCPv6 服务:中继模式
NDP 代理:中继模式
学习路由:选择
1.6 、保存,软路由重启(系统--重启)
1.7 、首页--终端
输入 root 和密码
1.8 、查询软路由的默认 IPv6 网关
输入:
ip -6 route | grep defult
看得到几个行,如果仅有一行,可直接跳到下一步(跳过 1.9 ,去第二步),如果是两行,比如下面这样:
default from 240e:xxx:xxx:xxx::/64 via fe80::34xx:xxx:xxx dev eth0 proto static metric 512 pref medium
default from 240e:xxx:xxx:xxx::/64 via fe80::1 dev eth0 proto static metric 640 pref medium
此时,默认网关有 2 个,需要手动指定使用哪个网关,否则会无法上网,完全不通外网。
1.9 、手动指定使用哪个网关
编辑文件,命令:vim /etc/hotplug.d/iface/90-ipv6
输入如下内容:
#!/bin/sh
[ "$ACTION" = ifup ] || exit 0
GWaddr=`ifconfig | ip -6 route show default | head -n1 | awk '{print $5}'`
route -A inet6 add default gw $GWaddr dev eth0
Insert 切换编辑功能,ESC 退出编辑,:wq 保存退出
赋予执行权限,输入命令
chmod +x /etc/hotplug.d/iface/90-ipv6
1.10 、软路由重启(系统--重启)
首页右上角的 IP 地址( wan ),出现 ipv4 ipv6 地址。
第二步,搞定 lan 口
2 、网络--接口--lan--编辑
2.1 、常规设置
协议:静态地址
设备:br-lan
开机自动运行:选择
IPv4 地址:192.168.100.1
IPv4 子网掩码:255.255.255.0
IPv4 网关:灰色无法更改
IPv4 广播地址:灰色无法更改
IPv6 地址:空
IPv6 网关:空
IPv6 路由前缀:空
2.2 、高级设置
强制链路:选择
使用默认网关:选择
使用自定义的 DNS 服务器:空
DNS 搜索域名:空
DNS 权重:空
使用网关跃点:空
覆盖 IPv4 路由表:未指定
覆盖 IPv6 路由表:未指定
委托 IPv6 前缀:选择
IPv6 分配长度:已禁用
IPv6 前缀过滤器:-- 请选择 --
IPv6 后缀:::1
IPv6 优先级:空
2.3 、防火墙设置
创建和分配防火墙区域:lan
2.4 、DHCP 服务器--常规设置
忽略此接口:不选
启动:100
客户数:150
租期:12h
2.5 、DHCP 服务器--高级设置
动态 DHCP:选择
强制:不选
IPv4 子网掩码:灰色无法更改
DHCP 选项:空
2.6 、DHCP 服务器--IPv6 设置
指定的主接口:不选
RA 服务:中继模式
DHCPv6 服务:中继模式
NDP 代理:中继模式
学习路由:选择
NDP 代理从属设备:不选
2.7 、保存,软路由重启(系统--重启)
第三步,网络--接口--全局网络选项
IPv6 ULA 前缀:空
数据包引导:选择
第四步,网络--DHCP/DNS--高级设置
过滤 IPv6 AAAA 记录:不选
过滤 IPv4 A 记录:不选
第五步,强制 RA 消息转发
5 、首页--终端
5.1 、首页--终端
输入 root 和密码
5.2 、编辑文件,命令:vim /etc/sysctl.conf
输入如下内容:
net.ipv6.conf.default.accept_ra=2
net.ipv6.conf.all.accept_ra=2
net.ipv6.conf.default.forwarding=2
net.ipv6.conf.all.forwarding=2
net.ipv6.conf.default.accept_ra=2
net.ipv6.conf.all.accept_ra=2
net.ipv6.conf.default.dad_transmits=2
net.ipv6.conf.all.dad_transmits=2
Insert 切换编辑功能,ESC 退出编辑,:wq 保存退出
5.3 、软路由重启(系统--重启)
IPV6 联网测试
https://testipv6.cn/
ping -6 www.baidu.com
第六步,其他问题
如果获得了 ipv6 地址,缺无法 ping 通,大概率是以下三个地方
网络--接口--全局网络选项,IPv6 ULA 前缀:空
网络--接口--wan6 ,IPv6 分配长度:已禁用
网络--接口--lan ,IPv6 分配长度:已禁用
原因是纯 relay 模式下客户端不会获取到“IPv6 ULA 前缀”下的地址/路由/邻居信息,当客户端尝试回复从路由器发出的 ULA-prefix 下地址的 neighbor solicitation 时,匹配不到这个 ULA 地址的路由只好放弃。
概况:软路由使用 iStore ,22.03.6 版,一进一出两个网口。光猫拨号,下接软路由 wan 口,软路由 lan 口下,接交换机,交换机下接 AP (华为 AX3pro ,AP 模式,主要手机上网)和 Nas (一个很老的 Nas ,仅支持 ipv4 ),2 台电脑( win10 )。
软路由 istore 主要功能实现:
1 、ipv4 使用普通的 NAT 方式,无公网 IP ,XX 上网使用。
2 、ipv6 ,slaac 方式,实现 BT 软件使用 ipv6 公网端口(比如 qBittorrent 的 19433 端口,一般 DHT 数值在 300 多)
3 、下载服务,安装软件商店自带的迅雷 docker 版、qBittorrent 。迅雷快一点
4 、内部 lan 网可以共享硬盘,包括下载的电影。
5 、开 webdav ,通过 ipv6 ,外网可以访问,能简单的上传下载。有 DDNS 更方便。
6 、内部 PC 如果使用到端口,只需要在软路由防火墙上添加规则即可。软路由有防火墙,内部 PC 都是要经过软路由防火墙的,安全。
上海电信 ipv6 ,ipv6 前缀是 64 位的! slaac 和 nat 方式都可以实现,nat 方式之前已经发过贴,下面都是关于 slaac 方式的配置,需要非常仔细,有点小地方稍不注意,设置错了,就是各种并发症,会让你抓狂。以下涉及的 wan6 、wan 、lan 等都是安装后自动配好的,不需要额外修改名称,大致步骤如下:
第一步,先搞定 wan6 口(获得 ipv6 的 wan 口地址,正确的网关)
1 、网络--接口--wan6--编辑
1.1 、常规设置
协议:DHCPv6 客户端
设备:eth0
开机自动运行:选择
请求 IPv6 地址:try
请求指定长度的 IPv6 前缀:自动
1.2 、高级设置
强制链路:不选
请求 DHCP 时发送的客户端 ID:空
使用默认网关:选择
自动获取 DNS 服务器:选择
DNS 权重:空
使用网关跃点:空
覆盖 IPv4 路由表:未指定
覆盖 IPv6 路由表:未指定
IPv6 源路由:选择
委托 IPv6 前缀:选择
IPv6 分配长度:已禁用
IPv6 前缀过滤器:-- 请选择 --
IPv6 后缀:::1
IPv6 优先级:空
1.3 、防火墙设置
创建和分配防火墙区域:wan 和 wan6
1.4 、DHCP 服务器--常规设置
忽略此接口:不选
1.5 、DHCP 服务器--IPv6 设置
指定的主接口:选择
RA 服务:中继模式
DHCPv6 服务:中继模式
NDP 代理:中继模式
学习路由:选择
1.6 、保存,软路由重启(系统--重启)
1.7 、首页--终端
输入 root 和密码
1.8 、查询软路由的默认 IPv6 网关
输入:
ip -6 route | grep defult
看得到几个行,如果仅有一行,可直接跳到下一步(跳过 1.9 ,去第二步),如果是两行,比如下面这样:
default from 240e:xxx:xxx:xxx::/64 via fe80::34xx:xxx:xxx dev eth0 proto static metric 512 pref medium
default from 240e:xxx:xxx:xxx::/64 via fe80::1 dev eth0 proto static metric 640 pref medium
此时,默认网关有 2 个,需要手动指定使用哪个网关,否则会无法上网,完全不通外网。
1.9 、手动指定使用哪个网关
编辑文件,命令:vim /etc/hotplug.d/iface/90-ipv6
输入如下内容:
#!/bin/sh
[ "$ACTION" = ifup ] || exit 0
GWaddr=`ifconfig | ip -6 route show default | head -n1 | awk '{print $5}'`
route -A inet6 add default gw $GWaddr dev eth0
Insert 切换编辑功能,ESC 退出编辑,:wq 保存退出
赋予执行权限,输入命令
chmod +x /etc/hotplug.d/iface/90-ipv6
1.10 、软路由重启(系统--重启)
首页右上角的 IP 地址( wan ),出现 ipv4 ipv6 地址。
第二步,搞定 lan 口
2 、网络--接口--lan--编辑
2.1 、常规设置
协议:静态地址
设备:br-lan
开机自动运行:选择
IPv4 地址:192.168.100.1
IPv4 子网掩码:255.255.255.0
IPv4 网关:灰色无法更改
IPv4 广播地址:灰色无法更改
IPv6 地址:空
IPv6 网关:空
IPv6 路由前缀:空
2.2 、高级设置
强制链路:选择
使用默认网关:选择
使用自定义的 DNS 服务器:空
DNS 搜索域名:空
DNS 权重:空
使用网关跃点:空
覆盖 IPv4 路由表:未指定
覆盖 IPv6 路由表:未指定
委托 IPv6 前缀:选择
IPv6 分配长度:已禁用
IPv6 前缀过滤器:-- 请选择 --
IPv6 后缀:::1
IPv6 优先级:空
2.3 、防火墙设置
创建和分配防火墙区域:lan
2.4 、DHCP 服务器--常规设置
忽略此接口:不选
启动:100
客户数:150
租期:12h
2.5 、DHCP 服务器--高级设置
动态 DHCP:选择
强制:不选
IPv4 子网掩码:灰色无法更改
DHCP 选项:空
2.6 、DHCP 服务器--IPv6 设置
指定的主接口:不选
RA 服务:中继模式
DHCPv6 服务:中继模式
NDP 代理:中继模式
学习路由:选择
NDP 代理从属设备:不选
2.7 、保存,软路由重启(系统--重启)
第三步,网络--接口--全局网络选项
IPv6 ULA 前缀:空
数据包引导:选择
第四步,网络--DHCP/DNS--高级设置
过滤 IPv6 AAAA 记录:不选
过滤 IPv4 A 记录:不选
第五步,强制 RA 消息转发
5 、首页--终端
5.1 、首页--终端
输入 root 和密码
5.2 、编辑文件,命令:vim /etc/sysctl.conf
输入如下内容:
net.ipv6.conf.default.accept_ra=2
net.ipv6.conf.all.accept_ra=2
net.ipv6.conf.default.forwarding=2
net.ipv6.conf.all.forwarding=2
net.ipv6.conf.default.accept_ra=2
net.ipv6.conf.all.accept_ra=2
net.ipv6.conf.default.dad_transmits=2
net.ipv6.conf.all.dad_transmits=2
Insert 切换编辑功能,ESC 退出编辑,:wq 保存退出
5.3 、软路由重启(系统--重启)
IPV6 联网测试
https://testipv6.cn/
ping -6 www.baidu.com
第六步,其他问题
如果获得了 ipv6 地址,缺无法 ping 通,大概率是以下三个地方
网络--接口--全局网络选项,IPv6 ULA 前缀:空
网络--接口--wan6 ,IPv6 分配长度:已禁用
网络--接口--lan ,IPv6 分配长度:已禁用
原因是纯 relay 模式下客户端不会获取到“IPv6 ULA 前缀”下的地址/路由/邻居信息,当客户端尝试回复从路由器发出的 ULA-prefix 下地址的 neighbor solicitation 时,匹配不到这个 ULA 地址的路由只好放弃。
