v6 就是麻烦,连描述问题都很困难,历时几年,基本搞定了 Adguard Home sing-box 固定 v6 IP

36 天前
 yyysuo
各位大佬点评一下,有没有更优的实践?

需求其实很简单,就是在 Adguard Home 和 sing-box 看到是哪个设备在使用服务,根据 IP 给客户端重命名。V4 时代很简单,但是有了 V6 ,这几乎成了不可能的事情,原因如下:

基本上路由只发 V6 前缀(非固定)
后缀是客户端根据 V6 地址策略自己生成的
Windows 、ios 、android 、linux 各自的 V6 策略也各不相同
每个设备获取的 V6 地址有多个,包括公网地址、本地链路地址、ula 地址等
还有隐私地址扩展这种逆天的东西存在
设备上的 app 自主决定使用多个 V6 地址中的一个使用

不管如何,小白经过几年断续的描述,好像找到了一个勉强搞定的实践,方案如下:

配置:
主路由 openwrt 有状态+无状态+ula fd00::/48+后缀 ::1+关闭临时地址+下发 fd00::1 为 v6 dns
net.ipv6.conf.all.use_tempaddr = 0
net.ipv6.conf.default.use_tempaddr = 0

Windows 上关闭隐私地址扩展
netsh interface ipv6 set global randomizeidentifiers=disabled
netsh interface ipv6 set privacy state=disable

IOS 上关闭随机 mac 地址、私有无线局域网地址、限制 IP 地址跟踪

linux 上不用管,默认是 eui64 生成的固定 v6 地址

安卓 tv 没法管,有些无法 adb 。

现状:所有内网 v6 地址基本固定
Windows 使用 fd00::124 这种 ula 地址请求 dns ,使用 eui64 地址路由到 sing-box
IOS 使用 v4 地址请求 dns ,暂时未测试使用哪种 v6 地址路由到 sing-box ,但是生成的 fd00 随机地址在路由重启后不会变化
firetv 使用 v4 地址请求 dns ,sony tv 使用 fd00 随机地址访问 dns ,重启路由 V6 地址不会变
linux 配置了固定 v4 dns ,使用 v4 dns ,使用 eui64 地址路由到 sing-box
3164 次点击
所在节点    宽带症候群
48 条回复
yyysuo
35 天前
@ranaanna 我主力用这俩呀 对我来说是主流
yyysuo
35 天前
@ranaanna v6 基础还玩不明白呢 域控制应该不会更简单吧
fengyaochen
35 天前
gfwlist 域名+一些特殊禁止大陆 IP 的网站禁用 AAAA 解析即可,直接用 MOSDNS 分流
yyysuo
35 天前
@fengyaochen 跑题啦,这跟分流没啥关系,是纯 ipv6 问题。
unbridle
35 天前
ad home 可以通过 mac 地址来绑定设备
ranaanna
35 天前
@yyysuo 搞个虚拟机装个 windows server 加个 active directory domain controller 以及 dns 的 roles 就可以了,或者 linux 装个 samba server 和 bind dns server ,配置文件修改几行也可以。好处是可以集中管理设备和用户的身份、验证信息和安全策略,比重命名 ip 好玩多了
yyysuo
35 天前
@unbridle 那得用它的 dhcp 。
JayZXu
35 天前
v6 在折腾了一圈之后关闭了
99%的民用路由器和 90%的企业网关到现在都没有提供一个完善的 NAT6 工具,只能写死 ipv6 地址,导致宽带刷新 ipv6 地址之后,规则失效。
很多人说 ipv6 不需要防火墙吧啦吧啦的,我反正是 ddns ipv6 之后,nas 被各种攻击,试密码,不得已只能 tailscale 自用了。

更不要说旁路由在有 ipv6 的情况下直接失效,因为 ipv6 访问的优先级要高于 ipv4 。。。
cnbatch
35 天前
@dalaoshu25 重点不在于 IPv6 是否公网(我又不是不知道 IPv6 默认公网),重点在于楼主想要在 openwrt 分配固定 IP 。RouterOS 不是 openwrt ,区别可不小呢。
cnbatch
35 天前
@JayZXu 只听说过 IPv6 不需要 NAT ,真有人敢讲 IPv6 不需要防火墙?那也太邪恶了
by
35 天前
等 ipv4 完全退出互联网,我再考虑使用 ipv6
dalaoshu25
35 天前
@cnbatch 楼主不懂 V6 ,还活在 v4 的大清朝。
yyysuo
35 天前
@JayZXu op opn 都可以啊,ros 不知道,好像也是可以的,总之很折腾就是了 。旁路还要 v6 ,别折腾 nat 呀,用 fakeip 网关
yyysuo
35 天前
@dalaoshu25 懂那么一点点
dalaoshu25
35 天前
@JayZXu 很奇怪,我也有好几台机器通过 IPv6 和 DDNS 从外部 ssh 进来,我开了 fail2ban 去监视这些机器,发现有这种试图 ssh 登录攻击的 IP 就操作 RouterOS 去封堵攻击者 IP 。这么长时间用下来,几乎全都是攻击 RB4011 的那个公网 IPv4 地址的,无论是 RB4011 自己的 v6 地址还是下面几个有自己 ddns 域名的机器,都没有收到过攻击扫描记录。我一度怀疑自己是不是配错了,还特意在 vultr 开了个 vps 模拟攻击一下,确认自己的设置没问题。

所以,你说你的 NAS 被攻击,到底是什么情况?
fisherning
35 天前
@yyysuo v6 和 v4 这点上确实不一样,就算你给支持 dhcpv6 有状态的机器分配固定 ip ,实际上也没办法完全做到,而且安全性还有问题。

1. dhcpv6 分配的 ip 往往比较短,容易被穷举。设备 eui64 分配的动态 ip 难度就大多了。要扫描 v6 地址的成本太高了。
2. 隐私保护的原因,现在安卓不支持有状态 v6 ,其他设备都开始用随机 MAC 地址,windows 也每次生成临时 v6 地址。所以实际情况是,你很难根据 MAC 地址来让 DHCPv6 去分配固定 v6 地址。

按照现在业界的处理方式。v6 肯定是大大加强了隐私保护的要求。固定 ip 去管理内网设备,这种事情还是留给 v4 吧。v6 就不是干这个的。
fisherning
35 天前
@cnbatch lz 要的分配固定 ip 的功能,其实本身就和 v6 以及业界趋势相背离。
JayZXu
35 天前
@dalaoshu25 #32
IPv4 的攻击确实挺普遍的,我网关防火墙里面每天 SNMP 攻击的都有十几个,Fraggle 也一大堆。IPv6 的也会偶尔出现 SNMP 攻击的。
NAS 被攻击是之前的宽带只有公网 ipv6 ,把群晖的网页端用 v6 ddns 访问。然后每天都有人试 admin 密码,一天几十条锁定 admin 账号的邮件,ip 都封不过来 ,给我整麻了,为了不被邮件骚扰,只能关了 ddns 。
虽然不知道别人是怎么知道我域名的,但是一旦被盯上,v6 也是被攻击的命运
yyysuo
35 天前
@fisherning V6 在大部分地方都是默认优先的,开了 V6 ,就都走 V6 ,V4 的管理就等于没有了,因为目标不是管理 V4 ,是管理网络。
yyysuo
35 天前
@JayZXu 你们是不是都用 ros ?因为 ros 有这个攻击统计,op 就没有,也没听说谁的 op 被黑了,是 op 的防火墙做得比较好?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1094629

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX