fscarmen / warp-sh

WARP script is move to: https://gitlab.com/fscarmen/warp
942 stars 203 forks source link

纯v6机器 脚本终止-【结论: 原来的 nameserver 不能访问 cf 网,修改 cf dns64 ns `echo -e "nameserver 2606:4700:4700::64 nameserver 2606:4700:4700::6400" > /etc/resolv.conf`】 #85

Closed haliang0409-cmd closed 4 months ago

haliang0409-cmd commented 4 months ago

纯ipv6 ubuntu 22.04 运行脚本时提示 检测不到任何 IPv4 或 IPv6。脚本中止。 1720327157999

fscarmen commented 4 months ago
ip route get 2606:4700:d0::a29f:c001 2>/dev/null | awk '{for (i=0; i<NF; i++) if ($i=="src") {print $(i+1)}}'
ping6 -c2 -w10 2606:4700:d0::a29f:c001
curl --retry 2 -ksm5 --user-agent Mozilla https://api-ipv6.ip.sb/geoip

运行上面的指令看看。

haliang0409-cmd commented 4 months ago

经实测可以正常识别到ip,但是脚本仍无法运行。 3331

fscarmen commented 4 months ago

运行 bash -x menu.sh ,把日志发出来看看

fscarmen commented 4 months ago

看是大陆机器啊?或许 maybe 有问题了。

Jesn commented 4 months ago
ip route get 2606:4700:d0::a29f:c001 2>/dev/null | awk '{for (i=0; i<NF; i++) if ($i=="src") {print $(i+1)}}'
ping6 -c2 -w10 2606:4700:d0::a29f:c001
curl --retry 2 -ksm5 --user-agent Mozilla https://api-ipv6.ip.sb/geoip

运行上面的指令看看。

我也遇到类似的问题了

ip route get 2606:4700:d0::a29f:c001 2>/dev/null | awk '{for (i=0; i<NF; i++) if ($i=="src") {print $(i+1)}}'
ping6 -c2 -w10 2606:4700:d0::a29f:c001
curl --retry 2 -ksm5 --user-agent Mozilla https://api-ipv6.ip.sb/geoip
2001:bc8:1640:1f42:dc00:ff:fe2b:8bbd
PING 2606:4700:d0::a29f:c001(2606:4700:d0::a29f:c001) 56 data bytes
64 bytes from 2606:4700:d0::a29f:c001: icmp_seq=1 ttl=54 time=1.74 ms
64 bytes from 2606:4700:d0::a29f:c001: icmp_seq=2 ttl=54 time=1.72 ms

--- 2606:4700:d0::a29f:c001 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 1.717/1.729/1.741/0.012 ms
Jesn commented 4 months ago

运行 bash -x menu.sh ,把日志发出来看看

root@scaleway:/etc# bash -x menu.sh
+ VERSION=3.0.10
+ export DEBIAN_FRONTEND=noninteractive
+ DEBIAN_FRONTEND=noninteractive
+ GH_PROXY=https://ghproxy.lvedong.eu.org/
+ trap 'rm -f /tmp/{wireguard-go-*,best_mtu,best_endpoint,endpoint,ip}; exit' INT
+ E[0]='\n Language:\n 1. English (default) \n 2. 简体中文'
+ C[0]='\n Language:\n 1. English (default) \n 2. 简体中文'
+ E[1]='Publish warp api, you can register account, join Zero Trust, check account information and all other operations. Detailed instructions: https://warp.cloudflare.now.cc/; 2. Scripts to update the warp api.'
+ C[1]='发布 warp api,可以注册账户,加入 Zero Trust,查账户信息等所有的操作。详细使用说明: https://warp.cloudflare.now.cc/; 2. 脚本更新 warp api'
+ E[2]='The script must be run as root, you can enter sudo -i and then download and run again. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[2]='必须以root方式运行脚本,可以输入 sudo -i 后重新下载运行,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[3]='The TUN module is not loaded. You should turn it on in the control panel. Ask the supplier for more help. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[3]='没有加载 TUN 模块,请在管理后台开启或联系供应商了解如何开启,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[4]='The WARP server cannot be connected. It may be a China Mainland VPS. You can manually ping 162.159.193.10 or ping -6 2606:4700:d0::a29f:c001.You can run the script again if the connect is successful. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[4]='与 WARP 的服务器不能连接,可能是大陆 VPS,可手动 ping 162.159.193.10 或 ping -6 2606:4700:d0::a29f:c001,如能连通可再次运行脚本,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[5]='The script supports Debian, Ubuntu, CentOS, Fedora, Arch or Alpine systems only. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[5]='本脚本只支持 Debian、Ubuntu、CentOS、Fedora、Arch 或 Alpine 系统,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[6]='warp h (help)\n warp n (Get the WARP IP)\n warp o (Turn off WARP temporarily)\n warp u (Turn off and uninstall WARP interface and Socks5 Linux Client)\n warp b (Upgrade kernel, turn on BBR, change Linux system)\n warp a (Change account to Free, WARP+ or Teams)\n warp p (Getting WARP+ quota by scripts)\n warp v (Sync the latest version)\n warp r (Connect/Disconnect WARP Linux Client)\n warp 4/6 (Add WARP IPv4/IPv6 interface)\n warp d (Add WARP dualstack interface IPv4 + IPv6)\n warp c (Install WARP Linux Client and set to proxy mode)\n warp l (Install WARP Linux Client and set to WARP mode)\n warp i (Change the WARP IP to support Netflix)\n warp e (Install Iptables + dnsmasq + ipset solution)\n warp w (Install WireProxy solution)\n warp y (Connect/Disconnect WireProxy socks5)\n warp k (Switch between kernel and wireguard-go-reserved)\n warp g (Switch between warp global and non-global)\n warp s 4/6/d (Set stack proiority: IPv4 / IPv6 / VPS default)\n'
+ C[6]='warp h (帮助菜单)\n warp n (获取 WARP IP)\n warp o (临时warp开关)\n warp u (卸载 WARP 网络接口和 Socks5 Client)\n warp b (升级内核、开启BBR及DD)\n warp a (更换账户为 Free,WARP+ 或 Teams)\n warp p (刷WARP+流量)\n warp v (同步脚本至最新版本)\n warp r (WARP Linux Client 开关)\n warp 4/6 (WARP IPv4/IPv6 单栈)\n warp d (WARP 双栈)\n warp c (安装 WARP Linux Client,开启 Socks5 代理模式)\n warp l (安装 WARP Linux Client,开启 WARP 模式)\n warp i (更换支持 Netflix 的IP)\n warp e (安装 Iptables + dnsmasq + ipset 解决方案)\n warp w (安装 WireProxy 解决方案)\n warp y (WireProxy socks5 开关)\n warp k (切换 wireguard 内核 / wireguard-go-reserved)\n warp g (切换 warp 全局 / 非全局)\n warp s 4/6/d (优先级: IPv4 / IPv6 / VPS default)\n'
+ E[7]='Install dependence-list:'
+ C[7]=安装依赖列表:
+ E[8]='All dependencies already exist and do not need to be installed additionally.'
+ C[8]=所有依赖已存在,不需要额外安装
+ E[9]='Client cannot be upgraded to a Teams account.'
+ C[9]='Client 不能升级为 Teams 账户'
+ E[10]='wireguard-tools installation failed, The script is aborted. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[10]='wireguard-tools 安装失败,脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[11]='Maximum ${j} attempts to get WARP IP...'
+ C[11]='后台获取 WARP IP 中,最大尝试${j}次……'
+ E[12]='Try ${i}'
+ C[12]='第${i}次尝试'
+ E[13]='There have been more than ${j} failures. The script is aborted. Attach the above error message. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[13]='失败已超过${j}次,脚本中止,附上以上错误提示,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[14]='Got the WARP$TYPE IP successfully'
+ C[14]='已成功获取 WARP$TYPE 网络'
+ E[15]='WARP is turned off. It could be turned on again by [warp o]'
+ C[15]='已暂停 WARP,再次开启可以用 warp o'
+ E[16]='The script specifically adds WARP network interface for VPS, detailed:[https://github.com/fscarmen/warp-sh]\n Features:\n\t • Support WARP+ account. Third-party scripts are use to increase WARP+ quota or upgrade kernel.\n\t • Not only menus, but commands with option.\n\t • Support system: Ubuntu 16.04、18.04、20.04、22.04,Debian 9、10、11,CentOS 7、8、9, Alpine, Arch Linux 3.\n\t • Support architecture: AMD,ARM and s390x\n\t • Automatically select four WireGuard solutions. Performance: Kernel with WireGuard integration > Install kernel module > wireguard-go\n\t • Suppert WARP Linux client.\n\t • Output WARP status, IP region and asn\n'
+ C[16]='本项目专为 VPS 添加 warp 网络接口,详细说明: [https://github.com/fscarmen/warp-sh]\n 脚本特点:\n\t • 支持 WARP+ 账户,附带第三方刷 WARP+ 流量和升级内核 BBR 脚本\n\t • 普通用户友好的菜单,进阶者通过后缀选项快速搭建\n\t • 智能判断操作系统: Ubuntu 、Debian 、CentOS、 Alpine 和 Arch Linux,请务必选择 LTS 系统\n\t • 支持硬件结构类型: AMD、 ARM 和 s390x\n\t • 结合 Linux 版本和虚拟化方式,自动优选4个 WireGuard 方案。网络性能方面: 内核集成 WireGuard > 安装内核模块 > wireguard-go\n\t • 支持 WARP Linux Socks5 Client\n\t • 输出执行结果,提示是否使用 WARP IP ,IP 归属地和线路提供商\n'
+ E[17]=Version
+ C[17]=脚本版本
+ E[18]='New features'
+ C[18]=功能新增
+ E[19]='System infomation'
+ C[19]=系统信息
+ E[20]='Operating System'
+ C[20]=当前操作系统
+ E[21]=Kernel
+ C[21]=内核
+ E[22]=Architecture
+ C[22]=处理器架构
+ E[23]=Virtualization
+ C[23]=虚拟化
+ E[24]='Client is on'
+ C[24]='Client 已开启'
+ E[25]='Device name'
+ C[25]=设备名
+ E[26]='Curren operating system is $SYS.\\n The system lower than $SYSTEM ${MAJOR[int]} is not supported. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[26]='当前操作是 $SYS\\n 不支持 $SYSTEM ${MAJOR[int]} 以下系统,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[27]='Local Socks5'
+ C[27]='本地 Socks5'
+ E[28]='If there is a WARP+ License, please enter it, otherwise press Enter to continue:'
+ C[28]='如有 WARP+ License 请输入,没有可回车继续:'
+ E[29]='Input errors up to 5 times.The script is aborted.'
+ C[29]=输入错误达5次,脚本退出
+ E[30]='License should be 26 characters, please re-enter WARP+ License. Otherwise press Enter to continue. \(${i} times remaining\):'
+ C[30]='License 应为26位字符,请重新输入 WARP+ License,没有可回车继续\(剩余${i}次\):'
+ E[31]='The new $KEY_LICENSE is the same as the one currently in use. Does not need to be replaced.'
+ C[31]='新输入的 $KEY_LICENSE 与现使用中的一样,不需要更换。'
+ E[32]='Step 1/3: Install dependencies...'
+ C[32]='进度 1/3: 安装系统依赖……'
+ E[33]='Step 2/3: WARP is ready'
+ C[33]='进度 2/3: 已安装 WARP'
+ E[34]='Failed to change port. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[34]='更换端口不成功,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[35]='Update WARP+ account...'
+ C[35]='升级 WARP+ 账户中……'
+ E[36]='The upgrade failed, License: $LICENSE has been activated on more than 5 devices. It script will remain the same account or be switched to a free account.'
+ C[36]='升级失败,License: $LICENSE 已激活超过5台设备,将保持原账户或者转为免费账户'
+ E[37]='Checking VPS infomation...'
+ C[37]=检查环境中……
+ E[38]='Create shortcut [warp] successfully'
+ C[38]='创建快捷 warp 指令成功'
+ E[39]='Running WARP'
+ C[39]='运行 WARP'
+ E[40]='Menu choose'
+ C[40]=菜单选项
+ E[41]='Congratulations! WARP$TYPE is turned on. Spend time:$(( end - start )) seconds.\\n The script runs today: $TODAY. Total:$TOTAL'
+ C[41]='恭喜!WARP$TYPE 已开启,总耗时:$(( end - start ))秒, 脚本当天运行次数:$TODAY,累计运行次数:$TOTAL'
+ E[42]='The upgrade failed, License: $LICENSE could not update to WARP+. The script will remain the same account or be switched to a free account.'
+ C[42]='升级失败,License: $LICENSE 不能升级为 WARP+,将保持原账户或者转为免费账户。'
+ E[43]='Run again with warp [option] [lisence], such as'
+ C[43]='再次运行用 warp [option] [lisence],如'
+ E[44]='WARP installation failed. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[44]='WARP 安装失败,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[45]='WARP interface, Linux Client and Wireproxy have been completely deleted!'
+ C[45]='WARP 网络接口、 Linux Client 和 Wireproxy 已彻底删除!'
+ E[46]='Not cleaned up, please reboot and try again.'
+ C[46]='没有清除干净,请重启(reboot)后尝试再次删除'
+ E[47]='Upgrade kernel, turn on BBR, change Linux system by other authors [ylx2016],[https://github.com/ylx2016/Linux-NetSpeed]'
+ C[47]='BBR、DD脚本用的[ylx2016]的成熟作品,地址[https://github.com/ylx2016/Linux-NetSpeed],请熟知'
+ E[48]='Run script'
+ C[48]=安装脚本
+ E[49]='Return to main menu'
+ C[49]=回退主目录
+ E[50]=Choose:
+ C[50]=请选择:
+ E[51]='Please enter the correct number'
+ C[51]=请输入正确数字
+ E[52]='Please input WARP+ ID:'
+ C[52]='请输入 WARP+ ID:'
+ E[53]='WARP+ ID should be 36 characters, please re-enter \(${i} times remaining\):'
+ C[53]='WARP+ ID 应为36位字符,请重新输入 \(剩余${i}次\):'
+ E[54]='Getting the WARP+ quota by the following 3 authors:\n  • [ALIILAPRO],[https://github.com/ALIILAPRO/warp-plus-cloudflare]\n • [mixool],[https://github.com/mixool/across/tree/master/wireguard]\n   • [SoftCreatR],[https://github.com/SoftCreatR/warp-up]\n • Open the 1.1.1.1 app\n • Click on the hamburger menu button on the top-right corner\n • Navigate to: Account > Key\n Important:Refresh WARP+ quota: 三 --> Advanced --> Connection options --> Reset keys\n It is best to run script with screen.'
+ C[54]='刷 WARP+ 流量用可选择以下三位作者的成熟作品,请熟知:\n   • [ALIILAPRO],地址[https://github.com/ALIILAPRO/warp-plus-cloudflare]\n   • [mixool],地址[https://github.com/mixool/across/tree/master/wireguard]\n • [SoftCreatR],地址[https://github.com/SoftCreatR/warp-up]\n 下载地址:https://1.1.1.1/,访问和苹果外区 ID 自理\n 获取 WARP+ ID 填到下面。方法:App右上角菜单 三 --> 高级 --> 诊断 --> ID\n 重要:刷脚本后流量没有增加处理:右上角菜单 三 --> 高级 --> 连接选项 --> 重置加密密钥\n 最好配合 screen 在后台运行任务'
+ E[55]='1. Run [ALIILAPRO] script\n 2. Run [mixool] script\n 3. Run [SoftCreatR] script'
+ C[55]='1. 运行 [ALIILAPRO] 脚本\n 2. 运行 [mixool] 脚本\n 3. 运行 [SoftCreatR] 脚本'
+ E[56]='The current Netflix region is $REGION. Confirm press [y] . If you want another regions, please enter the two-digit region abbreviation. \(such as hk,sg. Default is $REGION\):'
+ C[56]='当前 Netflix 地区是:$REGION,需要解锁当前地区请按 [y], 如需其他地址请输入两位地区简写 \(如 hk ,sg,默认:$REGION\):'
+ E[57]='The target quota you want to get. The unit is GB, the default value is 10:'
+ C[57]='你希望获取的目标流量值,单位为 GB,输入数字即可,默认值为10:'
+ E[58]='Local network interface: CloudflareWARP'
+ C[58]='本地网络接口: CloudflareWARP'
+ E[59]='Cannot find the account file: /etc/wireguard/warp-account.conf, you can reinstall with the WARP+ License'
+ C[59]='找不到账户文件:/etc/wireguard/warp-account.conf,可以卸载后重装,输入 WARP+ License'
+ E[60]='Cannot find the configuration file: /etc/wireguard/warp.conf, you can reinstall with the WARP+ License'
+ C[60]='找不到配置文件: /etc/wireguard/warp.conf,可以卸载后重装,输入 WARP+ License'
+ E[61]='Please Input WARP+ license:'
+ C[61]='请输入WARP+ License:'
+ E[62]='Successfully change to a WARP$TYPE account'
+ C[62]='已变更为 WARP$TYPE 账户'
+ E[63]='WARP+ quota'
+ C[63]=剩余流量
+ E[64]='Successfully synchronized the latest version'
+ C[64]=成功!已同步最新脚本,版本号
+ E[65]='Upgrade failed. Feedback:[https://github.com/fscarmen/warp-sh/issues]'
+ C[65]='升级失败,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[66]='Add WARP IPv4 interface to ${NATIVE[n]} VPS \(bash menu.sh 4\)'
+ C[66]='为 ${NATIVE[n]} 添加 WARP IPv4 网络接口 \(bash menu.sh 4\)'
+ E[67]='Add WARP IPv6 interface to ${NATIVE[n]} VPS \(bash menu.sh 6\)'
+ C[67]='为 ${NATIVE[n]} 添加 WARP IPv6 网络接口 \(bash menu.sh 6\)'
+ E[68]='Add WARP dualstack interface to ${NATIVE[n]} VPS \(bash menu.sh d\)'
+ C[68]='为 ${NATIVE[n]} 添加 WARP 双栈网络接口 \(bash menu.sh d\)'
+ E[69]='Native dualstack'
+ C[69]=原生双栈
+ E[70]='WARP dualstack'
+ C[70]='WARP 双栈'
+ E[71]='Turn on WARP (warp o)'
+ C[71]='打开 WARP (warp o)'
+ E[72]='Turn off, uninstall WARP interface, Linux Client and WireProxy (warp u)'
+ C[72]='永久关闭 WARP 网络接口,并删除 WARP、 Linux Client 和 WireProxy (warp u)'
+ E[73]='Upgrade kernel, turn on BBR, change Linux system (warp b)'
+ C[73]='升级内核、安装BBR、DD脚本 (warp b)'
+ E[74]='Getting WARP+ quota by scripts (warp p)'
+ C[74]='刷 WARP+ 流量 (warp p)'
+ E[75]='Sync the latest version (warp v)'
+ C[75]='同步最新版本 (warp v)'
+ E[76]=Exit
+ C[76]=退出脚本
+ E[77]='Turn off WARP (warp o)'
+ C[77]='暂时关闭 WARP (warp o)'
+ E[78]='Change the WARP account type (warp a)'
+ C[78]='变更 WARP 账户 (warp a)'
+ E[79]='Do you uninstall the following dependencies \(if any\)? Please note that this will potentially prevent other programs that are using the dependency from working properly.\\n\\n $UNINSTALL_DEPENDENCIES_LIST'
+ C[79]='是否卸载以下依赖\(如有\)?请注意,这将有可能使其他正在使用该依赖的程序不能正常工作\\n\\n $UNINSTALL_DEPENDENCIES_LIST'
+ E[80]='Professional one-click script for WARP to unblock streaming media (Supports multi-platform, multi-mode and TG push)'
+ C[80]='WARP 解锁 Netflix 等流媒体专业一键(支持多平台、多方式和 TG 通知)'
+ E[81]='Step 3/3: Searching for the best MTU value and endpoint address are ready.'
+ C[81]='进度 3/3: 寻找 MTU 最优值和优选 endpoint 地址已完成'
+ E[82]='Install CloudFlare Client and set mode to Proxy (bash menu.sh c)'
+ C[82]='安装 CloudFlare Client 并设置为 Proxy 模式 (bash menu.sh c)'
+ E[83]='Step 1/3: Installing WARP Client...'
+ C[83]='进度 1/3: 安装 Client……'
+ E[84]='Step 2/3: Setting Client Mode'
+ C[84]='进度 2/3: 设置 Client 模式'
+ E[85]='Client was installed.\n connect/disconnect by [warp r].\n uninstall by [warp u]'
+ C[85]='Linux Client 已安装\n 连接/断开: warp r\n 卸载: warp u'
+ E[86]='Client is working. Socks5 proxy listening on: $(ss -nltp | grep -E '\''warp|wireproxy'\'' | awk '\''{print $4}'\'')'
+ C[86]='Linux Client 正常运行中。 Socks5 代理监听:$(ss -nltp | grep -E '\''warp|wireproxy'\'' | awk '\''{print $4}'\'')'
+ E[87]='Fail to establish Socks5 proxy. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[87]='创建 Socks5 代理失败,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[88]='Connect the client (warp r)'
+ C[88]='连接 Client (warp r)'
+ E[89]='Disconnect the client (warp r)'
+ C[89]='断开 Client (warp r)'
+ E[90]='Client is connected'
+ C[90]='Client 已连接'
+ E[91]='Client is disconnected. It could be connect again by [warp r]'
+ C[91]='已断开 Client,再次连接可以用 warp r'
+ E[92]='(!!! Already installed, do not select.)'
+ C[92]='(!!! 已安装,请勿选择)'
+ E[93]='Client is not installed.'
+ C[93]='Client 未安装'
+ E[94]='Congratulations! WARP$CLIENT_AC Linux Client is working. Spend time:$(( end - start )) seconds.\\n The script runs on today: $TODAY. Total:$TOTAL'
+ C[94]='恭喜!WARP$CLIENT_AC Linux Client 工作中, 总耗时:$(( end - start ))秒, 脚本当天运行次数:$TODAY,累计运行次数:$TOTAL'
+ E[95]='The account type is Teams and does not support changing IP\n 1. Change to free (default)\n 2. Change to plus\n 3. Quit'
+ C[95]='账户类型为 Teams,不支持更换 IP\n 1. 更换为 free (默认)\n 2. 更换为 plus\n 3. 退出'
+ E[96]='Client connecting failure. It may be a CloudFlare IPv4.'
+ C[96]='Client 连接失败,可能是 CloudFlare IPv4.'
+ E[97]='IPv$PRIO priority'
+ C[97]='IPv$PRIO 优先'
+ E[98]='Uninstall Wireproxy was complete.'
+ C[98]='Wireproxy 卸载成功'
+ E[99]='WireProxy is connected'
+ C[99]='WireProxy 已连接'
+ E[100]='License should be 26 characters, please re-enter WARP+ License. Otherwise press Enter to continue. \(${i} times remaining\): '
+ C[100]='License 应为26位字符,请重新输入 WARP+ License \(剩余${i}次\): '
+ E[101]='Client support amd64 and arm64 only. Curren architecture $ARCHITECTURE. Official Support List: [https://pkg.cloudflareclient.com/packages/cloudflare-warp]. The script is aborted. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[101]='Client 只支持 amd64 和 arm64 架构,当前架构 $ARCHITECTURE,官方支持列表: [https://pkg.cloudflareclient.com/packages/cloudflare-warp]。脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[102]='Please customize the WARP+ device name \(Default is $(hostname)\):'
+ C[102]='请自定义 WARP+ 设备名 \(默认为 $(hostname)\):'
+ E[103]='Port $PORT is in use. Please input another Port\(${i} times remaining\):'
+ C[103]='$PORT 端口占用中,请使用另一端口\(剩余${i}次\):'
+ E[104]='Please customize the Client port (1000-65535. Default to 40000 if it is blank):'
+ C[104]='请自定义 Client 端口号 (1000-65535,如果不输入,会默认40000):'
+ E[105]='Please choose the priority:\n 1. IPv4\n 2. IPv6\n 3. Use initial settings (default)'
+ C[105]='请选择优先级别:\n 1. IPv4\n 2. IPv6\n 3. 使用 VPS 初始设置 (默认)'
+ E[106]='Shared free accounts cannot be upgraded to WARP+ accounts.'
+ C[106]='共享免费账户不能升级为 WARP+ 账户'
+ E[107]='Failed registration, using a preset free account.'
+ C[107]=注册失败,使用预设的免费账户
+ E[108]='\n 1. WARP Linux Client IP\n 2. WARP WARP IP ( Only IPv6 can be brushed when WARP and Client exist at the same time )\n'
+ C[108]='\n 1. WARP Linux Client IP\n 2. WARP WARP IP ( WARP 和 Client 并存时只能刷 IPv6)\n'
+ E[109]='Socks5 Proxy Client is working now. WARP IPv4 and dualstack interface could not be switch to. The script is aborted. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[109]='Socks5 代理正在运行中,不能转为 WARP IPv4 或者双栈网络接口,脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[110]='Socks5 Proxy Client is working now. WARP IPv4 and dualstack interface could not be installed. The script is aborted. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[110]='Socks5 代理正在运行中,WARP IPv4 或者双栈网络接口不能安装,脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[111]='Port must be 1000-65535. Please re-input\(${i} times remaining\):'
+ C[111]='端口必须为 1000-65535,请重新输入\(剩余${i}次\):'
+ E[112]='Client is not installed.'
+ C[112]='Client 未安装'
+ E[113]='Client is installed. Disconnected.'
+ C[113]='Client 已安装, 断开状态'
+ E[114]='WARP$TYPE Interface is on'
+ C[114]='WARP$TYPE 网络接口已开启'
+ E[115]='WARP Interface is on'
+ C[115]='WARP 网络接口已开启'
+ E[116]='WARP Interface is off'
+ C[116]='WARP 网络接口未开启'
+ E[117]='Uninstall WARP Interface was complete.'
+ C[117]='WARP 网络接口卸载成功'
+ E[118]='Uninstall WARP Interface was fail.'
+ C[118]='WARP 网络接口卸载失败'
+ E[119]='Uninstall Socks5 Proxy Client was complete.'
+ C[119]='Socks5 Proxy Client 卸载成功'
+ E[120]='Uninstall Socks5 Proxy Client was fail.'
+ C[120]='Socks5 Proxy Client 卸载失败'
+ E[121]='Changing Netflix IP is adapted from other authors [luoxue-bot],[https://github.com/luoxue-bot/warp_auto_change_ip]'
+ C[121]='更换支持 Netflix IP 改编自 [luoxue-bot] 的成熟作品,地址[https://github.com/luoxue-bot/warp_auto_change_ip],请熟知'
+ E[122]='Port change to $PORT succeeded.'
+ C[122]='端口成功更换至 $PORT'
+ E[123]='Change the WARP IP to support Netflix (warp i)'
+ C[123]='更换支持 Netflix 的 IP (warp i)'
+ E[124]='1. Brush WARP IPv4 (default)\n 2. Brush WARP IPv6'
+ C[124]='1. 刷 WARP IPv4 (默认)\n 2. 刷 WARP IPv6'
+ E[125]='$(date +'\''%F %T'\'') Region: $REGION Done. IPv$NF: $WAN  $COUNTRY  $ASNORG. Retest after 1 hour. Brush ip runing time:$DAY days $HOUR hours $MIN minutes $SEC seconds'
+ C[125]='$(date +'\''%F %T'\'') 区域 $REGION 解锁成功,IPv$NF: $WAN  $COUNTRY  $ASNORG,1 小时后重新测试,刷 IP 运行时长: $DAY 天 $HOUR 时 $MIN 分 $SEC 秒'
+ E[126]='$(date +'\''%F %T'\'') Try ${i}. Failed. IPv$NF: $WAN  $COUNTRY  $ASNORG. Retry after ${j} seconds. Brush ip runing time:$DAY days $HOUR hours $MIN minutes $SEC seconds'
+ C[126]='$(date +'\''%F %T'\'') 尝试第${i}次,解锁失败,IPv$NF: $WAN  $COUNTRY  $ASNORG,${j}秒后重新测试,刷 IP 运行时长: $DAY 天 $HOUR 时 $MIN 分 $SEC 秒'
+ E[127]='1. with URL file\n 2. with token (Easily available at https://web--public--warp-team-api--coia-mfs4.code.run)\n 3. manual input private key, IPv6 and Client id\n 4. share teams account (default)'
+ C[127]='1. 通过在线文件\n 2. 使用 token (可通过 https://web--public--warp-team-api--coia-mfs4.code.run 轻松获取)\n 3. 手动输入 private key, IPv6 和 Client id\n 4. 共享 teams 账户 (默认)'
+ E[128]='Token has expired, please re-enter:'
+ C[128]='Token 已超时失效,请重新输入:'
+ E[129]='The current Teams account is unavailable, automatically switch back to the free account'
+ C[129]='当前 Teams 账户不可用,自动切换回免费账户'
+ E[130]='Please confirm\\n Private key\\t: $PRIVATEKEY ${MATCH[0]}\\n Address IPv6\\t: $ADDRESS6/128 ${MATCH[1]}\\n Client id\\t: $CLIENT_ID ${MATCH[2]}'
+ C[130]='请确认Teams 信息\\n Private key\\t: $PRIVATEKEY ${MATCH[0]}\\n Address IPv6\\t: $ADDRESS6/128 ${MATCH[1]}\\n Client id\\t: $CLIENT_ID ${MATCH[2]}'
+ E[131]='comfirm please enter [y] , and other keys to use free account:'
+ C[131]='确认请按 [y],其他按键则使用免费账户:'
+ E[132]='Is there a WARP+ or Teams account?\n 1. Use free account (default)\n 2. WARP+\n 3. Teams'
+ C[132]='如有 WARP+ 或 Teams 账户请选择\n 1. 使用免费账户 (默认)\n 2. WARP+\n 3. Teams'
+ E[133]='Device name: $(grep -s '\''Device name'\'' /etc/wireguard/info.log | awk '\''{ print $NF }'\'')\\n Quota: $QUOTA'
+ C[133]='设备名: $(grep -s '\''Device name'\'' /etc/wireguard/info.log | awk '\''{ print $NF }'\'')\\n 剩余流量: $QUOTA'
+ E[134]='Curren architecture $(uname -m) is not supported. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[134]='当前架构 $(uname -m) 暂不支持,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[135]='( match √ )'
+ C[135]='( 符合 √ )'
+ E[136]='( mismatch X )'
+ C[136]='( 不符合 X )'
+ E[137]='Cannot find the configuration file: /etc/wireguard/warp.conf. You should install WARP first'
+ C[137]='找不到配置文件 /etc/wireguard/warp.conf,请先安装 WARP'
+ E[138]='Install iptable + dnsmasq + ipset. Let WARP only take over the streaming media traffic (Not available for ipv6 only) (bash menu.sh e)'
+ C[138]='安装 iptable + dnsmasq + ipset,让 WARP IPv4 only 接管流媒体流量 (不适用于 IPv6 only VPS) (bash menu.sh e)'
+ E[139]='Through Iptable + dnsmasq + ipset, minimize the realization of media unblocking such as chatGPT, Netflix, WARP IPv4 only takes over the streaming media traffic,adapted from the mature works of [Anemone],[https://github.com/acacia233/Project-WARP-Unlock]'
+ C[139]='通过 Iptable + dnsmasq + ipset,最小化实现 chatGPT,Netflix 等媒体解锁,WARP IPv4 只接管流媒体流量,改编自 [Anemone] 的成熟作品,地址[https://github.com/acacia233/Project-WARP-Unlock],请熟知'
+ E[140]='Socks5 Proxy Client on IPv4 VPS is working now. WARP IPv6 interface could not be installed. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[140]='IPv4 only VPS,并且 Socks5 代理正在运行中,不能安装 WARP IPv6 网络接口,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[141]='Switch ${WARP_BEFORE[m]} to ${WARP_AFTER1[m]} ${SHORTCUT1[m]}'
+ C[141]='${WARP_BEFORE[m]} 转为 ${WARP_AFTER1[m]} ${SHORTCUT1[m]}'
+ E[142]='Switch ${WARP_BEFORE[m]} to ${WARP_AFTER2[m]} ${SHORTCUT2[m]}'
+ C[142]='${WARP_BEFORE[m]} 转为 ${WARP_AFTER2[m]} ${SHORTCUT2[m]}'
+ E[143]='Change Client or WireProxy port'
+ C[143]='更改 Client 或 WireProxy 端口'
+ E[144]='Install WARP IPv6 interface'
+ C[144]='安装 WARP IPv6 网络接口'
+ E[145]='Client is only supported on CentOS 8 and above. Official Support List: [https://pkg.cloudflareclient.com]. The script is aborted. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[145]='Client 只支持 CentOS 8 或以上系统,官方支持列表: [https://pkg.cloudflareclient.com]。脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[146]='Cannot switch to the same form as the current one.'
+ C[146]=不能切换为当前一样的形态
+ E[147]='Not available for IPv6 only VPS'
+ C[147]='IPv6 only VPS 不能使用此方案'
+ E[148]='Install wireproxy. Wireguard client that exposes itself as a socks5 proxy or tunnels (bash menu.sh w)'
+ C[148]='安装 wireproxy,让 WARP 在本地创建一个 socks5 代理 (bash menu.sh w)'
+ E[149]='Congratulations! Wireproxy is working. Spend time:$(( end - start )) seconds.\\n The script runs on today: $TODAY. Total:$TOTAL'
+ C[149]='恭喜!Wireproxy 工作中, 总耗时:$(( end - start ))秒, 脚本当天运行次数:$TODAY,累计运行次数:$TOTAL'
+ E[150]='WARP, WARP Linux Client, WireProxy hasn'\''t been installed yet. The script is aborted.\n'
+ C[150]='WARP, WARP Linux Client, WireProxy 均未安装,脚本退出\n'
+ E[151]='1. WARP Linux Client account\n 2. WireProxy account'
+ C[151]='1. WARP Linux Client 账户\n 2. WireProxy 账户'
+ E[152]='1. WARP account\n 2. WireProxy account'
+ C[152]='1. WARP 账户\n 2. WireProxy 账户'
+ E[153]='1. WARP account\n 2. WARP Linux Client account'
+ C[153]='1. WARP 账户\n 2. WARP Linux Client 账户'
+ E[154]='1. WARP account\n 2. WARP Linux Client account\n 3. WireProxy account'
+ C[154]='1. WARP 账户\n 2. WARP Linux Client 账户\n 3. WireProxy 账户'
+ E[155]='WARP has not been installed yet.'
+ C[155]='WARP 还未安装'
+ E[156]='(!!! Only supports amd64 and arm64, do not select.)'
+ C[156]='(!!! 只支持 amd64 和 arm64,请勿选择)'
+ E[157]='WireProxy has not been installed yet.'
+ C[157]='WireProxy 还未安装'
+ E[158]='WireProxy is disconnected. It could be connect again by [warp y]'
+ C[158]='已断开 Wireproxy,再次连接可以用 warp y'
+ E[159]='WireProxy is on'
+ C[159]='WireProxy 已开启'
+ E[160]='WireProxy is not installed.'
+ C[160]='WireProxy 未安装'
+ E[161]='WireProxy is installed and disconnected'
+ C[161]='WireProxy 已安装,状态为断开连接'
+ E[162]='Token is invalid, please re-enter:'
+ C[162]='Token 无效,请重新输入:'
+ E[163]='Connect the Wireproxy (warp y)'
+ C[163]='连接 Wireproxy (warp y)'
+ E[164]='Disconnect the Wireproxy (warp y)'
+ C[164]='断开 Wireproxy (warp y)'
+ E[165]='WireProxy Solution. A wireguard client that exposes itself as a socks5 proxy or tunnels. Adapted from the mature works of [pufferffish],[https://github.com/pufferffish/wireproxy]'
+ C[165]='WireProxy,让 WARP 在本地建议一个 socks5 代理。改编自 [pufferffish] 的成熟作品,地址[https://github.com/pufferffish/wireproxy],请熟知'
+ E[166]='WireProxy was installed.\n connect/disconnect by [warp y]\n uninstall by [warp u]'
+ C[166]='WireProxy 已安装\n 连接/断开: warp y\n 卸载: warp u'
+ E[167]='WARP iptable was installed.\n connect/disconnect by [warp o]\n uninstall by [warp u]'
+ C[167]='WARP iptable 已安装\n 连接/断开: warp o\n 卸载: warp u'
+ E[168]='Install CloudFlare Client and set mode to WARP (bash menu.sh l)'
+ C[168]='安装 CloudFlare Client 并设置为 WARP 模式 (bash menu.sh l)'
+ E[169]='Invalid license. It will remain the same account or be switched to a free account.'
+ C[169]='License 无效,将保持原账户或者转为免费账户'
+ E[170]='Confirm all uninstallation please press [y], other keys do not uninstall by default:'
+ C[170]='确认全部卸载请按 [y],其他键默认不卸载:'
+ E[171]='Uninstall dependencies were complete.'
+ C[171]=依赖卸载成功
+ E[172]='No suitable solution was found for modifying the warp configuration file warp.conf and the script aborted. When you see this message, please send feedback on the bug to:[https://github.com/fscarmen/warp-sh/issues]'
+ C[172]='没有找到适合的方案用于修改 warp 配置文件 warp.conf,脚本中止。当你看到此信息,请把该 bug 反馈至:[https://github.com/fscarmen/warp-sh/issues]'
+ E[173]='Current account type is: WARP $ACCOUNT_TYPE\\n $PLUS_QUOTA\\n $CHANGE_TYPE'
+ C[173]='当前账户类型是: WARP $ACCOUNT_TYPE\\n $PLUS_QUOTA\\n $CHANGE_TYPE'
+ E[174]='1. Continue using the free account without changing.\n 2. Change to WARP+ account.\n 3. Change to Teams account.'
+ C[174]='1. 继续使用 free 账户,不变更\n 2. 变更为 WARP+ 账户\n 3. 变更为 Teams 账户'
+ E[175]='1. Change to free account.\n 2. Change to WARP+ account.\n 3. Change to another WARP Teams account.'
+ C[175]='1. 变更为 free 账户\n 2. 变更为 WARP+ 账户\n 3. 更换为另一个 Teams 账户'
+ E[176]='1. Change to free account.\n 2. Change to another WARP+ account.\n 3. Change to Teams account.'
+ C[176]='1. 变更为 free 账户\n 2. 变更为另一个 WARP+ 账户\n 3. 变更为 Teams 账户'
+ E[177]='1. Continue using the free account without changing.\n 2. Change to WARP+ account.'
+ C[177]='1. 继续使用 free 账户,不变更\n 2. 变更为 WARP+ 账户'
+ E[178]='1. Change to free account.\n 2. Change to another WARP+ account.'
+ C[178]='1. 变更为 free 账户\n 2. 变更为另一个 WARP+ 账户'
+ E[179]='Can only be run using $KERNEL_OR_WIREGUARD_GO.'
+ C[179]='只能使用 $KERNEL_OR_WIREGUARD_GO 运行'
+ E[180]='Install using:\n 1. wireguard kernel (default)\n 2. wireguard-go with reserved'
+ C[180]='请选择 wireguard 方式:\n 1. wireguard 内核 (默认)\n 2. wireguard-go with reserved'
+ E[181]='${WIREGUARD_BEFORE} ---\> ${WIREGUARD_AFTER}. Confirm press [y] :'
+ C[181]='${WIREGUARD_BEFORE} ---\> ${WIREGUARD_AFTER}, 确认请按 [y] :'
+ E[182]='Working mode:\n 1. Global (default)\n 2. Non-global'
+ C[182]='工作模式:\n 1. 全局 (默认)\n 2. 非全局'
+ E[183]='${MODE_BEFORE} ---\> ${MODE_AFTER}, Confirm press [y] :'
+ C[183]='${MODE_BEFORE} ---\> ${MODE_AFTER}, 确认请按 [y] :'
+ E[184]=Global
+ C[184]=全局
+ E[185]=Non-global
+ C[185]=非全局
+ E[186]='Working mode: $GLOBAL_OR_NOT'
+ C[186]='工作模式: $GLOBAL_OR_NOT'
+ E[187]='Failed to change to $ACCOUNT_CHANGE_FAILED account, automatically switch back to the original account.'
+ C[187]='更换到 $ACCOUNT_CHANGE_FAILED 账户失败,自动切换回原来的账户'
+ E[188]='All endpoints of WARP cannot be connected. Ask the supplier for more help. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[188]='WARP 的所有的 endpoint 均不能连通,有可能 UDP 被限制了,可联系供应商了解如何开启,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[189]='Cannot detect any IPv4 or IPv6. The script is aborted. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[189]='检测不到任何 IPv4 或 IPv6。脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[190]='The configuration file warp.conf cannot be found. The script is aborted. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[190]='找不到配置文件 warp.conf,脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ E[191]='Current operating system is: $SYSTEM, Linux Client only supports Ubuntu, Debian and CentOS. The script is aborted. Feedback: [https://github.com/fscarmen/warp-sh/issues]'
+ C[191]='当前操作系统是: $SYSTEM。 Linux Client 只支持 Ubuntu, Debian 和 CentOS,脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ '[' '' '!=' '[option]' ']'
+ OPTION=
+ '[' '' '!=' '[lisence]' ']'
+ case "$OPTION" in
+ NAME=
+ check_cdn
+ '[' -n https://ghproxy.lvedong.eu.org/ ']'
+ wget --server-response --quiet --output-document=/dev/null --no-check-certificate --tries=2 --timeout=3 https://raw.githubusercontent.com/fscarmen/warp-sh/main/README.md
+ statistics_of_run-times
++ grep -m1 -oE '[0-9]+[ ]+/[ ]+[0-9]+'
++ curl --retry 2 -ksm2 https://hit.forvps.gq/https://cdn.jsdelivr.net/gh/fscarmen/warp/menu.sh
+ local COUNT=
++ awk -F ' ' '{print $1}'
+ TODAY=
++ awk -F ' ' '{print $3}'
+ TOTAL=
+ select_language
++ grep -iEm1 'UTF-8|utf8'
++ locale -a
+ UTF8_LOCALE=C.UTF-8
+ '[' -n C.UTF-8 ']'
+ export LC_ALL=C.UTF-8 LANG=C.UTF-8 LANGUAGE=C.UTF-8
+ LC_ALL=C.UTF-8
+ LANG=C.UTF-8
+ LANGUAGE=C.UTF-8
+ '[' -s /etc/wireguard/language ']'
+ L=E
+ [[ -z '' ]]
++ text 0
++ grep -q '\$'
++ eval echo '${E[0]}'
+++ echo '\n' 'Language:\n' 1. English '(default)' '\n' 2. 简体中文
+ hint ' \n Language:\n 1. English (default) \n 2. 简体中文 \n'
+ echo -e '\033[33m\033[01m \n Language:\n 1. English (default) \n 2. 简体中文 \n\033[0m'

 Language:
 1. English (default)
 2. 简体中文

++ text 50
++ grep -q '\$'
++ eval echo '${E[50]}'
+++ echo Choose:
+ reading ' Choose: ' LANGUAGE
++ info ' Choose: '
++ echo -e '\033[32m\033[01m Choose: \033[0m'
+ read -rp ' Choose: ' LANGUAGE
Jesn commented 4 months ago

运行 bash -x menu.sh ,把日志发出来看看

Choose: 2
+ '[' 2 = 2 ']'
+ L=C
+ check_operating_system
+ '[' -s /etc/os-release ']'
++ cut -d '"' -f2
++ grep -i pretty_name /etc/os-release
+ SYS='Debian GNU/Linux 11 (bullseye)'
+ REGEX=("debian" "ubuntu" "centos|red hat|kernel|alma|rocky" "alpine" "arch linux" "fedora")
+ RELEASE=("Debian" "Ubuntu" "CentOS" "Alpine" "Arch" "Fedora")
+ EXCLUDE=("---")
+ MAJOR=("9" "16" "7" "" "" "37")
+ PACKAGE_UPDATE=("apt -y update" "apt -y update" "yum -y update --skip-broken" "apk update -f" "pacman -Sy" "dnf -y update")
+ PACKAGE_INSTALL=("apt -y install" "apt -y install" "yum -y install" "apk add -f" "pacman -S --noconfirm" "dnf -y install")
+ PACKAGE_UNINSTALL=("apt -y autoremove" "apt -y autoremove" "yum -y autoremove" "apk del -f" "pacman -Rcnsu --noconfirm" "dnf -y autoremove")
+ SYSTEMCTL_START=("systemctl start wg-quick@warp" "systemctl start wg-quick@warp" "systemctl start wg-quick@warp" "wg-quick up warp" "systemctl start wg-quick@warp" "systemctl start wg-quick@warp")
+ SYSTEMCTL_RESTART=("systemctl restart wg-quick@warp" "systemctl restart wg-quick@warp" "systemctl restart wg-quick@warp" "alpine_warp_restart" "systemctl restart wg-quick@warp" "systemctl restart wg-quick@warp")
+ SYSTEMCTL_ENABLE=("systemctl enable --now wg-quick@warp" "systemctl enable --now wg-quick@warp" "systemctl enable --now wg-quick@warp" "alpine_warp_enable" "systemctl enable --now wg-quick@warp" "systemctl enable --now wg-quick@warp")
+ for int in "${!REGEX[@]}"
+ [[ debian gnu/linux 11 (bullseye) =~ debian ]]
+ SYSTEM=Debian
+ break
+ '[' -z Debian ']'
++ cut -d. -f1
++ sed 's/[^0-9.]//g'
+ MAJOR_VERSION=11
+ for ex in "${EXCLUDE[@]}"
+ [[ ! debian gnu/linux 11 (bullseye) =~ --- ]]
+ [[ 11 -lt 9 ]]
+ case "$OPTION" in
+ check_root
++ id -u
+ '[' 0 '!=' 0 ']'
+ case "$OPTION" in
+ check_dependencies
+ '[' Debian = Alpine ']'
+ DEPS_CHECK=("ping" "wget" "curl" "systemctl" "ip" "python3")
+ DEPS_INSTALL=("iputils-ping" "wget" "curl" "systemctl" "iproute2" "python3")
+ for g in "${!DEPS_CHECK[@]}"
++ type -p ping
+ '[' '!' -x /usr/bin/ping ']'
+ for g in "${!DEPS_CHECK[@]}"
++ type -p wget
+ '[' '!' -x /usr/bin/wget ']'
+ for g in "${!DEPS_CHECK[@]}"
++ type -p curl
+ '[' '!' -x /usr/bin/curl ']'
+ for g in "${!DEPS_CHECK[@]}"
++ type -p systemctl
+ '[' '!' -x /usr/bin/systemctl ']'
+ for g in "${!DEPS_CHECK[@]}"
++ type -p ip
+ '[' '!' -x /usr/sbin/ip ']'
+ for g in "${!DEPS_CHECK[@]}"
++ type -p python3
+ '[' '!' -x /usr/bin/python3 ']'
+ '[' 0 -ge 1 ']'
++ text 8
++ grep -q '\$'
++ eval echo '${C[8]}'
+++ echo 所有依赖已存在,不需要额外安装
+ info '\n 所有依赖已存在,不需要额外安装 \n'
+ echo -e '\033[32m\033[01m\n 所有依赖已存在,不需要额外安装 \n\033[0m'

 所有依赖已存在,不需要额外安装

+ PING6='ping -6'
++ type -p ping6
+ '[' -x /usr/bin/ping6 ']'
+ PING6=ping6
+ check_virt Debian
+ '[' Debian = Alpine ']'
++ type -p systemd-detect-virt
+ '[' /usr/bin/systemd-detect-virt ']'
++ systemd-detect-virt
+ VIRT=kvm
+ [[ -z kvm ]]
+ check_system_info
++ text 37
++ grep -q '\$'
++ eval echo '${C[37]}'
+++ echo 检查环境中……
+ info ' 检查环境中…… '
+ echo -e '\033[32m\033[01m 检查环境中…… \033[0m'
 检查环境中……
+ '[' '!' -e /sys/module/wireguard ']'
+ KERNEL_ENABLE=1
++ cat /dev/net/tun
+ TUN='cat: /dev/net/tun: File descriptor in bad state'
+ [[ cat: /dev/net/tun: File descriptor in bad state =~ in bad state|处于错误状态 ]]
+ WIREGUARD_GO_ENABLE=1
+ IPV4=0
+ IPV6=0
++ awk '{for (i=0; i<NF; i++) if ($i=="src") {print $(i+1)}}'
++ ip route get 192.168.193.10
+ LAN4=
++ awk '{for (i=0; i<NF; i++) if ($i=="src") {print $(i+1)}}'
++ ip route get 2606:4700:d0::a29f:c001
+ LAN6=2001:bc8:1640:1f42:dc00:ff:fe2b:8bbd
++ awk '-F: ' '{print $2}'
++ ip link show
+ [[ lo

ens2 =~ warp ]]
+ [[ 2001:bc8:1640:1f42:dc00:ff:fe2b:8bbd != \:\:\1 ]]
+ [[ 2001:bc8:1640:1f42:dc00:ff:fe2b:8bbd =~ ^[a-f0-9:]+$ ]]
+ INET6=1
+ ping6 -c2 -w10 2606:4700:d0::a29f:c001
+ IPV6=1
+ STACK=-6
+ ip_case 6 warp
+ local CHECK_46=6
+ '[' -n warp ']'
+ local CHECK_TYPE=warp
+ '[' '' = non-global ']'
+ '[' warp = warp ']'
+ case "$CHECK_46" in
+ fetch_6
+ unset IP_RESULT6 COUNTRY6 ASNORG6 TRACE6 IS_UNINSTALL
+ local IS_UNINSTALL=
++ ip_info 6 '' ''
++ local CHECK_46=6
++ [[ '' =~ ^[0-9]+$ ]]
++ [[ '' =~ ^[[:alnum:]]+$ ]]
++ local IS_UNINSTALL=
++ '[' C = C ']'
++ IS_CHINESE='?lang=zh-CN'
++ '[' 6 = 6 ']'
++ CHOOSE_IP_API=https://api-ipv6.ip.sb/geoip
+++ awk -F = '/^warp=/{print $NF}'
+++ curl --retry 2 -ksm5 https://www.cloudflare.com/cdn-cgi/trace
++ IP_TRACE=
++ '[' -n '' ']'
++ echo -e 'trace=@\nip=@\ncountry=@\nasnorg=\n'
+ local 'IP_RESULT6=trace=@
ip=@
country=@
asnorg='
++ expr 'trace=@
ip=@
country=@
asnorg=' : '.*trace=\([^@]*\).*'
+ TRACE6=
++ expr 'trace=@
ip=@
country=@
asnorg=' : '.*ip=\([^@]*\).*'
+ WAN6=
++ expr 'trace=@
ip=@
country=@
asnorg=' : '.*country=\([^@]*\).*'
+ COUNTRY6=
++ expr 'trace=@
ip=@
country=@
asnorg=' : '.*asnorg=\([^@]*\).*'
+ ASNORG6=
+ [[ '' =~ ^([0-9]{1,3}\.){3} ]]
+ [[ '' =~ on|plus ]]
+ PLAN=1
+ case $(uname -m) in
++ uname -m
+ ARCHITECTURE=amd64
+ CLIENT=0
++ type -p warp-cli
+ '[' -x '' ']'
+ WIREPROXY=0
++ type -p wireproxy
+ '[' -x '' ']'
+ menu_setting
+ [[ 0 -gt 1 ]]
+ [[ 0 -gt 0 ]]
+ check_stack
+ '[' -e /etc/wireguard/warp.conf ']'
+ case "$TRACE4" in
+ case "$TRACE6" in
+ CASE=("@0" "0@" "0@0" "@1" "0@1" "1@" "1@0" "1@1" "@")
+ for m in ${!CASE[@]}
+ '[' @ = @0 ']'
+ for m in ${!CASE[@]}
+ '[' @ = 0@ ']'
+ for m in ${!CASE[@]}
+ '[' @ = 0@0 ']'
+ for m in ${!CASE[@]}
+ '[' @ = @1 ']'
+ for m in ${!CASE[@]}
+ '[' @ = 0@1 ']'
+ for m in ${!CASE[@]}
+ '[' @ = 1@ ']'
+ for m in ${!CASE[@]}
+ '[' @ = 1@0 ']'
+ for m in ${!CASE[@]}
+ '[' @ = 1@1 ']'
+ for m in ${!CASE[@]}
+ '[' @ = @ ']'
+ break
+ WARP_BEFORE=("" "" "" "WARP IPv6 only" "WARP IPv6" "WARP IPv4 only" "WARP IPv4" "$(text 70)")
++ text 70
++ grep -q '\$'
++ eval echo '${C[70]}'
+++ echo WARP 双栈
+ WARP_AFTER1=("" "" "" "WARP IPv4" "WARP IPv4" "WARP IPv6" "WARP IPv6" "WARP IPv4")
+ WARP_AFTER2=("" "" "" "$(text 70)" "$(text 70)" "$(text 70)" "$(text 70)" "WARP IPv6")
++ text 70
++ grep -q '\$'
++ eval echo '${C[70]}'
+++ echo WARP 双栈
++ text 70
++ grep -q '\$'
++ eval echo '${C[70]}'
+++ echo WARP 双栈
++ text 70
++ grep -q '\$'
++ eval echo '${C[70]}'
+++ echo WARP 双栈
++ text 70
++ grep -q '\$'
++ eval echo '${C[70]}'
+++ echo WARP 双栈
+ TO1=("" "" "" "014" "014" "106" "106" "114")
+ TO2=("" "" "" "01D" "01D" "10D" "10D" "116")
+ SHORTCUT1=("" "" "" "(warp 4)" "(warp 4)" "(warp 6)" "(warp 6)" "(warp 4)")
+ SHORTCUT2=("" "" "" "(warp d)" "(warp d)" "(warp d)" "(warp d)" "(warp 6)")
+ '[' 8 -le 3 ']'
+ '[' 8 = 8 ']'
++ text 189
++ grep -q '\$'
++ eval echo '${C[189]}'
+++ echo 检测不到任何 IPv4 或 'IPv6。脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues]'
+ error '\n 检测不到任何 IPv4 或 IPv6。脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues] \n'
+ echo -e '\033[31m\033[01m\n 检测不到任何 IPv4 或 IPv6。脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues] \n\033[0m'

 检测不到任何 IPv4 或 IPv6。脚本中止,问题反馈:[https://github.com/fscarmen/warp-sh/issues]
fscarmen commented 4 months ago

看了一下日志,是连不上 cloudflare 的主页查 warp 状态 你试试指定使用 v6 查

curl -6 --retry 2 -ksm5 https://www.cloudflare.com/cdn-cgi/trace

不行的话,试试另一个

curl -6 --retry 2 -ksm5 https://icook.tw/cdn-cgi/trace
Jesn commented 4 months ago

添加cloudflare DNS64 即可解决问题 vim /etc/resolv.conf

nameserver 2606:4700:4700::64
nameserver 2606:4700:4700::6400
fscarmen commented 4 months ago

添加cloudflare DNS64 即可解决问题 vim /etc/resolv.conf

nameserver 2606:4700:4700::64
nameserver 2606:4700:4700::6400

你原来的dns是如何的?我想想是否针对这个加个判断