Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Zebra r66老是出现"error": "EOF" #143

Open
jyuan15 opened this issue Jul 8, 2018 · 18 comments
Open

Zebra r66老是出现"error": "EOF" #143

jyuan15 opened this issue Jul 8, 2018 · 18 comments

Comments

@jyuan15
Copy link

jyuan15 commented Jul 8, 2018

有时好不容易能用了,到下次启动又出现同样错误:

{
"type": "localproxy",
"host": "127.0.0.1:8087",
"software": "zebra r66 (go/devel +1a738a7350 Thu Jul 5 17:45:56 2018 +0800 windows/386)",
"filter": "*gae.Filter",
"error": "EOF"
}

这个该怎么办?

@MeABc
Copy link

MeABc commented Jul 8, 2018

你是不是 IP 太少了!另,你这是用 QUIC 吗?

@caofengzi
Copy link

也就這兩個原因,r66已經不次於1651了。

@MeABc
Copy link

MeABc commented Jul 8, 2018

个人认为还是 IP 的原因。
我 IP 少的时候出现这个次数还是很多的,但加 IP 多了以后这个少了。
又,下个版本我改下,让 “EOF”进入重试。现在是直接返回错误。

@jyuan15
Copy link
Author

jyuan15 commented Jul 8, 2018

@MeABc 我IP不少啊,2000多个,用TLS,1651速度能上万,1080p不断流,当然Zebra正常的时候也很好。
而且不论gop或prom都没出过这现象,我觉得是证书问题。

2018-07-08_134152

@MeABc
Copy link

MeABc commented Jul 8, 2018

证书问题

不太明白这个是什么意思。但 QUIC 部份,我早已增加了证书验证。

看你秀那图,我口水都流了。。。。我属于重灾区,没有好 IP,只好干瞪眼。。。

@MeABc
Copy link

MeABc commented Jul 8, 2018

用TLS

那我就明白了,TLS 下这个很容易出这个。不过我本地已改。quic-go 最新更新貌似有问题,我现在还不敢上传发布版本。

@jyuan15
Copy link
Author

jyuan15 commented Jul 8, 2018

@MeABc 1651也用tls,怎么不出现?IP是用QUIC模式扫的(因为用TLS扫不出来)。

证书是直接用gop的吗?要不要复制到Zebra目录中,还是让它自己生成?

@jyuan15
Copy link
Author

jyuan15 commented Jul 8, 2018

@MeABc 我的IP在这里找的:https://github.com/lennylxx/ipv6-hosts/blob/master/hosts

@MeABc
Copy link

MeABc commented Jul 8, 2018

证书是直接用gop的吗?要不要复制到Zebra目录中,还是让它自己生成?

哦,你是说这个本地证书!这个是兼容的,直接复制就行。这个证书不影响那个错误的。1651 没有那就是我这个版本的问题了。

@jyuan15
Copy link
Author

jyuan15 commented Jul 8, 2018

@MeABc 复制过,当时可用,下次启动又出错了。甚至还把stripssl.json中的证书名改成Zebra,把生成的证书单独导入浏览器,也是当次有效,下次出错。

@MeABc
Copy link

MeABc commented Jul 8, 2018

@jyuan15
我自己就是用原来 goproxy 的证书。你这种情况是不是被什么给还原了?下次出错时能不能发下日志信息。

@jyuan15
Copy link
Author

jyuan15 commented Jul 8, 2018

刚测试结果,启动出错,日志如下:

I0708 22:54:24.855872 2076 autoproxy.go:737] 127.0.0.1:63628 "AUTOPROXY Proxy
Pac GET /proxy.pac HTTP/1.1" - -
I0708 22:54:25.049883 2076 autoproxy.go:737] 127.0.0.1:63629 "AUTOPROXY Proxy
Pac GET /proxy.pac HTTP/1.1" - -
I0708 22:54:31.364244 2076 autoproxy.go:737] 127.0.0.1:63630 "AUTOPROXY Proxy
Pac GET /proxy.pac HTTP/1.1" - -
I0708 22:54:41.176805 2076 stripssl.go:151] 127.0.0.1:63631 "STRIP CONNECT ww
w.google.com:443 HTTP/1.1" - -
I0708 22:54:41.208807 2076 dialer2.go:96] MULTIDIALER DialTLS("tcp", "www.goo
gle.com:443") with good_addrs=0, bad_addrs=0
W0708 22:54:43.596944 2076 gaetransport.go:125] GAE *http.Transport.RoundTrip
("https://www.google.com/ncr") error: dial tcp [2800:200:2008:c4::13]:443: conne
ctex: An established connection was aborted by the software in your host machine
.
I0708 22:54:43.599944 2076 dialer2.go:96] MULTIDIALER DialTLS("tcp", "www.goo
gle.com:443") with good_addrs=0, bad_addrs=20
W0708 22:54:48.606230 2076 gaetransport.go:93] GAE tcp RoundTrip 2804:a8:c800
💯:e error: &poll.TimeoutError{}, close connection to it
W0708 22:54:48.608230 2076 gaetransport.go:97] GAE: 2804:a8:c800:100::e is ti
meout, add to blacklist for 5m0s
W0708 22:54:48.610231 2076 gaetransport.go:125] GAE *http.Transport.RoundTrip
("https://www.google.com/ncr") error: dial tcp [2804:a8:c800:100::e]:443: i/o ti
meout
W0708 22:54:48.611231 2076 gae.go:645] 127.0.0.1:63631 "GAE DIRECT GET https:
//www.google.com/ncr HTTP/1.1" error: *net.OpError(dial tcp [2804:a8:c800:100::e
]:443: i/o timeout)
E0708 22:54:48.616231 2076 handler.go:98] 127.0.0.1:63631 Filter RoundTrip *g
ae.Filter error: dial tcp [2804:a8:c800:100::e]:443: i/o timeout
I0708 22:55:21.362104 2076 dialer2.go:96] MULTIDIALER DialTLS("tcp", "clients
3.google.com:443") with good_addrs=0, bad_addrs=30
W0708 22:55:23.362218 2076 gaetransport.go:125] GAE *http.Transport.RoundTrip
("https://clients3.google.com/generate_204") error: context deadline exceeded
W0708 22:55:23.363218 2076 gaetransport.go:125] GAE *http.Transport.RoundTrip
("https://clients3.google.com/generate_204") error: context deadline exceeded
I0708 22:55:23.366218 2076 gae.go:410] GAE EnableDeadProbe "GET https://clien
ts3.google.com/generate_204" error: context deadline exceeded
I0708 22:55:28.409507 2076 dialer2.go:96] MULTIDIALER DialTLS("tcp", "clients
3.google.com:443") with good_addrs=0, bad_addrs=28
W0708 22:55:30.409621 2076 gaetransport.go:125] GAE *http.Transport.RoundTrip
("https://clients3.google.com/generate_204") error: context deadline exceeded
W0708 22:55:30.409621 2076 gaetransport.go:125] GAE *http.Transport.RoundTrip
("https://clients3.google.com/generate_204") error: context deadline exceeded
I0708 22:55:30.409621 2076 gae.go:410] GAE EnableDeadProbe "GET https://clien
ts3.google.com/generate_204" error: context deadline exceeded
I0708 22:55:34.451853 2076 dialer2.go:96] MULTIDIALER DialTLS("tcp", "clients
3.google.com:443") with good_addrs=0, bad_addrs=29

然后在托盘图标那里“重新载入”,又正常了:

I0708 22:55:40.333189 2580 stripssl.go:151] 127.0.0.1:63776 "STRIP CONNECT ww
w.google.com:443 HTTP/1.1" - -
I0708 22:55:40.356190 2580 dialer2.go:96] MULTIDIALER DialTLS("tcp", "www.goo
gle.com:443") with good_addrs=0, bad_addrs=0
I0708 22:55:41.477254 2580 gae.go:668] 127.0.0.1:63776 "GAE DIRECT GET https:
//www.google.com/ncr HTTP/1.1" 302 220
I0708 22:55:41.856276 2580 gae.go:668] 127.0.0.1:63776 "GAE DIRECT GET https:
//www.google.com/ HTTP/1.1" 200
I0708 22:55:42.731326 2580 stripssl.go:151] 127.0.0.1:63797 "STRIP CONNECT ww
w.google.com:443 HTTP/1.1" - -
I0708 22:55:42.739327 2580 dialer2.go:96] MULTIDIALER DialTLS("tcp", "www.goo
gle.com:443") with good_addrs=7, bad_addrs=0
I0708 22:55:43.033343 2580 gae.go:668] 127.0.0.1:63776 "GAE DIRECT GET https:
//www.google.com/xjs//js/k=xjs.s.ja.fflJosVKgNw.O/m=aa,abd,async,dvl,foot,fpe,i
pv6,lu,m,mu,sf,d3l,WgDvvc/am=IIvIZAwBIP-nMJAoYAUjLDCBgiEC/rt=j/d=1/exm=sx,sb,cdo
s,cr,elog,hsm,jsa,r,d,csi/ed=1/dg=0/rs=ACT90oGPKi1tKNqP5tnYYrTarg-ZxirSrw?xjs=s1
HTTP/1.1" 200 28680
I0708 22:55:43.104347 2580 stripssl.go:151] 127.0.0.1:63818 "STRIP CONNECT og
s.google.com:443 HTTP/1.1" - -
I0708 22:55:43.118348 2580 dialer2.go:96] MULTIDIALER DialTLS("tcp", "ogs.goo
gle.com:443") with good_addrs=7, bad_addrs=0
I0708 22:55:43.174351 2580 dialer2.go:96] MULTIDIALER DialTLS("tcp", "www.goo
gle.com:443") with good_addrs=7, bad_addrs=0
I0708 22:55:43.414365 2580 gae.go:668] 127.0.0.1:63797 "GAE DIRECT GET https:
//www.google.com/complete/search?client=psy-ab&hl=ja&gs_rn=64&gs_ri=psy-ab&tok=q
6GCymPePtbGccE5pdIOAQ&cp=0&gs_id=1&q=&xhr=t HTTP/1.1" 200
I0708 22:55:43.891392 2580 gae.go:668] 127.0.0.1:63776 "GAE DIRECT GET https:
//www.google.com/xjs/
/js/k=xjs.s.ja.fflJosVKgNw.O/m=RMhBfe/am=IIvIZAwBIP-nMJAoY
AUjLDCBgiEC/rt=j/d=1/exm=sx,sb,cdos,cr,elog,hsm,jsa,r,d,csi,aa,abd,async,dvl,foo
t,fpe,ipv6,lu,m,mu,sf,d3l,WgDvvc/ed=1/dg=0/rs=ACT90oGPKi1tKNqP5tnYYrTarg-ZxirSrw
?xjs=s2 HTTP/1.1" 200 1474
I0708 22:55:44.013399 2580 gae.go:668] 127.0.0.1:63818 "GAE DIRECT POST https
://ogs.google.com/u/0/_/notifications/count HTTP/1.1" 200
I0708 22:55:44.302416 2580 gae.go:668] 127.0.0.1:63776 "GAE DIRECT GET https:
//www.google.com/images/nav_logo242.png HTTP/1.1" 200 16786
I0708 22:55:48.661665 2580 stripssl.go:151] 127.0.0.1:63859 "STRIP CONNECT pl
ay.google.com:443 HTTP/1.1" - -
I0708 22:55:49.634721 2580 gae.go:668] 127.0.0.1:63859 "GAE DIRECT POST https
://play.google.com/log?format=json HTTP/1.1" 200
I0708 22:56:38.102493 2580 dialer2.go:96] MULTIDIALER DialTLS("tcp", "clients
3.google.com:443") with good_addrs=30, bad_addrs=27
W0708 22:56:40.102608 2580 gaetransport.go:125] GAE *http.Transport.RoundTrip
("https://clients3.google.com/generate_204") error: context deadline exceeded
W0708 22:56:42.697756 2580 gaetransport.go:125] GAE *http.Transport.RoundTrip
("https://clients3.google.com/generate_204") error: context deadline exceeded
I0708 22:56:42.697756 2580 gae.go:410] GAE EnableDeadProbe "GET https://clien
ts3.google.com/generate_204" error: context deadline exceeded
I0708 22:56:40.756645 2580 autoproxy.go:737] 127.0.0.1:63861 "AUTOPROXY Proxy
Pac GET /proxy.pac HTTP/1.1" - -
I0708 22:56:47.934055 2580 gae.go:668] 127.0.0.1:63776 "GAE DIRECT GET https:
//www.google.com/complete/search?client=psy-ab&hl=ja&gs_rn=64&gs_ri=psy-ab&tok=q
6GCymPePtbGccE5pdIOAQ&cp=0&gs_id=7e&q=&xhr=t HTTP/1.1" 200
I0708 22:56:55.354480 2580 dialer2.go:96] MULTIDIALER DialTLS("tcp", "clients
3.google.com:443") with good_addrs=34, bad_addrs=33
I0708 22:57:04.771018 2580 dialer2.go:96] MULTIDIALER DialTLS("tcp", "clients
3.google.com:443") with good_addrs=41, bad_addrs=37

@MeABc
Copy link

MeABc commented Jul 8, 2018

@jyuan15
谢谢!我看看。

这个不是证书问题。

@MeABc
Copy link

MeABc commented Jul 8, 2018

我知道这个是什么问题了,这是随机 CipherSuites 引起的问题:即第一次启动会出错,重载后如正常,后面就会一直正常使用;如重载一次不成功,只能多次重载。

关于这个问题,多说几句:这个问题,goproxy 早期版本一直都有,后来多人反映,社长就去掉了。在这个问题上,我和社长可能有“分歧”,所以,我在我的版本里重新恢复了这些代码。所以问题也就回来了。

后面我会在随机和正常启动之间取一个折中,可能会减少出现次数,但不保证会完全解决。

@caofengzi
Copy link

原來用的ip6啊。

@Asteroids89
Copy link

Asteroids89 commented Jul 10, 2018

弱弱的问一下各位大佬,SNI或是IP6如何使用?一直用的是主任的扫描IP的工具,IP类型是QUIC,之前一直可以正常使用,最近不知道是google调整规则,还是加强了封锁,可用IP一直是个位数,还时常断流.呼叫下
@MeABc @Kisesy

@jasonliul
Copy link

@jyuan15
俺out太久, IPV6 数据库都建好了~~

@MeABc
Copy link

MeABc commented Jul 23, 2018

SNI或是IP6如何使用?

在 goproxy 里当做 GCC IP 一样用(放在同一个地方)。前提是这些 IP 要“能用”。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants