ws-test
This commit is contained in:
		
							parent
							
								
									bff3908f11
								
							
						
					
					
						commit
						c5506f55a8
					
				
							
								
								
									
										44
									
								
								ws-test.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								ws-test.sh
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,44 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# 定义文件名
 | 
				
			||||||
 | 
					IP_FILE="ip.txt"
 | 
				
			||||||
 | 
					IP_USE_FILE="ip_use.txt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Step 1: 使用 dig 命令获取 sniproxy.youoffer.net 的所有IP地址,并写入到 ip.txt 文件中
 | 
				
			||||||
 | 
					dig +short sniproxy.youoffer.net > "$IP_FILE"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# 检查是否成功获取到了IP地址
 | 
				
			||||||
 | 
					if [[ ! -s "$IP_FILE" ]]; then
 | 
				
			||||||
 | 
					    echo "Failed to retrieve IP addresses."
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# 读取文件中的每个IP地址,并对每个地址进行测试
 | 
				
			||||||
 | 
					while IFS= read -r IP_ADDRESS; do
 | 
				
			||||||
 | 
					    # 忽略空行
 | 
				
			||||||
 | 
					    if [[ -z "$IP_ADDRESS" ]]; then
 | 
				
			||||||
 | 
					        continue
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    echo Testing IP address: $IP_ADDRESS""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Step 3: 使用 curl 测试 WebSocket 连接
 | 
				
			||||||
 | 
					    HTTP_RESPONSE=$(curl --include \
 | 
				
			||||||
 | 
					        --no-buffer \
 | 
				
			||||||
 | 
					        --resolve speed.cloudflare.com:443:"$IP_ADDRESS" \
 | 
				
			||||||
 | 
					        --header "Connection: Upgrade" \
 | 
				
			||||||
 | 
					        --header "Upgrade: websocket" \
 | 
				
			||||||
 | 
					        --header "Host: speed.cloudflare.com" \
 | 
				
			||||||
 | 
					        --header "Origin: https://speed.cloudflare.com" \
 | 
				
			||||||
 | 
					        --header "Sec-WebSocket-Key: SGVsbG8sIHdvcmxkIQ==" \
 | 
				
			||||||
 | 
					        --header "Sec-WebSocket-Version: 13" \
 | 
				
			||||||
 | 
					        "https://speed.cloudflare.com/" --silent --output /dev/null --write-out "%{http_code}")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Step 4: 检查 HTTP 响应码
 | 
				
			||||||
 | 
					    if [[ "$HTTP_RESPONSE" == "200" ]]; then
 | 
				
			||||||
 | 
					        echo "$IP_ADDRESS" >> "$IP_USE_FILE"
 | 
				
			||||||
 | 
					        echo "Success: HTTP 200 OK"
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					        echo "Failed: HTTP response was $HTTP_RESPONSE"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					done < "$IP_FILE"
 | 
				
			||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user