1
EPr2hh6LADQWqRVH 2021-07-23 13:32:45 +08:00
一是所有路由不宣告公网地址,让翻墙路由宣告私网 v6 地址,这样优先级比 v4 低。
二是翻墙路由做 nat6 把 v6 流量也翻一翻,让那些纯 v6 流量不撞墙。 |
2
szdosar 2021-07-23 13:35:39 +08:00 via iPhone 2
|
3
jinhan13789991 2021-07-23 13:36:42 +08:00
那就买个能指定网关的路由器拨号,或者把胖路由做主路由。
|
4
szdosar 2021-07-23 13:40:44 +08:00
另外, [重定向 53 端口到 AdGuardHome ( ipv6 需要开启 ipv6 nat redirect 否则如果客户端使用 ipv6 过滤无效,不以 dnsmasq 为上游 ssr-plus 失效)] 。参阅: https://github.com/rufengsuixing/luci-app-adguardhome
|
5
cwbsw 2021-07-23 13:41:22 +08:00
主路由上 REJECT 所有 443 、80 端口的 IPv6 出站流量,简单粗暴,还不影响 BT 。
|
6
goodryb OP |
8
tankren 2021-07-23 14:36:22 +08:00
openwrt 的 ipv6 开了?
|
9
txydhr 2021-07-23 15:22:37 +08:00 via iPhone
我是 gfwlist 列表里的网址 drop 掉所有 aaaa 记录
|
10
Maskeney 2021-07-23 16:08:31 +08:00 via Android
无解,除非你在 DNS 层面丢掉所有 AAAA 记录,但是这样跟直接关闭 IPV6 没什么两样
|
11
NSAgold 2021-07-23 16:24:32 +08:00 via Android 1
smartdns 做双栈优选
|
12
raysonx 2021-07-23 18:02:16 +08:00
是有解决办法,但是因为你是用的“旁路由”这种歪门邪道,我还是建议你关闭 xbox 所连接的网络的 IPv6 比较容易。
|
14
raysonx 2021-07-23 18:07:04 +08:00
在你现有的网络拓扑下,你没法让你的“旁路由”去宣告公网 IPv6 前缀和默认路由,因为你的公网 IPv6 前缀是由光猫下发的。
比较完美的做法的是改变你的网络拓扑,用 OpenWrt 拨号,用策略路由去控制不同的设备走不同的路由表。其中 IPv6 这一块可以用 prefix translation 把你的本地公网 IPv6 前缀转换成境外的公网 IPv6 前缀。 |
15
raysonx 2021-07-23 18:13:12 +08:00 1
> 测试了一个可能的解决办法,在光猫的 ipv6 配置中把默认的 ipv6 dns 改为静态,并设置一个不可达的地址,从而阻断 ipv6 地址的解析,使得网络访问回落到 ipv4 上。
这种方法肯定是不行的,因为 IPv4 的 DNS 也可以解析 AAAA 记录。 |
16
Liqianyu 2021-07-23 19:17:50 +08:00 1
# Disable Xbox IPv6
ip6tables -I INPUT -p udp -m mac --mac-source XBOX_MAC --dport 547 -j DROP ip6tables -I INPUT -p icmpv6 -m mac --mac-source XBOX_MAC -j DROP |
17
whitegerry 2021-07-23 20:56:58 +08:00 via iPhone
这需求 mosdns 很简单吧,ipv6 黑洞完事。
|
19
ihipop 2021-07-23 21:35:28 +08:00 via Android
@Jays 如果想要保留 ipv6,楼上每一个人都不是正解,我就在旁路模式下即保留了 ipv6 又不影响功能
说 2 个要点: radvd 支持单播模式 radvd 支持推送默认路由的优先级 即可使用旁路由把指定设备的默认路由夺过来了,夺过来以后要怎么弄还是不是 iptables 说了算 |
20
guanyin8cnq12 2021-07-23 22:35:11 +08:00 2
梯子加 ipv6 支持。
你这种情况,我也遇到过,之前 v6+v4, yt 可以打开,nf 死活不行。主要是梯子不支持 ipv6 。 |
21
guanyin8cnq12 2021-07-23 22:38:42 +08:00
@Liqianyu 你这是 disable 指定客户端的 ipv6 自动获取 ip 。貌似行的通。
|
22
wgq2633 2021-07-23 22:57:34 +08:00 via Android
我的 openwrt 路由上 dns 解析走的 dnsmasq,
参考 https://discourse.pi-hole.net/t/solved-disable-aaaa-response-for-a-given-domain/13143 这篇帖子([SOLVED] disable AAAA response for a given domain ) 通过 "address=/example.com/::", dnsmasq 发现已经指定解析 aaaa/ipv6 到 ::,就不会再找上游解析 aaaa 记录了 |
23
guanyin8cnq12 2021-07-23 22:57:48 +08:00
梯子加 v6,ss 设置 v6 prefer 。
op 里 用 ipset 做 v6 分流。 类似于这样 ipset create gfw hash:ip hashsize 4096 ipset create gfw_v6 hash:ip hashsize 4096 family inet6 |
24
guanyin8cnq12 2021-07-23 22:59:56 +08:00
@wgq2633 v6 的 :: 类似于 v4 的 0.0.0.0
|
25
whitegerry 2021-07-23 23:02:51 +08:00
用 mosdns,可以对来自 xbox 的所有 ipv6 查询响应黑洞,它只能拿到 ip4 的解析记录。
|
26
wgq2633 2021-07-23 23:13:24 +08:00 via Android
|
27
guanyin8cnq12 2021-07-23 23:14:23 +08:00
@wgq2633 实测有效。
|
28
Kiriya 2021-07-23 23:37:16 +08:00
XBOX 上单独接个路由并且把这个路由器的 IPV6 关掉🐶
|
29
guanyin8cnq12 2021-07-24 06:56:17 +08:00
@Liqianyu 使能路由通告模式下,kill 掉 dhcp6s,依旧能获取 v6 地址。此方法不适于路由通告模式。
|
30
lslqtz 2021-07-24 10:36:30 +08:00
没必要那么麻烦,将 v6 dns 指定到路由器即可
|
31
lslqtz 2021-07-24 10:44:38 +08:00
我是 OpenWRT 的路由,光猫桥接,默认情况下 OpenWRT 应该是下发了 v4 和 v6 的路由器 DNS 给设备,而不支持 v6 的梯子对列表内的域名不会解析 v6,因此梯子也是没有影响的。
而光猫是直接下发 IPv4 和 IPv6 的运营商 DNS,手动指定旁路由的 v4 DNS,但是因为下发了 IPv6 的运营商 DNS,优先级比 v4 高,自然导致只支持 v4 的旁路由无法正常使用 所以只需加旁路由的 v6 DNS 进去即可 |
32
lslqtz 2021-07-24 10:47:47 +08:00
总之光猫路由模式下如果你不在光猫接其它设备 (不包括 IPTV),那么可以直接在光猫指定旁路由 DNS,没有必要每个设备都手动设置
光猫桥接模式下路由拨号就会接管所有流量,都是配置的问题。 目前我自己的网络上除了梯子本身不支持 v6 外,其它网站、服务和 BT 客户端都没有影响,理论上 PT 也不会受影响 |
33
lslqtz 2021-07-24 10:51:07 +08:00
@raysonx 不可达虽然是是流量走了 v6 造成的,但这是因为楼主的 v6 DNS 是运营商 DNS,所以会提供 AAAA 记录;而不支持 v6 的梯子基本会屏蔽 AAAA 记录,所以不会导致流量走 v6 。
楼主手动指定了 IPv4 的 DNS,但是没有改变 v6 DNS 的设置,所以会导致大部分时候通过 v6 DNS 解析,从而流量没有经过旁路由 |
34
lslqtz 2021-07-24 10:55:45 +08:00
@wgq2633 我觉得这个做法并不够好,所以我后面在 DNSMasq 的上游加了 SmartDNS,可以真正的返回 SOA 而不是一个无效的 IPv6 来阻止使用。
个人觉得梯子不支持 v6 的情况会解析 v6,应该解决的为什么 DNS 会在这些特定地址给出 v6 的结果,更好的方案是一步到位支持 v6,而不是将全部 IPv6 地址给返回 AAAA,虽然目前来说影响很小 |
37
ihipop 2021-07-24 11:39:33 +08:00 via Android 1
@lslqtz https://linux.die.net/man/5/radvd.conf
单播模式即 clients 配置段落,指定期望被单播的本地局域网 on link 地址,也就是 fe80 那个地址 defaultpreference 即指定默认路由优先级,如果你不是旁路,只需要 clients 开启单播即可给指定设备分配 v6,其他非指定设备关闭 v6,也能解决楼主问题无需动任何防火墙配置或者 dns 过滤。 |
38
DopaminePlz 2021-07-24 21:25:38 +08:00
@Liqianyu 我的是小米盒子,直接是把盒子 MAC 地址的所有 IPv6 访问都 DROP 了。547 是 DHCPv6 端口吧?可以 DROP SLAAC 吗?
|
39
Chingim 2021-11-13 00:57:00 +08:00
楼主你好, 问个网络问题.
我是在路由器设置了 v2ray 的透明代理(做了分流, 对 tcp/udp 都做了支持), 家里的终端可以访问并播放 youtube. 但是 xbox 不能访问游戏商店, youtube 能播放视频, 但是登录不了(访问 youtube.com/activate 输入码后, 网页显示登录成功, 但是 xbox 上的 youtube 应用显示登录出现了问题, 请重试). 不知道这些坑你有没有遇到呢: 1. 翻墙后无法访问游戏商店, 是不是有些地址需要直连, 但是 v2ray 规则匹配到了代理上 2. youtube 能播放但是登录失败. 是不是有些地址需要代理, 但是 v2ray 的规则走了直连 我在路由器上看了日志, 没看到特别有用的信息. |
40
goodryb OP @Chingim #39 我没有遇到你这样的问题,我使用的是 openwrt 做旁路哟,插件是 SSR+,代理方式是 gfw 列表, 关闭 ipv6 , xbox 网关和 dns 都设置为旁路由的 IP
|
41
sherlock1122 2021-11-29 13:18:29 +08:00
@goodryb 最后怎么弄得?我也想保留 ipv6 , 同时让 ipv6 穿墙。当前开了 ipv6 ,youtube 视频就播放不了了。
|
42
Shintaku 2021-11-30 11:27:16 +08:00
https://github.com/coolsnowwolf/lede/issues/3275 禁止解析 v6 DNS 就好了
|
43
bluaze 2022-07-27 22:17:54 +08:00
保留旁路由模式和 IPv6 的话,可以考虑 mosdns ,禁掉境外的 AAAA 解析,这样境外流量自然会过旁路由,PT 网关设主路由,避免境外 BT 流量走代理
|
44
fengyaochen 2023-03-11 08:08:50 +08:00 via iPhone
@Maskeney 屏蔽所有 v6 aaaa 记录是最佳解决办法,无论是国内还是国外流量都是 v4 快,没有公网 ip 的前提下,在外面只能通过 v6 连回家里的设备,唯一缺点就是你在家里不能通过域名连接别人家的 v6 设备
|