要查询一个IP是否是IDC服务器或CDN服务器,可以使用Python的requests库发送HTTP请求并检查响应头中的服务器信息。以下是一个简单的示例代码:

import requests

def check_server_type(ip):
    url = f"http://{ip}"
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
    }

    try:
        response = requests.get(url, headers=headers, timeout=5)
        server = response.headers.get("Server", "")
        if "cdn" in server.lower():
            return "CDN服务器"
        elif "idc" in server.lower():
            return "IDC服务器"
        else:
            return "普通服务器"
    except requests.exceptions.RequestException:
        return "无法连接"

ip = "192.168.0.1"
server_type = check_server_type(ip)
print(f"{ip} 是 {server_type}")

在此示例中,我们使用requests.get()方法发送HTTP GET请求到指定的IP地址,并使用headers参数设置一个User-Agent头,以模拟浏览器访问。然后,我们检查响应的头部信息中的Server字段,如果包含"cdn"或"idc"字符串,就认为是CDN服务器或IDC服务器。如果不包含这两个关键字,就认为是普通服务器。如果无法连接到IP地址,则返回"无法连接"。

请注意,这种方法只是通过检查响应头中的服务器信息来判断服务器类型,可能存在一定的误判。对于一些特殊情况或定制服务器,可能无法准确判断。

python 查询IP是否是idc服务器或cdn服务器

原文地址: http://www.cveoy.top/t/topic/h2ch 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录