#!/bin/zsh # Helper script to find phone MAC address # Tries multiple methods to detect phone hotspot MAC set -euo pipefail BLUE='\033[0;34m' GREEN='\033[0;32m' YELLOW='\033[1;33m' RED='\033[0;31m' NC='\033[0m' echo -e "${BLUE}=== Поиск MAC-адреса телефона ===${NC}\n" # Method 1: Check if connected to hotspot echo -e "${YELLOW}Метод 1: Проверка подключения к hotspot...${NC}" if networksetup -getairportnetwork en0 &>/dev/null; then network_info=$(networksetup -getairportnetwork en0 2>/dev/null) if [[ "$network_info" != *"not associated"* ]]; then echo -e "${GREEN}✓ Подключен к сети${NC}" # Try to get BSSID using airport (deprecated but may work) bssid=$(/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport -I 2>/dev/null | grep -i "BSSID" | awk '{print $2}' || echo "") if [ -n "$bssid" ] && [ "$bssid" != "none" ]; then echo -e "${GREEN}✓ Найден BSSID (MAC точки доступа): $bssid${NC}" echo "" echo -e "${GREEN}Используйте этот MAC:${NC}" echo "./spoof-wifi-mac.sh $bssid" exit 0 else echo -e "${YELLOW}⚠ Не удалось определить BSSID автоматически${NC}" fi else echo -e "${RED}✗ Не подключен к Wi-Fi сети${NC}" fi else echo -e "${RED}✗ Wi-Fi интерфейс не найден${NC}" fi echo "" # Method 2: Check ARP table for connected devices echo -e "${YELLOW}Метод 2: Проверка ARP таблицы...${NC}" gateway=$(route -n get default 2>/dev/null | grep gateway | awk '{print $2}' || echo "") if [ -n "$gateway" ]; then echo -e "${GREEN}✓ Шлюз: $gateway${NC}" arp_mac=$(arp -n "$gateway" 2>/dev/null | awk '{print $4}' | grep -E "^([0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$" || echo "") if [ -n "$arp_mac" ]; then echo -e "${GREEN}✓ MAC шлюза (возможно точка доступа): $arp_mac${NC}" echo "" echo -e "${GREEN}Возможный MAC точки доступа:${NC}" echo "./spoof-wifi-mac.sh $arp_mac" echo "" echo -e "${YELLOW}⚠ Это MAC роутера/точки доступа, проверьте на телефоне${NC}" else echo -e "${YELLOW}⚠ Не удалось определить MAC из ARP${NC}" fi else echo -e "${RED}✗ Шлюз не найден${NC}" fi echo "" # Method 3: Instructions echo -e "${BLUE}=== Ручной способ получения MAC ===${NC}\n" echo -e "${YELLOW}iPhone:${NC}" echo "1. Настройки → Wi-Fi" echo "2. Нажмите (i) рядом с активной сетью" echo "3. Отключите 'Частный Wi-Fi адрес'" echo "4. Скопируйте 'Адрес Wi-Fi'" echo "" echo -e "${YELLOW}Android:${NC}" echo "1. Настройки → О телефоне → Статус" echo "2. Найдите 'MAC-адрес Wi-Fi'" echo "" echo -e "${YELLOW}Для точки доступа (hotspot):${NC}" echo "1. Включите точку доступа на телефоне" echo "2. Подключите MacBook к hotspot" echo "3. Запустите: ./spoof-wifi-mac.sh --phone-mac" echo "" echo -e "${BLUE}=== Альтернативный способ ===${NC}\n" echo "Если MAC не отображается на телефоне:" echo "1. Подключите MacBook к hotspot телефона" echo "2. Запустите: ./spoof-wifi-mac.sh --phone-mac" echo " (скрипт автоматически определит MAC точки доступа)" echo ""