Closed LR7SKQUO closed 1 year ago
你的ppgw是定制还是使用release下载的
是从release下载的。paopao-gateway-x86-64-1d874e8.iso
冷启动是指什么情况?可以再描述一下吗
冷启动是不是指其他部分都正常运作的情况下,首次打开ppgw虚拟机后,无法正常工作?还是其他部分未开启之前就启动了ppgw
在无法正常工作的情况下,进行以下测试,以便定位问题,谢谢!
1. 使用本地电脑查询被代理域名的解析结果。比如
nslookup github.com
2. 进入ppdns的环境,使用以下命令查询解析结果,比如
dig github.com @127.0.0.1 -p5303
3. 在局域网任意linux终端上尝试使用ppgw的代理端口看看是否能用,比如
curl -d"info" --socks5-hostname 192.168.2.250:1080 https://ip.03k.org
你说的两种情况,这边都有。无论是其他设备全部启动(并且openclash可正常翻墙后)以后,再启动PPGW;还是其他部分未开启之前就启动了ppgw,都会出现这个问题。
C:\Users\********>nslookup github.com
服务器: PaoPaoDNS,blog.03k.org
Address: 192.168.2.251
名称: github.com
Address: 7.0.0.9
C:\Users\********>nslookup github.com 192.168.2.253
服务器: PaoPaoDNS,blog.03k.org
Address: 192.168.2.253
名称: github.com
Address: 7.0.0.9
vmpaopaodns1:~# dig github.com @127.0.0.1 -p5303
; <<>> DiG 9.18.16 <<>> github.com @127.0.0.1 -p5303
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48418
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 0
;; QUESTION SECTION:
;github.com. IN A
;; ANSWER SECTION:
github.com. 60 IN A 20.205.243.166
;; Query time: 229 msec
;; SERVER: 127.0.0.1#5303(127.0.0.1) (UDP)
;; WHEN: Fri Jul 14 12:02:08 CST 2023
;; MSG SIZE rcvd: 55
vmpaopaodns2:~# dig github.com @127.0.0.1 -p5303
; <<>> DiG 9.18.16 <<>> github.com @127.0.0.1 -p5303
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22231
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;github.com. IN A
;; ANSWER SECTION:
github.com. 60 IN A 140.82.121.4
;; Query time: 709 msec
;; SERVER: 127.0.0.1#5303(127.0.0.1) (UDP)
;; WHEN: Fri Jul 14 12:02:30 CST 2023
;; MSG SIZE rcvd: 55
[~] # curl -d"info" --socks5-hostname 192.168.2.250:1080 https://ip.03k.org
***代理服务器IP***
SG,undefined,undefined
ASN23764/CTGNet
HTTP/1.1 TLSv1.2
curl/7.81.0
Asia/Singapore Time: 7/14/2023, 12:03:10 PM[~] #
好的,根据你的提供的描述,我测试下再回复您。
另外,在出问题时 如果直接给电脑浏览器设置代理为ppgw的1080,是可以访问网站的。切换回无代理,再访问网站就又不行了。
麻烦在无法工作的时候,再进行以下测试:
1. ping代理的域名看看是否ping通。
ping github.com
2. 跟踪被代理域名的路由(如果是linux,使用traceroute)。
tracert github.com
3. 在ppgw虚拟机上,按下回车,输入以下命令,查看nft状态。
nft list ruleset
ping不通。
ping github.com
正在 Ping github.com [7.0.0.9] 具有 32 字节的数据:
请求超时。
请求超时。
请求超时。
请求超时。
7.0.0.9 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 0,丢失 = 4 (100% 丢失),
tracert在第2跳开始就没数据了。但ikuai的静态路由应该是没问题的,我用切换mode的方式处理的时候,是没有修改过静态路由的。另外,ikuai中还设置了其他SDWAN的静态路由,tracert正常。
tracert github.com
通过最多 30 个跃点跟踪
到 github.com [7.0.0.9] 的路由:
1 <1 毫秒 <1 毫秒 <1 毫秒 192.168.2.1
2 * * * 请求超时。
3 * * * 请求超时。
4 * * * 请求超时。
5 * * * 请求超时。
6 * * * 请求超时。
7 * * * 请求超时。
8 * * * 请求超时。
9 * * * 请求超时。
10 * * * 请求超时。
11 * * * 请求超时。
12 * * * 请求超时。
13 * * * 请求超时。
14 * * * 请求超时。
15 * * * 请求超时。
16 * * * 请求超时。
17 * * * 请求超时。
18 * * * 请求超时。
19 * * * 请求超时。
20 * * * 请求超时。
21 * * * 请求超时。
22 * * * 请求超时。
23 * * * 请求超时。
24 * * * 请求超时。
25 * * * 请求超时。
26 * * * 请求超时。
27 * * * 请求超时。
28 * * * 请求超时。
29 * * * 请求超时。
30 * * * 请求超时。
跟踪完成。
tracert 192.168.11.1
通过最多 30 个跃点跟踪到 192.168.11.1 的路由
1 <1 毫秒 <1 毫秒 <1 毫秒 192.168.2.1
2 <1 毫秒 <1 毫秒 <1 毫秒 192.168.2.3
3 279 ms 50 ms 36 ms 192.168.11.1
跟踪完成。
在ppgw虚拟机上,按下回车,输入以下命令,查看nft状态。
nft list ruleset
另外一个发现,使用PPGW 1080代理访问时,web ui Conns页中的Type列显示为“Socks5(tcp)”。 在没问题的时候,不使用代理访问网站,web ui Conns页中的Type列显示为“TProxy(tcp)”
在ppgw虚拟机上,按下回车,输入以下命令,查看nft状态。
nft list ruleset
虚拟机内执行nft_tcp.sh
后看看是否正常代理。
虚拟机内执行
nft_tcp.sh
后看看是否正常代理。
执行后可以正常代理。另外,再次检查nft list ruleset,有以下输出。
此时执行以下命令,看看是否有输出。
ps | grep -v "grep" | grep "/etc/config/clash"
看起来逻辑上应该不会出问题,但在加载clash后却忽略了nft规则的添加。但我测试了socks模式也正常。你可以把ppgw的启动过程日志录制下来吗?可以使用GifCam工具
这样可以么?
嗯,看到了日志确实没有触发添加规则,有可能是虚拟机平台结果差异,我稍后编译一个iso给你测试下。
测试下这个镜像是否正常工作。 paopao-gateway-x86-64-test202307141330.zip
这个镜像工作正常
此问题在最新release中修复。https://github.com/kkkgo/PaoPaoGateWay/releases/tag/20230714-288a1db
另外对于你的网络拓扑,我可能有点好奇或者建议:
感谢你的建议。
使用subconverter等程序可以转换合并订阅。如果是基于force_forward_list来分流,GEOIP应该用不上。如果是基于非大陆IP分流,可以使用ppdns的AUTO_FORWARD功能,ppdns会自行更新IP库。关于GEOIP在ppgw中的实际作用,可以参见此链接:
https://github.com/kkkgo/PaoPaoGateWay/discussions/6#discussioncomment-6112812
使用subconverter等程序可以转换合并订阅。如果是基于force_forward_list来分流,GEOIP应该用不上。如果是基于非大陆IP分流,可以使用ppdns的AUTO_FORWARD功能,ppdns会自行更新IP库。关于GEOIP在ppgw中的实际作用,可以参见此链接: #6 (comment)
我后面试试这个方式,谢谢!
如题,冷启动后,再web ui中能看到proxies中有一个socks项,rules中也能看到Match socks。但本地电脑通过浏览器访问路由到PPGW的网站均提示ERR_CONNECTION_TIMED_OUT。若此时若修改ppgw.ini的mode为其他任意值,待PPGW读取后,再修改ppgw.ini的mode为socks5,再等PPGW读取配置后,电脑访问这些网站就OK。 在问题发生时,访问网站,PPGW的web ui Conns中看不到对应的条目,后台终端屏幕也看不到相关信息,似乎只有DNS的访问记录: 问题“解决”后,访问网站,PPGW web ui能看到对应访问记录: 请帮忙看一下是bug还是我的设置问题,谢谢!
网络拓扑如下,所有EXSI虚拟机均直通网卡 iKuai:开启web服务7890端口(ppgw.ini),已设置静态路由7.0.0.0/8的网关为192.168.2.250,DHCP服务分配的DNS为192.168.2.253与192.168.2.251 PPDNS-*:undocked(alpine虚拟机直接运行),仅修改init.sh中
if [ "$MEMSIZE" -gt 2000 ]; then
为if [ "$MEMSIZE" -gt 1500 ]; then
。debug.sh输出结果如附件。force_forward_list.txt见附件。 dnsdebug.txt force_forward_list.txt Openwrt:仅作为openclash的运行环境,未将其设置为旁路由。 PPGW:配置如附件。 ppgw.txt