玩客云IP查找
- 电脑硬件
- 2025-09-01 09:54:01

1.玩客云使用静态IP在不同网段路由器下不能使用,动态不好找IP地址
1.1使用python3 实现自动获取发送
import requests import os import socket # 从环境变量获取 PushPlus 的 token 和群组编码 PUSH_PLUS_TOKEN = os.getenv("PUSH_PLUS_TOKEN") PUSH_PLUS_USER = os.getenv("PUSH_PLUS_USER") def get_local_ip(): """ 获取本地 IP 地址 """ try: s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect(("8.8.8.8", 80)) ip = s.getsockname()[0] s.close() return ip except Exception as e: print(f"获取本地 IP 失败: {e}") return None def send_notification(ip): """ 使用 PushPlus 发送包含本地 IP 的通知 """ if not PUSH_PLUS_TOKEN: print("未添加 Push Plus 的 TOKEN,无法发送通知。") return url = "http:// .pushplus.plus/send" # 将 IP 地址包装成超链接 ip_link = f'<a href="http://{ip}">{ip}</a>' data = { "token": PUSH_PLUS_TOKEN, "title": "本地 IP 地址信息", "content": f"当前本地 IP 地址为: {ip_link}", "topic": PUSH_PLUS_USER if PUSH_PLUS_USER else "" } headers = { 'Content-Type': 'application/json' } try: response = requests.post(url, json=data, headers=headers) if response.status_code == 200: result = response.json() if result.get("code") == 200: print("IP 地址已成功发送到 PushPlus") else: print(f"发送失败,错误信息: {result.get('msg')}") else: print(f"发送失败,状态码: {response.status_code}") except requests.RequestException as e: print(f"请求 PushPlus 时出错: {e}") if __name__ == "__main__": local_ip = get_local_ip() if local_ip: send_notification(local_ip) 2. 设置上电自动发送一次在 Armbian Linux 系统中,可以使用 systemd 服务来实现脚本上电自动运行。以下是具体步骤:
2.1 创建服务文件使用文本编辑器(如 nano)创建一个新的 systemd 服务文件,例如 /etc/systemd/system/send_ip_notification.service:
vim /etc/systemd/system/send_ip_notification.service在编辑器中输入以下内容:
[Unit] Description=Send local IP notification on startup After=network.target [Service] ExecStartPre=/bin/sleep 10 # 等待 10 秒 ExecStart=/usr/bin/python3 /root/getip.py Restart=on-failure [Install] WantedBy=multi-user.target 2.2 重新加载 systemd 配置保存并退出编辑器后,重新加载 systemd 管理器的配置:
sudo systemctl daemon-reload 2.3 启用并启动服务启用该服务,使其在系统上电时自动运行:
sudo systemctl enable send_ip_notification.service启动服务进行测试:
sudo systemctl start send_ip_notification.service 2.4 检查服务状态可以使用以下命令检查服务的运行状态:
sudo systemctl status send_ip_notification.service如果一切正常,服务应该处于运行状态,并且在系统上电时会自动执行脚本,将本地 IP 地址以超链接的形式发送到 PushPlus。