juewuy / ShellCrash

Run sing-box/mihomo as client in shell
8.5k stars 1.43k forks source link

redir模式下使用ipv6节点导致崩溃 #12

Closed Vohrt closed 3 years ago

Vohrt commented 3 years ago

在目标节点是ipv6的情况下使用redir 模式和混合模式时,如果设置代理模式是全局的话,会出现似乎是死循环的问题,并最终导致程序崩溃 log如下 (35...是ipv6节点对应的v4地址,124...是本机的公网ip) 2020-10-31 12:12:35[info] [TCP] 192.168.31.149:2179 --> infinity-api.extfans.com using GLOBAL 2020-10-31 12:12:35[info] [TCP] 192.168.31.149:2190 --> ffxivhunt.cn using GLOBAL 2020-10-31 12:12:35[info] [TCP] 192.168.31.149:2191 --> ffxivhunt.cn using GLOBAL 2020-10-31 12:12:35[info] [TCP] 192.168.31.149:2193 --> safebrowsing.google.com using GLOBAL 2020-10-31 12:12:36[info] [TCP] 192.168.31.149:2194 --> clientapi.ipip.net using GLOBAL 2020-10-31 12:12:36[info] [TCP] 192.168.31.149:2195 --> ffxivhunt.cn using GLOBAL 2020-10-31 12:12:36[info] [TCP] 192.168.31.149:2196 --> infinity-api.extfans.com using GLOBAL 2020-10-31 12:12:39[info] [TCP] 192.168.31.149:2225 --> ffxivhunt.cn using GLOBAL 2020-10-31 12:12:39[info] [TCP] 192.168.31.149:2226 --> ffxivhunt.cn using GLOBAL 2020-10-31 12:12:39[info] [TCP] 192.168.31.149:2227 --> ffxivhunt.cn using GLOBAL 2020-10-31 12:12:40[info] [TCP] 192.168.31.48:37560 --> risk.dun.mi.com using GLOBAL 2020-10-31 12:12:41[info] [TCP] 192.168.31.48:49158 --> ts.qq.com using GLOBAL 2020-10-31 12:12:41[info] [TCP] 192.168.31.48:49160 --> ts.qq.com using GLOBAL 2020-10-31 12:12:41[info] [TCP] 192.168.31.149:2250 --> www.google.com using GLOBAL 2020-10-31 12:12:41[info] [TCP] 192.168.31.149:2249 --> www.google.com using GLOBAL 2020-10-31 12:12:42[info] [TCP] 192.168.31.48:37566 --> risk.dun.mi.com using GLOBAL 2020-10-31 12:12:42[info] [TCP] 192.168.31.48:49164 --> ts.qq.com using GLOBAL 2020-10-31 12:12:42[info] [TCP] 192.168.31.48:49166 --> ts.qq.com using GLOBAL 2020-10-31 12:12:44[info] [TCP] 192.168.31.149:2297 --> ws.infinitynewtab.com using GLOBAL 2020-10-31 12:12:45[info] [TCP] 192.168.31.149:2298 --> infinity-api.infinitynewtab.com using GLOBAL 2020-10-31 12:12:45[info] [TCP] 192.168.31.149:2299 --> clients4.google.com using GLOBAL 2020-10-31 12:12:47[info] [TCP] 192.168.31.149:2320 --> infinity-api.extfans.com using GLOBAL 2020-10-31 12:12:49[info] [TCP] 192.168.31.149:2339 --> infinity-api.extfans.com using GLOBAL 2020-10-31 12:12:51[info] [TCP] 192.168.31.149:2360 --> api.live.bilibili.com using GLOBAL 2020-10-31 12:12:51[info] [TCP] 192.168.31.149:2359 --> api.vc.bilibili.com using GLOBAL 2020-10-31 12:12:52[info] [TCP] 192.168.31.149:2363 --> a.nel.cloudflare.com using GLOBAL 2020-10-31 12:12:53[info] [TCP] 192.168.31.149:2395 --> github.com using GLOBAL 2020-10-31 12:12:53[info] [TCP] 192.168.31.149:2396 --> github.com using GLOBAL 2020-10-31 12:12:54[info] [TCP] 192.168.31.149:2408 --> github.githubassets.com using GLOBAL 2020-10-31 12:12:54[info] [TCP] 192.168.31.149:2409 --> github.com using GLOBAL 2020-10-31 12:12:54[info] [TCP] 192.168.31.149:2410 --> avatars3.githubusercontent.com using GLOBAL 2020-10-31 12:12:54[info] [TCP] 192.168.31.149:2411 --> github.githubassets.com using GLOBAL 2020-10-31 12:12:55[info] [TCP] 192.168.31.149:2418 --> github.githubassets.com using GLOBAL 2020-10-31 12:12:55[info] [TCP] 192.168.31.149:2419 --> avatars2.githubusercontent.com using GLOBAL 2020-10-31 12:12:55[info] [TCP] 192.168.31.149:2420 --> content-autofill.googleapis.com using GLOBAL 2020-10-31 12:12:55[info] [TCP] 192.168.31.149:2422 --> collector.githubapp.com using GLOBAL 2020-10-31 12:12:55[info] [TCP] 192.168.31.149:2423 --> oauthaccountmanager.googleapis.com using GLOBAL 2020-10-31 12:12:55[info] [TCP] 192.168.31.149:2424 --> alive.github.com using GLOBAL 2020-10-31 12:12:55[info] [TCP] 192.168.31.149:2425 --> api.github.com using GLOBAL 2020-10-31 12:12:55[info] [TCP] 192.168.31.149:2429 --> github.githubassets.com using GLOBAL 2020-10-31 12:12:56[info] [TCP] 192.168.31.149:2430 --> github.githubassets.com using GLOBAL 2020-10-31 12:12:57[info] [TCP] 192.168.31.149:2431 --> github.githubassets.com using GLOBAL 2020-10-31 12:12:58[info] [TCP] 192.168.31.149:2445 --> github.githubassets.com using GLOBAL 2020-10-31 12:12:58[info] [TCP] 192.168.31.149:2446 --> github.githubassets.com using GLOBAL 2020-10-31 12:13:00[info] [TCP] 192.168.31.149:2448 --> github.githubassets.com using GLOBAL 2020-10-31 12:13:01[info] [TCP] 192.168.31.149:2460 --> github.githubassets.com using GLOBAL 2020-10-31 12:13:01[info] [TCP] 192.168.31.149:2462 --> github.githubassets.com using GLOBAL 2020-10-31 12:13:02[info] [TCP] 192.168.31.149:2484 --> trans.hiido.com using GLOBAL 2020-10-31 12:13:02[info] [TCP] 192.168.31.149:2485 --> config.hiido.com using GLOBAL 2020-10-31 12:13:02[info] [TCP] 192.168.31.149:2486 --> ylog.hiido.com using GLOBAL 2020-10-31 12:13:02[info] [TCP] 192.168.31.149:2487 --> github.githubassets.com using GLOBAL 2020-10-31 12:13:03[info] [TCP] 192.168.31.149:2488 --> ylog.hiido.com using GLOBAL 2020-10-31 12:13:03[info] [TCP] 192.168.31.48:37576 --> aeventlog.beacon.qq.com using GLOBAL 2020-10-31 12:13:04[info] [TCP] 192.168.31.149:2498 --> github.githubassets.com using GLOBAL 2020-10-31 12:13:04[info] [TCP] 192.168.31.149:2499 --> github.githubassets.com using GLOBAL 2020-10-31 12:13:04[info] [TCP] 192.168.31.149:2502 --> download.game.yy.com using GLOBAL 2020-10-31 12:13:04[info] [TCP] 192.168.31.149:2501 --> yeconfig.game.yy.com using GLOBAL 2020-10-31 12:13:05[info] [TCP] 192.168.31.149:2503 --> ylog.hiido.com using GLOBAL 2020-10-31 12:13:05[info] [TCP] 192.168.31.149:2504 --> bn1302.storage.live.com using GLOBAL 2020-10-31 12:13:06[info] [TCP] 192.168.31.149:2511 --> ylog.hiido.com using GLOBAL 2020-10-31 12:13:09[info] [TCP] 192.168.31.149:2534 --> 119.247.147.232 using GLOBAL 2020-10-31 12:13:09[info] [TCP] 192.168.31.149:2532 --> 35.220.216.114 using GLOBAL 2020-10-31 12:13:09[info] [TCP] 192.168.31.149:2533 --> 61.239.39.212 using GLOBAL 2020-10-31 12:13:09[info] [TCP] 192.168.31.149:2531 --> 103.136.251.115 using GLOBAL 2020-10-31 12:13:12[info] [TCP] 192.168.31.48:37574 --> risk.dun.mi.com using GLOBAL 2020-10-31 12:13:12[info] [TCP] 192.168.31.48:1024 --> risk.dun.mi.com using GLOBAL 2020-10-31 12:13:15[info] [TCP] 192.168.31.149:2618 --> agents-sg-cloud.acronis.com using GLOBAL 2020-10-31 12:13:16[info] [TCP] 192.168.31.149:2628 --> ylog.hiido.com using GLOBAL 2020-10-31 12:13:16[info] [TCP] 192.168.31.149:2629 --> stat.game.yy.com using GLOBAL 2020-10-31 12:13:16[info] [TCP] 192.168.31.149:2630 --> stat.game.yy.com using GLOBAL 2020-10-31 12:13:17[info] [TCP] 192.168.31.149:2637 --> stat.game.yy.com using GLOBAL 2020-10-31 12:13:17[info] [TCP] 192.168.31.149:2638 --> dl.acronis.com using GLOBAL 2020-10-31 12:13:17[info] [TCP] 192.168.31.149:2639 --> stat.game.yy.com using GLOBAL 2020-10-31 12:13:20[info] [TCP] 192.168.31.149:2644 --> avatars2.githubusercontent.com using GLOBAL 2020-10-31 12:13:24[info] [TCP] 167.248.133.52:36414 --> 124... using GLOBAL 2020-10-31 12:13:24[info] [TCP] 35...:37576 --> 124... using GLOBAL 2020-10-31 12:13:24[info] [TCP] 35...:37578 --> 124... using GLOBAL 2020-10-31 12:13:24[info] [TCP] 35...:37582 --> 124... using GLOBAL 2020-10-31 12:13:24[info] [TCP] 35...:37584 --> 124... using GLOBAL 2020-10-31 12:13:25[info] [TCP] 35...:37586 --> 124... using GLOBAL 2020-10-31 12:13:25[info] [TCP] 167.248.133.52:33726 --> 124... using GLOBAL 2020-10-31 12:13:25[info] [TCP] 35...:37598 --> 124... using GLOBAL 2020-10-31 12:13:25[info] [TCP] 192.168.31.149:2677 --> stat.game.yy.com using GLOBAL 2020-10-31 12:13:25[info] [TCP] 35...:37602 --> 124... using GLOBAL 2020-10-31 12:13:26[info] [TCP] 35...:37604 --> 124... using GLOBAL 2020-10-31 12:13:26[info] [TCP] 35...:37606 --> 124... using GLOBAL 2020-10-31 12:13:26[info] [TCP] 35...:37608 --> 124... using GLOBAL 2020-10-31 12:13:26[info] [TCP] 35...:37610 --> 124... using GLOBAL 2020-10-31 12:13:26[info] [TCP] 35...:37612 --> 124... using GLOBAL 2020-10-31 12:13:27[info] [TCP] 192.168.31.149:2679 --> alive.github.com using GLOBAL 2020-10-31 12:13:27[info] [TCP] 35...:37616 --> 124... using GLOBAL 2020-10-31 12:13:27[info] [TCP] 35...:37620 --> 124... using GLOBAL 2020-10-31 12:13:27[info] [TCP] 35...:37622 --> 124... using GLOBAL 2020-10-31 12:13:27[info] [TCP] 35...:37624 --> 124... using GLOBAL 2020-10-31 12:13:27[info] [TCP] 35...:37626 --> 124... using GLOBAL 2020-10-31 12:13:28[info] [TCP] 35...:37628 --> 124... using GLOBAL 2020-10-31 12:13:28[info] [TCP] 192.168.31.149:2681 --> stat.game.yy.com using GLOBAL 2020-10-31 12:13:28[info] [TCP] 35...:37630 --> 124... using GLOBAL 2020-10-31 12:13:28[info] [TCP] 35...:37634 --> 124... using GLOBAL 2020-10-31 12:13:28[info] [TCP] 167.248.133.52:45650 --> 124... using GLOBAL 2020-10-31 12:13:28[info] [TCP] 35...:37636 --> 124... using GLOBAL 2020-10-31 12:13:28[info] [TCP] 35...:37638 --> 124... using GLOBAL 2020-10-31 12:13:28[info] [TCP] 35...:37640 --> 124... using GLOBAL 2020-10-31 12:13:29[info] [TCP] 35...:37642 --> 124... using GLOBAL 2020-10-31 12:13:29[info] [TCP] 35...:37644 --> 124... using GLOBAL 2020-10-31 12:13:29[info] [TCP] 35...:37646 --> 124... using GLOBAL 2020-10-31 12:13:29[info] [TCP] 35...:37648 --> 124... using GLOBAL 2020-10-31 12:13:29[info] [TCP] 35...:37650 --> 124... using GLOBAL 2020-10-31 12:13:29[info] [TCP] 35...:37652 --> 124... using GLOBAL 2020-10-31 12:13:29[info] [TCP] 35...:37654 --> 124... using GLOBAL 2020-10-31 12:13:29[info] [TCP] 35...:37656 --> 124... using GLOBAL 2020-10-31 12:13:29[info] [TCP] 35...:37658 --> 124... using GLOBAL 2020-10-31 12:13:29[info] [TCP] 35...:37660 --> 124... using GLOBAL 2020-10-31 12:13:30[info] [TCP] 35...:37662 --> 124... using GLOBAL 2020-10-31 12:13:30[info] [TCP] 35...:37664 --> 124... using GLOBAL 2020-10-31 12:13:30[info] [TCP] 35...:37666 --> 124... using GLOBAL 2020-10-31 12:13:30[info] [TCP] 35...:37668 --> 124... using GLOBAL 2020-10-31 12:13:30[info] [TCP] 35...:37670 --> 124... using GLOBAL 2020-10-31 12:13:30[info] [TCP] 35...:37672 --> 124... using GLOBAL 2020-10-31 12:13:30[info] [TCP] 35...:37674 --> 124... using GLOBAL 2020-10-31 12:13:30[info] [TCP] 35...:37676 --> 124... using GLOBAL 2020-10-31 12:13:30[info] [TCP] 35...:37678 --> 124... using GLOBAL 2020-10-31 12:13:31[info] [TCP] 35...:37680 --> 124... using GLOBAL 2020-10-31 12:13:31[info] [TCP] 35...:37682 --> 124... using GLOBAL 2020-10-31 12:13:31[info] [TCP] 35...:37684 --> 124... using GLOBAL 2020-10-31 12:13:31[info] [TCP] 35...:37686 --> 124... using GLOBAL 2020-10-31 12:13:31[info] [TCP] 35...:37688 --> 124... using GLOBAL 2020-10-31 12:13:31[info] [TCP] 35...:37690 --> 124... using GLOBAL 2020-10-31 12:13:31[info] [TCP] 35...:37694 --> 124... using GLOBAL 2020-10-31 12:13:31[info] [TCP] 35...:37696 --> 124... using GLOBAL 2020-10-31 12:13:32[info] [TCP] 35...:37698 --> 124... using GLOBAL 2020-10-31 12:13:32[info] [TCP] 35...:37700 --> 124... using GLOBAL 2020-10-31 12:13:32[info] [TCP] 35...:37702 --> 124... using GLOBAL 2020-10-31 12:13:32[info] [TCP] 35...:37704 --> 124... using GLOBAL 2020-10-31 12:13:32[info] [TCP] 167.248.133.52:46782 --> 124... using GLOBAL 2020-10-31 12:13:33[info] [TCP] 35...:37706 --> 124... using GLOBAL 2020-10-31 12:13:33[info] [TCP] 35...:37710 --> 124... using GLOBAL 2020-10-31 12:13:33[info] [TCP] 35...:37712 --> 124... using GLOBAL 2020-10-31 12:13:37[info] [TCP] 192.168.31.149:2713 --> stat.game.yy.com using GLOBAL 2020-10-31 12:13:41[info] [TCP] 192.168.31.149:2718 --> api.vc.bilibili.com using GLOBAL 2020-10-31 12:13:41[info] [TCP] 192.168.31.149:2717 --> api.live.bilibili.com using GLOBAL 2020-10-31 12:13:41[info] [TCP] 192.168.31.149:2721 --> www.google.com using GLOBAL 2020-10-31 12:13:41[info] [TCP] 192.168.31.149:2722 --> www.google.com using GLOBAL 2020-10-31 12:13:43[info] [TCP] 61.224.88.33:63646 --> 124... using GLOBAL 2020-10-31 12:13:43[info] [TCP] 192.168.31.48:37578 --> risk.dun.mi.com using GLOBAL 2020-10-31 12:13:43[info] [TCP] 61.224.88.33:63659 --> 124... using GLOBAL 2020-10-31 12:13:43[info] [TCP] 35...:60408 --> 124... using GLOBAL 2020-10-31 12:13:43[info] [TCP] 192.168.31.48:37580 --> risk.dun.mi.com using GLOBAL 2020-10-31 12:13:43[info] [TCP] 35...:60412 --> 124... using GLOBAL 2020-10-31 12:13:43[info] [TCP] 35...:60416 --> 124... using GLOBAL 2020-10-31 12:13:44[info] [TCP] 35...:60418 --> 124... using GLOBAL 2020-10-31 12:13:44[info] [TCP] 35...:60420 --> 124... using GLOBAL 2020-10-31 12:13:44[info] [TCP] 192.168.31.149:2747 --> skydrive.wns.windows.com using GLOBAL 2020-10-31 12:13:44[info] [TCP] 35...:60422 --> 124... using GLOBAL 2020-10-31 12:13:44[info] [TCP] 35...:60426 --> 124... using GLOBAL 2020-10-31 12:13:44[info] [TCP] 35...:60428 --> 124... using GLOBAL 2020-10-31 12:13:45[info] [TCP] 35...:60430 --> 124... using GLOBAL 2020-10-31 12:13:45[info] [TCP] 35...:60432 --> 124... using GLOBAL 2020-10-31 12:13:45[info] [TCP] 35...:60434 --> 124... using GLOBAL 2020-10-31 12:13:45[info] [TCP] 192.168.31.149:2748 --> stat.game.yy.com using GLOBAL 2020-10-31 12:13:45[info] [TCP] 35...:60438 --> 124... using GLOBAL 2020-10-31 12:13:45[info] [TCP] 192.168.31.48:42430 --> data.mistat.xiaomi.com using GLOBAL 2020-10-31 12:13:46[info] [TCP] 35...:60442 --> 124... using GLOBAL 2020-10-31 12:13:46[info] [TCP] 35...:60446 --> 124... using GLOBAL 2020-10-31 12:13:46[info] [TCP] 35...:60448 --> 124... using GLOBAL 2020-10-31 12:13:46[info] [TCP] 35...:60450 --> 124... using GLOBAL

juewuy commented 3 years ago

使用的核心版本? 确定是在redir模式也会出现这个问题吗? 如果不使用全局模式是否也会出现?

Vohrt commented 3 years ago

使用的核心版本? 确定是在redir模式也会出现这个问题吗? 如果不使用全局模式是否也会出现?

clash 和clashpre均会出发此问题 最近三个版本(2020.10.10-2020.10.26gc025a01)的clashpre肯定有此问题,因为我一直再用

改成tun+fakeip后问题消失。

不使用全局模式似乎不会立刻触发问题。但我9月末实验各种配置时,有使用混合模式暂时可用,但是出现一晚上后打开发现路由器已经重启过的现象,因此猜想似乎还是会有问题。 tun模式下全局和不全局均正常。

一个有意思的现象是,使用redir或者混合模式打开ip111.cn检测地址,发现三列都是我的远程服务器地址,但是使用tun+fakeip的话,直接访问国外一栏还是我自己的原始公网ip,不知道是不是有关联。 捕获

juewuy commented 3 years ago

clash对ipv6的支持并不友好,而且这个问题也不是我能解决的范畴,建议到上游核心提交issue