diff --git a/point/endip1.sh b/point/endip1.sh new file mode 100644 index 0000000..65c1e64 --- /dev/null +++ b/point/endip1.sh @@ -0,0 +1,195 @@ +#!/bin/bash +warpcheck(){ +case "$(uname -m)" in + x86_64 | x64 | amd64 ) + cpu=amd64 + ;; + i386 | i686 ) + cpu=386 + ;; + armv8 | armv8l | arm64 | aarch64 ) + cpu=arm64 + ;; + armv7l ) + cpu=arm + ;; + * ) + echo "当前架构为$(uname -m),暂不支持" + exit + ;; +esac +if [[ -n $cpu ]]; then +curl -L -o warpendpoint -# --retry 2 https://proxy.freecdn.ml?url=https://gitlab.com/rwkgyg/CFwarp/raw/main/point/$cpu +fi +} + +cfwarp(){ +if [ $menu == 1 ] +then + n=0 + iplist=100 + while true + do + temp[$n]=$(echo 162.159.192.$(($RANDOM%256))) + n=$[$n+1] + if [ $n -ge $iplist ] + then + break + fi + temp[$n]=$(echo 162.159.193.$(($RANDOM%256))) + n=$[$n+1] + if [ $n -ge $iplist ] + then + break + fi + temp[$n]=$(echo 162.159.195.$(($RANDOM%256))) + n=$[$n+1] + if [ $n -ge $iplist ] + then + break + fi + temp[$n]=$(echo 188.114.96.$(($RANDOM%256))) + n=$[$n+1] + if [ $n -ge $iplist ] + then + break + fi + temp[$n]=$(echo 188.114.97.$(($RANDOM%256))) + n=$[$n+1] + if [ $n -ge $iplist ] + then + break + fi + temp[$n]=$(echo 188.114.98.$(($RANDOM%256))) + n=$[$n+1] + if [ $n -ge $iplist ] + then + break + fi + temp[$n]=$(echo 188.114.99.$(($RANDOM%256))) + n=$[$n+1] + if [ $n -ge $iplist ] + then + break + fi + done + while true + do + if [ $(echo ${temp[@]} | sed -e 's/ /\n/g' | sort -u | wc -l) -ge $iplist ] + then + break + else + temp[$n]=$(echo 162.159.192.$(($RANDOM%256))) + n=$[$n+1] + fi + if [ $(echo ${temp[@]} | sed -e 's/ /\n/g' | sort -u | wc -l) -ge $iplist ] + then + break + else + temp[$n]=$(echo 162.159.193.$(($RANDOM%256))) + n=$[$n+1] + fi + if [ $(echo ${temp[@]} | sed -e 's/ /\n/g' | sort -u | wc -l) -ge $iplist ] + then + break + else + temp[$n]=$(echo 162.159.195.$(($RANDOM%256))) + n=$[$n+1] + fi + if [ $(echo ${temp[@]} | sed -e 's/ /\n/g' | sort -u | wc -l) -ge $iplist ] + then + break + else + temp[$n]=$(echo 188.114.96.$(($RANDOM%256))) + n=$[$n+1] + fi + if [ $(echo ${temp[@]} | sed -e 's/ /\n/g' | sort -u | wc -l) -ge $iplist ] + then + break + else + temp[$n]=$(echo 188.114.97.$(($RANDOM%256))) + n=$[$n+1] + fi + if [ $(echo ${temp[@]} | sed -e 's/ /\n/g' | sort -u | wc -l) -ge $iplist ] + then + break + else + temp[$n]=$(echo 188.114.98.$(($RANDOM%256))) + n=$[$n+1] + fi + if [ $(echo ${temp[@]} | sed -e 's/ /\n/g' | sort -u | wc -l) -ge $iplist ] + then + break + else + temp[$n]=$(echo 188.114.99.$(($RANDOM%256))) + n=$[$n+1] + fi + done + + while true + do + temp[$n]=$(echo [2606:4700:d0::$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2)))]) + n=$[$n+1] + if [ $n -ge $iplist ] + then + break + fi + temp[$n]=$(echo [2606:4700:d1::$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2)))]) + n=$[$n+1] + if [ $n -ge $iplist ] + then + break + fi + done + while true + do + if [ $(echo ${temp[@]} | sed -e 's/ /\n/g' | sort -u | wc -l) -ge $iplist ] + then + break + else + temp[$n]=$(echo [2606:4700:d0::$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2)))]) + n=$[$n+1] + fi + if [ $(echo ${temp[@]} | sed -e 's/ /\n/g' | sort -u | wc -l) -ge $iplist ] + then + break + else + temp[$n]=$(echo [2606:4700:d1::$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2))):$(printf '%x\n' $(($RANDOM*2+$RANDOM%2)))]) + n=$[$n+1] + fi + done +fi +echo ${temp[@]} | sed -e 's/ /\n/g' | sort -u > ip.txt +ulimit -n 102400 +chmod +x warpendpoint +./warpendpoint +clear +cat result.csv | awk -F, '$3!="timeout ms" {print} ' | sort -t, -nk2 -nk3 | uniq | head -11 | awk -F, '{print "端点 "$1" 丢包率 "$2" 平均延迟 "$3}' +rm -rf ip.txt warpendpoint +exit +} + +list(){ +clear +echo "WARP-Endpoint优选IP,感谢CF网友开发" +echo "1.WARP-V4优选" +echo "2.WARP-V6优选" +echo -e "0.退出\n" +read -p "请选择菜单(默认1): " menu +if [ -z "$menu" ] || [ $menu == "1" ];then +menu=1 +cfwarp +elif [ $menu == "2" ];then +menu=2 +cfwarp +else +exit +fi +} + +if [ ! -f "warpendpoint" ]; then +echo "下载warp优选程序" +warpcheck && list +else +list +fi