Create ipv6
This commit is contained in:
52
ipv6
Normal file
52
ipv6
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo "=== IPv6 专业检测工具 ==="
|
||||||
|
|
||||||
|
# 颜色定义
|
||||||
|
RED='\033[0;31m'
|
||||||
|
GREEN='\033[0;32m'
|
||||||
|
YELLOW='\033[1;33m'
|
||||||
|
NC='\033[0m' # No Color
|
||||||
|
|
||||||
|
# 检测函数
|
||||||
|
check_with_color() {
|
||||||
|
if $1 &> /dev/null; then
|
||||||
|
echo -e "${GREEN}✓ $2${NC}"
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
echo -e "${RED}✗ $2${NC}"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "正在执行IPv6检测..."
|
||||||
|
|
||||||
|
# 1. 内核支持检测
|
||||||
|
check_with_color "test -f /proc/net/if_inet6" "内核IPv6支持"
|
||||||
|
|
||||||
|
# 2. IPv6地址检测
|
||||||
|
echo -e "\nIPv6地址信息:"
|
||||||
|
ip -6 addr show | grep "inet6" | head -5 | while read line; do
|
||||||
|
echo -e " ${YELLOW}$line${NC}"
|
||||||
|
done
|
||||||
|
|
||||||
|
# 3. 连通性测试
|
||||||
|
echo -e "\n连通性测试:"
|
||||||
|
check_with_color "ping6 -c 1 -W 3 2001:4860:4860::8888" "Google IPv6 DNS"
|
||||||
|
check_with_color "ping6 -c 1 -W 3 2606:4700:4700::1111" "Cloudflare IPv6 DNS"
|
||||||
|
|
||||||
|
# 4. 路由检测
|
||||||
|
echo -e "\nIPv6路由表:"
|
||||||
|
ip -6 route show | head -5 | while read line; do
|
||||||
|
echo -e " ${YELLOW}$line${NC}"
|
||||||
|
done
|
||||||
|
|
||||||
|
# 5. 总结报告
|
||||||
|
echo -e "\n=== 检测总结 ==="
|
||||||
|
if ip -6 addr show | grep -q "inet6" && ping6 -c 1 -W 2 2001:4860:4860::8888 &> /dev/null; then
|
||||||
|
echo -e "${GREEN}✅ 系统IPv6功能完整正常${NC}"
|
||||||
|
elif ip -6 addr show | grep -q "inet6"; then
|
||||||
|
echo -e "${YELLOW}⚠️ 系统有IPv6地址但无法访问外网${NC}"
|
||||||
|
else
|
||||||
|
echo -e "${RED}❌ 系统未启用IPv6${NC}"
|
||||||
|
fi
|
||||||
Reference in New Issue
Block a user