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

在OpenWrt中运行XX Net失败 #13036

Closed
TGdxh opened this issue Mar 16, 2020 · 22 comments
Closed

在OpenWrt中运行XX Net失败 #13036

TGdxh opened this issue Mar 16, 2020 · 22 comments

Comments

@TGdxh
Copy link

TGdxh commented Mar 16, 2020

第一次弄这个,求教各位大佬! 我是在putty里面运行 /XX-Net/start 后出现错误
root@OpenWrt:~# /XX-Net/start
python is /usr/bin/python
XX-Net version:3.16.0
It is OpenWrt.
Traceback (most recent call last):
File "code/default/launcher/start.py", line 56, in
from xlog import getLogger
ImportError: No module named xlog

@xxnet
Copy link
Contributor

xxnet commented Mar 17, 2020 via email

@TGdxh TGdxh closed this as completed Mar 17, 2020
@TGdxh
Copy link
Author

TGdxh commented Mar 18, 2020

检查下是不是下载不完全

谢谢大佬,运行后一直显示系统空闲,这个怎么处理?
XX-Net Status:

sys-platform: mips, Linux-4.14.162-mips-with-glibc2.0
os-system: Linux
os-version: #0 SMP Thu Jan 9 16:04:40 2020
os-release: 4.14.162
os-detail: Dist:; Version:; ID:
architecture: 32bit,
browser: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36
xxnet-version: 3.16.0

python-version: 2.7.17
openssl-version: 19.1.0 TLSv1_2 h2:alpn
lan-proxy: Disable
use-ipv6: auto
gws-ip-num: total:100 ipv4:3 ipv6:1
ipv4-status: OK
ipv6-status: Fail
connected-link: new:0
worker: h1:0 h2:0
scan-ip-thread-num: 100
ip-quality: 136
is-idle: 1
proxy_state: Fail
ca_state: Fail
Appid_Working: false
Appids_Out_Of_Quota: false
Appids_Not_Exist: false
Using_Public_Appid: true

@xxnet
Copy link
Contributor

xxnet commented Mar 18, 2020 via email

@TGdxh
Copy link
Author

TGdxh commented Mar 20, 2020

简单的做法是把浏览器的代理指向路由器的ip:8086 更加高级的用法是: 1. 暂停路由器的DNS服务 这样xx-net可以监听到53端口 2. 把访问的tcp转发到xx-net处理 ./start set_iptables lan网卡名 3. 启动xxnet 这套模式还不完善,爱折腾的可以一起来折腾,所有代码可以打开脚本看

浏览器设置了还是翻不了···
000
image
XX-Net Status:

sys-platform: mips, Linux-4.14.162-mips-with-glibc2.0
os-system: Linux
os-version: #0 SMP Thu Jan 9 16:04:40 2020
os-release: 4.14.162
os-detail: Dist:; Version:; ID:
architecture: 32bit,
browser: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36
xxnet-version: 3.16.0

python-version: 2.7.17
openssl-version: 19.1.0 TLSv1_2 h2:alpn
lan-proxy: Disable
use-ipv6: auto
gws-ip-num: total:27 ipv4:0 ipv6:2
ipv4-status: OK
ipv6-status: OK
connected-link: new:0
worker: h1:0 h2:0
scan-ip-thread-num: 100
ip-quality: 1335
is-idle: 1
proxy_state: Fail
ca_state: Fail
Appid_Working: true
Appids_Out_Of_Quota: false
Appids_Not_Exist: false
Using_Public_Appid: false

@xxnet
Copy link
Contributor

xxnet commented Mar 20, 2020 via email

@TGdxh
Copy link
Author

TGdxh commented Mar 20, 2020

设置错了,你填的是配置脚本。 建议用Chrome浏览器,用代理插件进行切换 参考这里: https://github.com/XX-net/XX-Net/wiki/How-to-use

谢谢大佬,现在浏览器可以翻了。但我主要还是想让手机无缝使用,在openwrt里,关闭dns是否就是取消勾选“使用端局通告的DNS服务器”,再在“使用自定义的DNS服务器”后面填上要使用的DNS服务器?那把访问的tcp转发到xx-net处理,是否是使用openwrt里防火墙的流量规则来实现?还是说把/start set_iptables lan网卡名粘贴在自定义规则里?

@xxnet
Copy link
Contributor

xxnet commented Mar 20, 2020 via email

@TGdxh
Copy link
Author

TGdxh commented Mar 20, 2020

关闭 DNS 服务有点麻烦,手动修改 /etc/config/dhcp,前面部分可以参考下面: ------------------ config dnsmasq option domainneeded '1' option localise_queries '1' option rebind_protection '1' option rebind_localhost '1' option local '/lan/' option expandhosts '1' option authoritative '1' option readethers '1' option leasefile '/tmp/dhcp.leases' option resolvfile '/tmp/resolv.conf.auto' option localservice '1' option port '0' ------------------------- 重启dhcp模块,然后执行 netstat -naul 看看53端口还有没有被占用,没有就可以了 局域网tcp转发到xx-net处理,用下面的命令,具体你可以看脚本执行的内容 ./start set_iptables lan网卡名 本质上也是用防火墙规则来实现的。你也可以把脚本的代码拷贝出来更新到路由器里。

不好意思···,之前用代理插件的时候没关电脑上的xxnet,关了才发现浏览器用代理插件还是不能翻,
而且用netstat -atunp在putty里查询后发现没有出现192.168.123.1:8086或者8087的端口,只有192.168.123.1:8085和本机相连接。下面的只复制了一部分。

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1193/uhttpd
tcp 0 0 192.168.1.5:53 0.0.0.0:* LISTEN 2246/dnsmasq
tcp 0 0 0.0.0.0:8085 0.0.0.0:* LISTEN 2147/python
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 2246/dnsmasq
tcp 0 0 192.168.123.1:53 0.0.0.0:* LISTEN 2246/dnsmasq
tcp 0 0 192.168.123.1:22 0.0.0.0:* LISTEN 16733/dropbear
tcp 0 0 127.0.0.1:8086 0.0.0.0:* LISTEN 2147/python
tcp 0 0 127.0.0.1:8087 0.0.0.0:* LISTEN 2147/python
tcp 0 0 127.0.0.1:1080 0.0.0.0:* LISTEN 2147/python
tcp 0 0 192.168.123.1:8085 192.168.123.108:62299 ESTABLISHED 2147/python

@xxnet
Copy link
Contributor

xxnet commented Mar 20, 2020 via email

@TGdxh
Copy link
Author

TGdxh commented Mar 20, 2020

赞!可以了,那路由器本地启动脚本"nohup /XX-Net/start >/dev/null 2>&1 "中start后面应该加上
-allow_remote吗?

@xxnet
Copy link
Contributor

xxnet commented Mar 20, 2020 via email

@TGdxh
Copy link
Author

TGdxh commented Mar 20, 2020

对,或者你打开: 系统->配置-》允许远程访问控制页 下次启动就不用 -allow_remote了

这个好像不行,之前我按照18版的教程改过了,改完才能本机访问路由器ip:8085,这个时候左上角有XX-Net 3.16.0 (已允许远程访问)这个提示,允许远程访问控制页也显示打开,但还是显示系统空闲。就是下面这个。

修改 /XX-Net/data/launcher/config.yaml:
modules:{
launcher:{ allow_remote_connect:1 }

@TGdxh
Copy link
Author

TGdxh commented Mar 21, 2020

关闭 DNS 服务有点麻烦,手动修改 /etc/config/dhcp,前面部分可以参考下面: ------------------ config dnsmasq option domainneeded '1' option localise_queries '1' option rebind_protection '1' option rebind_localhost '1' option local '/lan/' option expandhosts '1' option authoritative '1' option readethers '1' option leasefile '/tmp/dhcp.leases' option resolvfile '/tmp/resolv.conf.auto' option localservice '1' option port '0' ------------------------- 重启dhcp模块,然后执行 netstat -naul 看看53端口还有没有被占用,没有就可以了 局域网tcp转发到xx-net处理,用下面的命令,具体你可以看脚本执行的内容 ./start set_iptables lan网卡名 本质上也是用防火墙规则来实现的。你也可以把脚本的代码拷贝出来更新到路由器里。


    我对比了一下,dhcp除了最后一行option port '0'没有,其他设置完全一样,我直接添加后执行 netstat -naul ,发现手机确实可以浏览器翻了,但是安卓app还是不行, 而且电脑没网,浏览器只有

通过代理插件才能访问网页,好像也不稳定··
image

@xxnet
Copy link
Contributor

xxnet commented Mar 21, 2020 via email

@deckyue
Copy link

deckyue commented Mar 23, 2020

检查下是不是下载不完全

老大能给个OpenWrt中运行XX Net图文教程吗?K2P 16M的正在学习安装。

@xxnet
Copy link
Contributor

xxnet commented Mar 24, 2020 via email

@TGdxh
Copy link
Author

TGdxh commented Mar 26, 2020

前两天把路由器刷坏了,买了个编程器,昨天才修好····又重新装了一遍xxnet,大概步骤就是:

  1. 找几个适合自己路由器的固件,纯净版比较好。装python-pyopenssl和xxnet大概快占用10m。

2.装好一个固件后 用putty连接路由器,运行
opkg update
opkg install python-pyopenssl
无法安装python-pyopenssl就换一个固件试试。直到安装成功。

3.下载xx-net到电脑上,win和linux版都下载。
把win版和linux版解压后,将win版文件夹里的python27文件夹复制到linux版解压出来的文件夹里,注意win和linux版解压出来的文件夹名相同,别覆盖了

4.运行linux版文件夹里的start.bat
其余操作步骤和电脑版一样,
电脑版设置好个人AppID,可以正常科学上网后,在xxnet的Web 控制页的系统/配置里允许远程访问控制页

5.关闭xxnet,删除之前复制进去的python27文件夹,通过WinSCP将整个linux版xx-net文件夹复制到路由器根目录下,将文件夹名改为 XX-Net

6.然后将其属性里的八进制表改为0777,将XX-Net文件夹里的start文件属性里的八进制表同样改为0777
image
image

7.在openwrt「系统-启动项-本地启动脚本」的「exit 0」前一行添加如下命令:
nohup /XX-Net/start >/dev/null 2>&1 &
image

8.然后用putty运行
opkg install coreutils-nohup
以后 XX-net 就会跟随 OpenWrt一同启动。

9.以上都完成后,可以先不重启路由器,先用putty运行
/XX-Net/start
然后在浏览器里打开http://路由器IP:8085,能打开就说明成功了,可以重启。不能打开就看putty的报错信息是什么。

10.重启路由器后,如果正常运行,后面的就和电脑版一样,方法是浏览器用代理插件SwitchyOmega 进行切换,
参考:https://github.com/XX-net/XX-Net/wiki/How-to-use

11.如果想“无缝”代理,在openwrt「系统-网络-防火墙-自定义规则」里的写入规则
./XX-Net/start set_iptables br-lan
image

其中br-lan是lan的名字
image

12.通过WinSCP手动修改 /etc/config/里的dhcp文件,在config dnsmasq的最后一行加入
option port '0'
image

13.通过WinSCP修改/XX-Net/data/launcher里的config.yaml文件
proxy: pac改为
proxy: smart_router
image

14.重启路由器即可。之前的浏览器代理插件SwitchyOmega 可以删除了。

现在存在的问题是不支持导入证书的app不能代理,苹果手机好像没网。而且电脑和安卓手机打开国内网址比较慢。网速也变慢了,测速时下载基本上比上传还慢...下载4m/s,上传4m多。路由器好像也没有占用100%,最多80多。
不知道能不能把xxnet当成节点,用openwrt里的科学上网来分流。

@xxnet
Copy link
Contributor

xxnet commented Mar 26, 2020

感谢分享,已经把资料放wiki中
https://github.com/XX-net/XX-Net/wiki/OpenWrt-Config

@xxnet
Copy link
Contributor

xxnet commented Mar 26, 2020 via email

@Axe-l
Copy link

Axe-l commented Jun 11, 2020

性能问题下一步再研究,DNS解析慢是目前已知的瓶颈。

现在问题解决吗了?准备买个路由来玩

@xxnet
Copy link
Contributor

xxnet commented Jun 12, 2020 via email

@xxnet
Copy link
Contributor

xxnet commented Jun 12, 2020 via email

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

No branches or pull requests

5 participants