Giter Site home page Giter Site logo

shellcrash's People

Contributors

a7t avatar anyofyou avatar cluom avatar dotspecs avatar dustinwin avatar embeddedlove avatar ericsyj avatar firedes avatar giveup avatar juewuy avatar k3bc999 avatar kadedivent avatar kenchou avatar lemoeo avatar light-d avatar luckyyyyy avatar lunjielee avatar mankinchung avatar oluceps avatar rikudoupatrickstar avatar sharermax avatar simonsmh avatar taozle avatar testeera avatar thisdk avatar wey-gu avatar wray-lee avatar wuxs avatar yoshino-s avatar zhf883680 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shellcrash's Issues

为什么只在PREROUTING链上设置了clash规则,没有在OUTPUT链上设置呢

感谢作者的努力,非常好的工具。但是我设置了之后,默认是无法翻墙的,设置代理后可以。仔细看了iptables,如下

hain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
clash_dns  tcp  --  anywhere             dns.google          
clash_dns  tcp  --  anywhere             dns.google          
clash_dns  udp  --  anywhere             anywhere            
clash      tcp  --  anywhere             anywhere            

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain clash_dns (3 references)
target     prot opt source               destination         
REDIRECT   udp  --  anywhere             anywhere             udp dpt:domain redir ports 1053
REDIRECT   tcp  --  anywhere             anywhere             tcp dpt:domain redir ports 1053

Chain clash (1 references)
target     prot opt source               destination         
RETURN     all  --  anywhere             0.0.0.0/8           
RETURN     all  --  anywhere             10.0.0.0/8          
RETURN     all  --  anywhere             127.0.0.0/8         
RETURN     all  --  anywhere             169.254.0.0/16      
RETURN     all  --  anywhere             172.16.0.0/12       
RETURN     all  --  anywhere             192.168.0.0/16      
RETURN     all  --  anywhere             base-address.mcast.net/4 
RETURN     all  --  anywhere             240.0.0.0/4         
REDIRECT   tcp  --  anywhere             anywhere             multiport dports domain,submission,submissions,pop3s,imaps,imap2,http,https redir ports 7892

是不是应该OUTPUT链也设置clash规则,否则本机如何翻墙呢?PREROUTING链只工作于路由吧??

低版本 wget 获取 http 的 subconverter 配置文件时需要加上单引号

如下
root@CMIOT-AX18:# wget http://101.32.187.137:25500/sub?target=clash&url=httpsFclient%2Fsubscribe%3Ftoken%3f64e&insert=false
root@CMIOT-AX18:
# Connecting to 101.32.187.137:25500 (101.32.187.137:25500)
wget: server returned error: HTTP/1.1 400
^C
root@CMIOT-AX18:~# wget 'http://101.32.187.137:25500/sub?target=clash&url=https%2Fsubscribe%3Ftoken%4e&insert=false'
Connecting to 101.32.187.137:25500 (101.32.187.137:25500)
sub?target=clash&url 100% |**************************************************| 514k 0:00:00 ETA
[2]+ Done wget http://101.32.187.137:25500/sub?target=clash

shellclash 做了处理手动给链接加上单引号会被格式化

请输入完整链接 > 'http://101.32.187.137:25500/sub?target=clash&url=https2Fsubscribe%3Ftoken%3&insert=false'

请检查输入的链接是否正确:
'http://101.32.187.137:25500/sub?target=clash\&url=hv1%2Fclient%2Fsubscribe%3Ftoken%3\&insert=false'
确认导入配置文件?原配置文件将被更名为config.yaml.bak![1/0] > 1

正在连接服务器获取配置文件…………链接地址为:
http://101.32.187.137:25500/sub?target=clash&url=https%3A%2F%2F%2Fapi%2Fv1%2Fclient%2Fsubscribe%3Ftoken%3D4d5f64e&insert=false

"只代理常用端口" 与特殊的DNS请求冲突

multiport='53,587,465,995,993,143,80,443'

在网关里跑ShellClash, 当Clash的内置DNS使用非标端口或者是DNS Over TLS时, 部分端口 (例如853) 因被封闭而造成下游设备DNS解析异常.

路由器重启无法自动翻q

clash已设置开机自启动,但是路由器重启后不能自动翻q,需要手动进入ssh重新启动clash服务才能连接(手动进入clash后命令行显示clash服务是启动的,但是不能翻q)。总:存在开机不能自动fq的问题。ax1800最新固件(1.0.378 稳定版)。

在AX5上面,使用脚本启动后无发正常工作

  1. 使用0.8的脚本:
    clash服务启动失败!请检查配置文件!
    不过在手动执行clash -d . 后可以正常运行。

怀疑clash是deamon线程,无法使用procd启动,我把脚本改成如下可以正常工作:

start_service() {
	getconfig
	modifyyaml
    #创建clash后台进程
    $clashdir/clash -d $clashdir> /dev/null &
	#procd_open_instance
	#procd_set_param respawn
	#procd_set_param stderr 1
	#procd_set_param stdout 1
	#procd_set_param command $clashdir/clash -d $clashdir
	#procd_close_instance
	#修改iptables规则使流量进入clash
	stop_redir
	start_tun
	start_redir
	mark_time
}
stop_service() {
	stop_redir
	kill -9 `ps | grep '/etc/clash' | grep -v 'grep' | awk '{print $1}'`
}

不过修改后无法使用你的管理脚本停止,手工执行可以。

设置本机代理服务,无法启动

版本1.2.0
clash->2->6
然后看起来是启动了
但是重启clash后再次进入clash->2
又变成未启动了.
常看日志没有发现任何错误.

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

在目标节点是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

iptables: Chain already exists.

小米ax3600路由器,每次启动shell clash 都会出现这一行。
管理脚本 1.4.1
clash核心 v1.6.0
GeoIP/CN-IP 20210623 > 20210623
请问这是一个报错还是正常的,另外geoip和cn-ip好像之能势20210623版本的?这是最新版本吗?
谢谢!

订阅配置与预定义配置合并失败及tun模式相关

起初是因为我的订阅链接中仅有以下字段的内容

proxy-providers: xxx
proxy-groups: xxx
rule-providers: xxx
rules: xxx

启动后配置文件中仅有程序预定义的内容,订阅配置中的内容未成功合并

mixed-port: 7890
redir-port: 7892
authentication: [""]
.......
store-selected: false

反复测试后发现只要在订阅配置前面加一行(空行也可以)就可以成功合并

mixed-port: 7890
.......
store-selected: false

proxy-providers: xxx
proxy-groups: xxx
rule-providers: xxx
rules: xxx

不知道这个问题能否解决= =
另外不知tun模式需要什么依赖,除了kmod-tun还需要其他的吗,仅有kmod-tun的情况下似乎ip类的非域名连接无法转发到clash(例如telegram的连接),下面的是个人openwrt master分支编译用的config

CONFIG_TARGET_ramips=y
CONFIG_TARGET_ramips_mt7621=y
CONFIG_TARGET_ramips_mt7621_DEVICE_phicomm_k2p=y
CONFIG_LUCI_LANG_zh_Hans=y
CONFIG_PACKAGE_bash=y
CONFIG_PACKAGE_ca-certificates=y
CONFIG_PACKAGE_curl=y
CONFIG_PACKAGE_luci=y
CONFIG_PACKAGE_kmod-tun=y
CONFIG_PACKAGE_openssh-sftp-server=y

支持 Android 环境

由于在 AX6 上会导致路由器经常崩溃自动重启,手上还有一个 N1 盒子,已 root,安装过 entware,尝试执行了下 shellclash 的安装脚本,失败告终,安装过程:

***********************************************
**                 欢迎使用                  **
**                ShellClash                 **
**                             by  Juewuy    **
***********************************************
最新版本:1.0.0beta18.2
-----------------------------------------------
如遇问题请加TG群反馈: t.me/clashfm 
支持各种基于openwrt的路由器设备
支持Debian、Centos等标准Linux系统
-----------------------------------------------
安装ShellClash至少需要预留约1MB的磁盘空间
 1 在/etc目录下安装(适合路由设备)
 2 在/usr/share目录下安装(适合大多数设备)
 3 在当前用户目录下安装(适合非root用户)
 4 手动设置安装目录
 0 退出安装
-----------------------------------------------
请输入相应数字 > 4
-----------------------------------------------
可用路径 剩余空间:
/dev 906.9M
/mnt 907.4M
/system 270.1M
/cache 485.0M
/data 3.8G
/tee 4.8M
/storage 907.4M
/mnt/runtime/default/emulated 3.8G
/storage/emulated 3.8G
/mnt/runtime/read/emulated 3.8G
/mnt/runtime/write/emulated 3.8G
/mnt/media_rw/8E62-62DA 20.5G
/mnt/runtime/default/8E62-62DA 20.5G
/storage/8E62-62DA 20.5G
/mnt/runtime/read/8E62-62DA 20.5G
/mnt/runtime/write/8E62-62DA 20.5G
/opt 3.8G
/system/etc/dropbear 3.8G
/tmp 3.8G
路径是必须带 / 的格式,写入虚拟内存(/tmp,/sys,..)的文件会在重启后消失!!!
请输入自定义路径 > /opt/shellclash
目标目录磁盘剩余:3.8G
确认安装?(1/0) > 1
-----------------------------------------------
开始从服务器获取安装文件!
-----------------------------------------------
######################################################################################### 100.0%
-----------------------------------------------
开始解压文件!
clash.service
clash.sh
clashservice
getdate.sh
start.sh
sed: -i requires an argument
sh: can't create : nonexistent directory
sed: -i requires an argument
sh: can't create : nonexistent directory
-----------------------------------------------
ShellClash 已经安装成功!
-----------------------------------------------
输入 clash 命令即可管理!!!
-----------------------------------------------

安装后手动执行 clash.sh

环境变量配置有误!请重新安装脚本!
-----------------------------------------------
欢迎使用ShellClash!		版本:
Clash服务没有运行(Redir模式),保守模式
TG群:https://t.me/clashfm
-----------------------------------------------
chmod: /start.sh: No such file or directory
 1 启动/重启clash服务
 2 clash功能设置
 3 停止clash服务
 4 代理本机:未开启
 5 设置定时任务
 6 导入配置文件
 7 clash进阶设置
 8 测试菜单
 9 更新/卸载
-----------------------------------------------
 0 退出脚本
./clash.sh[1106]: read: -p: no coprocess
-----------------------------------------------
请输入正确的数字!

环境:

p230:/opt/shellclash/clash # uname -a
Linux localhost 3.14.29 #1 SMP PREEMPT Wed Mar 7 19:32:34 CST 2018 aarch64 GNU/Linux

离线模式 wget 低版本参数不支持

参数1:
wget: unrecognized option: show-progress
BusyBox v1.28.3 () multi-call binary.
参数2:
wget: unrecognized option: timeout=5
参数3:
wget: unrecognized option: no-check-certificate

导入配置文件报错,大佬看下啥情况 ,好像是oom了


请输入完整链接 > http://192.168.1.96/sub.yaml

请检查输入的链接是否正确:
http://192.168.1.96/sub.yaml
确认导入配置文件?原配置文件将被更名为config.yaml.bak![1/0] > 1

正在连接服务器获取配置文件…………链接地址为:
http://192.168.1.96/sub.yaml
可以手动复制该链接到浏览器打开并查看数据是否正常!
############################################################################################################################### 100.0%
fatal error: runtime: out of memory

runtime stack:
runtime.throw(0x769b2d, 0x16)
runtime/panic.go:1117 +0x54 fp=0x7fca31d2e0 sp=0x7fca31d2b0 pc=0x42b24
runtime.sysMap(0x4000000000, 0x4000000, 0xcbc430)
runtime/mem_linux.go:169 +0xbc fp=0x7fca31d320 sp=0x7fca31d2e0 pc=0x2714c
runtime.(*mheap).sysAlloc(0xca33c0, 0x400000, 0x7fca31d438, 0x35b50)
runtime/malloc.go:729 +0x188 fp=0x7fca31d3d0 sp=0x7fca31d320 pc=0x1b528
runtime.(*mheap).grow(0xca33c0, 0x1, 0x0)
runtime/mheap.go:1346 +0x80 fp=0x7fca31d440 sp=0x7fca31d3d0 pc=0x35d50
runtime.(*mheap).allocSpan(0xca33c0, 0x1, 0x2c00, 0x0)
runtime/mheap.go:1173 +0x670 fp=0x7fca31d4d0 sp=0x7fca31d440 pc=0x35b80
runtime.(*mheap).alloc.func1()
runtime/mheap.go:910 +0x54 fp=0x7fca31d520 sp=0x7fca31d4d0 pc=0x6d924
runtime.(*mheap).alloc(0xca33c0, 0x1, 0x7fca31012c, 0x264a4)
runtime/mheap.go:904 +0x64 fp=0x7fca31d570 sp=0x7fca31d520 pc=0x350f4
runtime.(*mcentral).grow(0xcb56f8, 0x0)
runtime/mcentral.go:232 +0x74 fp=0x7fca31d5c0 sp=0x7fca31d570 pc=0x267a4
runtime.(*mcentral).cacheSpan(0xcb56f8, 0x0)
runtime/mcentral.go:158 +0x344 fp=0x7fca31d630 sp=0x7fca31d5c0 pc=0x26594
runtime.(*mcache).refill(0x7f9a311108, 0x2c)
runtime/mcache.go:162 +0xc0 fp=0x7fca31d690 sp=0x7fca31d630 pc=0x258d0
runtime.(*mcache).nextFree(0x7f9a311108, 0xc8be2c, 0x7fca31d718, 0x1cd10, 0x7fca31d748)
runtime/malloc.go:882 +0x8c fp=0x7fca31d6e0 sp=0x7fca31d690 pc=0x1bc3c
runtime.mallocgc(0x178, 0x75b700, 0x7fca31d701, 0x7fca31d7d8)
runtime/malloc.go:1069 +0x75c fp=0x7fca31d790 sp=0x7fca31d6e0 pc=0x1c52c
runtime.newobject(0x75b700, 0x465e8)
runtime/malloc.go:1177 +0x38 fp=0x7fca31d7c0 sp=0x7fca31d790 pc=0x1c748
runtime.malg(0x8000, 0x0)
runtime/proc.go:3944 +0x2c fp=0x7fca31d810 sp=0x7fca31d7c0 pc=0x4da7c
runtime.mpreinit(0xc8be40)
runtime/os_linux.go:355 +0x28 fp=0x7fca31d830 sp=0x7fca31d810 pc=0x3f918
runtime.mcommoninit(0xc8be40, 0xffffffffffffffff)
runtime/proc.go:744 +0xdc fp=0x7fca31d880 sp=0x7fca31d830 pc=0x4670c
runtime.schedinit()
runtime/proc.go:637 +0x98 fp=0x7fca31d8e0 sp=0x7fca31d880 pc=0x46228
runtime.rt0_go(0x7fca31fe73, 0x7fca31fe89, 0x7fca31fe8c, 0x7fca31fe8f, 0x7fca31fe9f, 0x7fca31fea2, 0x0, 0x7fca31febe, 0x7fca31fedf, 0x7fca31fee9, ...)
runtime/asm_arm64.s:82 +0xa8 fp=0x7fca31d910 sp=0x7fca31d8e0 pc=0x73ff8
配置文件加载失败!请查看报错信息!
fatal error: runtime: out of memory

runtime stack:
runtime.throw(0x769b2d, 0x16)
runtime/panic.go:1117 +0x54 fp=0x7fd6b71da0 sp=0x7fd6b71d70 pc=0x42b24
runtime.sysMap(0x4000000000, 0x4000000, 0xcbc430)
runtime/mem_linux.go:169 +0xbc fp=0x7fd6b71de0 sp=0x7fd6b71da0 pc=0x2714c
runtime.(*mheap).sysAlloc(0xca33c0, 0x400000, 0x7fd6b71ef8, 0x35b50)
runtime/malloc.go:729 +0x188 fp=0x7fd6b71e90 sp=0x7fd6b71de0 pc=0x1b528
runtime.(*mheap).grow(0xca33c0, 0x1, 0x0)
runtime/mheap.go:1346 +0x80 fp=0x7fd6b71f00 sp=0x7fd6b71e90 pc=0x35d50
runtime.(*mheap).allocSpan(0xca33c0, 0x1, 0x2c00, 0x0)
runtime/mheap.go:1173 +0x670 fp=0x7fd6b71f90 sp=0x7fd6b71f00 pc=0x35b80
runtime.(*mheap).alloc.func1()
runtime/mheap.go:910 +0x54 fp=0x7fd6b71fe0 sp=0x7fd6b71f90 pc=0x6d924
runtime.(*mheap).alloc(0xca33c0, 0x1, 0x7fd6b7012c, 0x264a4)
runtime/mheap.go:904 +0x64 fp=0x7fd6b72030 sp=0x7fd6b71fe0 pc=0x350f4
runtime.(*mcentral).grow(0xcb56f8, 0x0)
runtime/mcentral.go:232 +0x74 fp=0x7fd6b72080 sp=0x7fd6b72030 pc=0x267a4
runtime.(*mcentral).cacheSpan(0xcb56f8, 0x0)
runtime/mcentral.go:158 +0x344 fp=0x7fd6b720f0 sp=0x7fd6b72080 pc=0x26594
runtime.(*mcache).refill(0x7f90170108, 0x2c)
runtime/mcache.go:162 +0xc0 fp=0x7fd6b72150 sp=0x7fd6b720f0 pc=0x258d0
runtime.(*mcache).nextFree(0x7f90170108, 0xc8be2c, 0x7fd6b721d8, 0x1cd10, 0x7fd6b72208)
runtime/malloc.go:882 +0x8c fp=0x7fd6b721a0 sp=0x7fd6b72150 pc=0x1bc3c
runtime.mallocgc(0x178, 0x75b700, 0x7fd6b72201, 0x7fd6b72298)
runtime/malloc.go:1069 +0x75c fp=0x7fd6b72250 sp=0x7fd6b721a0 pc=0x1c52c
runtime.newobject(0x75b700, 0x465e8)
runtime/malloc.go:1177 +0x38 fp=0x7fd6b72280 sp=0x7fd6b72250 pc=0x1c748
runtime.malg(0x8000, 0x0)
runtime/proc.go:3944 +0x2c fp=0x7fd6b722d0 sp=0x7fd6b72280 pc=0x4da7c
runtime.mpreinit(0xc8be40)
runtime/os_linux.go:355 +0x28 fp=0x7fd6b722f0 sp=0x7fd6b722d0 pc=0x3f918
runtime.mcommoninit(0xc8be40, 0xffffffffffffffff)
runtime/proc.go:744 +0xdc fp=0x7fd6b72340 sp=0x7fd6b722f0 pc=0x4670c
runtime.schedinit()
runtime/proc.go:637 +0x98 fp=0x7fd6b723a0 sp=0x7fd6b72340 pc=0x46228
runtime.rt0_go(0x7fd6b74e73, 0x7fd6b74e89, 0x7fd6b74e8c, 0x7fd6b74e8f, 0x7fd6b74e9f, 0x7fd6b74ea2, 0x0, 0x7fd6b74ebe, 0x7fd6b74edf, 0x7fd6b74ee9, ...)
runtime/asm_arm64.s:82 +0xa8 fp=0x7fd6b723d0 sp=0x7fd6b723a0 pc=0x73ff8
fatal error: runtime: out of memory

runtime stack:
runtime.throw(0x769b2d, 0x16)
runtime/panic.go:1117 +0x54 fp=0x7fecc28c80 sp=0x7fecc28c50 pc=0x42b24
runtime.sysMap(0x4000000000, 0x4000000, 0xcbc430)
runtime/mem_linux.go:169 +0xbc fp=0x7fecc28cc0 sp=0x7fecc28c80 pc=0x2714c
runtime.(*mheap).sysAlloc(0xca33c0, 0x400000, 0x7fecc28dd8, 0x35b50)
runtime/malloc.go:729 +0x188 fp=0x7fecc28d70 sp=0x7fecc28cc0 pc=0x1b528
runtime.(*mheap).grow(0xca33c0, 0x1, 0x0)
runtime/mheap.go:1346 +0x80 fp=0x7fecc28de0 sp=0x7fecc28d70 pc=0x35d50
runtime.(*mheap).allocSpan(0xca33c0, 0x1, 0x2c00, 0x0)
runtime/mheap.go:1173 +0x670 fp=0x7fecc28e70 sp=0x7fecc28de0 pc=0x35b80
runtime.(*mheap).alloc.func1()
runtime/mheap.go:910 +0x54 fp=0x7fecc28ec0 sp=0x7fecc28e70 pc=0x6d924
runtime.(*mheap).alloc(0xca33c0, 0x1, 0x7fecc2012c, 0x264a4)
runtime/mheap.go:904 +0x64 fp=0x7fecc28f10 sp=0x7fecc28ec0 pc=0x350f4
runtime.(*mcentral).grow(0xcb56f8, 0x0)
runtime/mcentral.go:232 +0x74 fp=0x7fecc28f60 sp=0x7fecc28f10 pc=0x267a4
runtime.(*mcentral).cacheSpan(0xcb56f8, 0x0)
runtime/mcentral.go:158 +0x344 fp=0x7fecc28fd0 sp=0x7fecc28f60 pc=0x26594
runtime.(*mcache).refill(0x7fa325c108, 0x2c)
runtime/mcache.go:162 +0xc0 fp=0x7fecc29030 sp=0x7fecc28fd0 pc=0x258d0
runtime.(*mcache).nextFree(0x7fa325c108, 0xc8be2c, 0x7fecc290b8, 0x1cd10, 0x7fecc290e8)
runtime/malloc.go:882 +0x8c fp=0x7fecc29080 sp=0x7fecc29030 pc=0x1bc3c
runtime.mallocgc(0x178, 0x75b700, 0x7fecc29101, 0x7fecc29178)
runtime/malloc.go:1069 +0x75c fp=0x7fecc29130 sp=0x7fecc29080 pc=0x1c52c
runtime.newobject(0x75b700, 0x465e8)
runtime/malloc.go:1177 +0x38 fp=0x7fecc29160 sp=0x7fecc29130 pc=0x1c748
runtime.malg(0x8000, 0x0)
runtime/proc.go:3944 +0x2c fp=0x7fecc291b0 sp=0x7fecc29160 pc=0x4da7c
runtime.mpreinit(0xc8be40)
runtime/os_linux.go:355 +0x28 fp=0x7fecc291d0 sp=0x7fecc291b0 pc=0x3f918
runtime.mcommoninit(0xc8be40, 0xffffffffffffffff)
runtime/proc.go:744 +0xdc fp=0x7fecc29220 sp=0x7fecc291d0 pc=0x4670c
runtime.schedinit()
runtime/proc.go:637 +0x98 fp=0x7fecc29280 sp=0x7fecc29220 pc=0x46228
runtime.rt0_go(0x7fecc2be73, 0x7fecc2be89, 0x7fecc2be8c, 0x7fecc2be8f, 0x7fecc2be9f, 0x7fecc2bea2, 0x0, 0x7fecc2bebe, 0x7fecc2bedf, 0x7fecc2bee9, ...)
runtime/asm_arm64.s:82 +0xa8 fp=0x7fecc292b0 sp=0x7fecc29280 pc=0x73ff8

下载并安装根证书失败

输入 clash 命令即可管理!!!
-----------------------------------------------
[root@J1900 ~]# clash
-----------------------------------------------
欢迎使用ShellClash!            版本:1.1.0
Clash服务没有运行(Redir模式),未设置开机启动!
TG群:https://t.me/clashfm
-----------------------------------------------
-----------------------------------------------
 欢迎使用ShellClash新手引导! 
-----------------------------------------------
请先选择你的使用环境: 
(你之后依然可以在设置中更改各种配置)
-----------------------------------------------
 1 各类路由设备,配置局域网透明路由
 2 桌面版Linux系统,仅配置本机路由
 3 服务器Linux系统,仅配置本机路由
 4 多功能设备,配置本机及局域网路由
-----------------------------------------------
请输入对应数字 > 4
-----------------------------------------------
是否需要代理UDP流量(主要用于游戏)? 
-----------------------------------------------
 1 不代理UDP流量(可能会导致一部分游戏/应用无法连接)
 2 使用Tun虚拟网卡代理UDP流量(更低的延迟但更多的CPU消耗)
 3 使用Tproxy模式代理UDP流量(较低CPU消耗但相对高的延迟)
-----------------------------------------------
请输入对应数字 > 2
-----------------------------------------------
安装本地Dashboard面板,可以更快捷的管理clash内置规则!
-----------------------------------------------
需要安装本地Dashboard面板吗?(1/0) > 1
-----------------------------------------------
安装本地版dashboard管理面板
打开管理面板的速度更快且更稳定
-----------------------------------------------
请选择面板安装类型:
-----------------------------------------------
 1 安装官方面板(约500kb)
 2 安装Yacd面板(约1.1mb)
 3 卸载本地面板
 0 返回上级菜单
请输入对应数字 > 2
-----------------------------------------------
正在连接服务器获取安装文件…………
######################################################################## 100.0%
下载成功,正在解压文件!
-----------------------------------------------
面板安装成功!
请使用http://192.168.1.30:9999/ui访问面板
-----------------------------------------------
当前设备未找到根证书文件
-----------------------------------------------
是否下载并安装根证书?(1/0) > 1
-----------------------------------------------
正在连接服务器获取安装文件…………
######################################################################## 100.0%
-----------------------------------------------
mv: 在"/tmp/ca-certificates.crt" 后缺少了要操作的目标文件
Try 'mv --help' for more information.
证书安装成功!
-----------------------------------------------
是否导入配置文件?(这是运行前的最后一步)
你必须拥有一份yaml格式的配置文件才能运行clash服务!
-----------------------------------------------
现在开始导入?(1/0) > 

这里的逻辑好像有问题,导入完整clash配置,会触发订阅转换

AX5 限速

家用宽带是300M电信,开启脚本后 测速、下载都只有不到100M速度

1.4.1版本电视版本看netflix问题

看您的版本更新介绍写了解决奈飞TV问题,现在情况是还是得用 fake-ip模式,电视端奈飞才能看,不然还是报NW-4-8,用其它模式的话,网游便进不去,请问如何解决,谢谢

AX5无法使用

  1. 目前的版本配置文件总是生成在根目录;测试启动会提示:
    INFO[0000] Can't find config, create a initial config file
    INFO[0000] Can't find MMDB, start download
    FATA[0001] Initial configuration directory error: Can't initial MMDB: Can't download MMDB: Get "https://github.com/Dreamacro/maxmind-geoip/releases/latest/download/Country.mmdb": x509: certificate signed by unknown authority
  2. 将config.yaml拷贝到/etc/clash目录;测试启动会提示:
    root@XiaoQiang:/etc/clash# INFO[0000] Can't find config, create a initial config file

INFO[0000] Can't find MMDB, start download
-ash: INFO[0000]: not found
root@XiaoQiang:/etc/clash# FATA[0001] Initial configuration directory error: Can't initial MMDB: Can't download MMDB: Get "https://github.com/Dreamacro/maxmind-geoip/releases/latest/download/Country.mmd
b": x509: certificate signed by unknown authority

NTP问题

开发者大大能不能增加一个脚本,就是在启动前执行某些命令强制同步ntp服务器以获得校准时间,如果时间误差超过60s,v2节点是用不了的,trojan正常,我这边(CR6608 padavan)NTP服务器一直不正常,日志一直是(NTP Client: Synchronizing time to ntp1.aliyun.com),不知道是不是我这边宽带的问题导致每次都无法同步时间,但奇怪的是OpenWrt下和手机或者电脑win10系统都能正常从网络上获取标准时间,路由器老毛子每次都得用date -s 2021-6-14 && date xx:xx:xx手动校准当前时间,每次重启时间就不准了,所以希望大大能做一个每次开启/重启clash程序之前强制同步标准时间的脚本给老毛子用(比如绕过可能是被禁用的ntp服务器的端口号,用另外的方式获取时间),并做个开关自由选择是否开启强制同步ntp服务器标准时间

使用自定义的DNS设定

现状:
自定义的clash中 包含了dns的设定 包括监听端口和dns server,但是 使用了脚本的获取订阅后 会被覆写成 114(start.sh?)
例如:
dns: enable: true # 是否启用dns false ipv6: false listen: 0.0.0.0:53 enhanced-mode: fake-ip # 模式:redir-host或fake-ip #fake-ip-range: 198.18.0.1/16 # #fake-ip-filter: # fake ip 白名单列表,如果你不知道这个参数的作用,请勿修改 #- '*.lan' #- localhost.ptlogin2.qq.com nameserver: - https://doh.pub/dns-query - https://dns.rubyfish.cn/dns-query fallback: - https://dns.cloudflare.com/dns-query - https://dns.google/dns-query fallback-filter: geoip: true # 默认 #ipcidr: # 在这个网段内的 IP 地址会被考虑为被污染的 IP #- 240.0.0.0/4
希望:能够使用自定义的DNS设置

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.