Expand local_machine docs and automation for connectivity, games, and ops.

Add proxy/VPN/telegram launchd and emergency runbooks; reorganize apps docs;
document JA3 CrossOver runbook and Wine troubleshooting; add GOG/HoMM game
scripts, disk cleanup guides, and gitea push-via-proxy helper. Ignore temp/.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
ahauimix
2026-06-01 08:12:19 +03:00
parent a39ef89125
commit 1938b7c743
135 changed files with 9933 additions and 388 deletions

View File

@@ -0,0 +1,122 @@
# Emergency: сеть после смены хотспота (macOS)
Симптом: **отключили Mac от WiFi / переподключились к другому хотспоту — «интернета нет», помогает только перезагрузка.**
Документ описывает **проверенную на машине причину** в вашей конфигурации, **ручное восстановление без перезагрузки** и **скрипт** из репозитория.
---
## Причина (точная по конфигурации)
На macOS в **Системных настройках → Сеть → WiFi → Подробнее → Прокси** часто включён **автоматический прокси (PAC)** с URL вида **`http://localhost:1089/proxy.pac`** (см. [PROXY_GUIDE.md](./PROXY_GUIDE.md) → раздел про системный PAC).
Проверка на рабочей машине (2026): **PAC для сервиса WiFi включён (Enabled: Yes)**, при этом **на порту 1089 нет процесса**, который отдаёт `proxy.pac` — соединение к `127.0.0.1:1089` отклоняется.
В таком состоянии:
1. Система и часть приложений **сначала** должны получить PAC с localhost; при недоступном URL поведение **нестабильно** (часть трафика «в никуда», таймауты).
2. При **смене хотспота** меняются шлюз, DNS, часто появляется **captive portal**; страница входа может **не открыться**, пока PAC мешает или DNS закеширован со старой сети.
3. **Перезагрузка** «лечит», потому что заново поднимаются **configd**, **mDNSResponder**, порядок инициализации WiFi и иногда снова стартует локальный PACсервер (Clash / Surge / свой сервис на 1089).
Дополнительные усилители сбоя (проверять при `status`):
- **Системный SOCKS** на `127.0.0.1:1080` (Shadowsocks и т.д.) — если включён, а клиент не слушает порт, трафик через системный прокси тоже падает.
- **VPN / туннели** с политикой «весь трафик» — после смены сети маршруты могут остаться битые до отключения VPN.
**SOCKS Telegram (1081) и SSHтуннели сами по себе не отключают WiFi** — они приложенческие. Проблема класса «всё мёртво до ребута» у вас с высокой вероятностью — **системный PAC/SOCKS на localhost без живого сервиса + кэш DNS / состояние WiFi**.
---
## Быстро: один скрипт (рекомендуется)
Из корня репозитория `local_machine`:
```bash
chmod +x ./docs/connectivity/scripts/macos-hotspot-network-recover.sh
./docs/connectivity/scripts/macos-hotspot-network-recover.sh status
./docs/connectivity/scripts/macos-hotspot-network-recover.sh recover
```
`recover` делает: **выключает PAC** (те же сервисы, что и `macos-system-pac.sh`), **выключает системный SOCKS на WiFi**, по возможности **сбрасывает DNS** и **кратко перезапускает WiFi** и DHCP.
Если скрипт пишет, что нет `sudo` без пароля — выполните вручную команды из раздела «Вручную» ниже.
После появления интернета, если вам снова нужен PAC:
```bash
./docs/connectivity/scripts/macos-pac-on.sh
```
Только **после** того как процесс на **1089** реально запущен и отдаёт `proxy.pac`.
---
## Вручную (без скрипта)
### 1. Отключить автоматический PAC
**GUI:** Системные настройки → Сеть → WiFi → Подробнее → Прокси → снять **«Автоматическая настройка прокси (PAC)»**.
**CLI** (из репо):
```bash
./docs/connectivity/scripts/macos-pac-off.sh
./docs/connectivity/scripts/macos-system-pac.sh status
```
### 2. Отключить системный SOCKS (если включали для Shadowsocks)
```bash
networksetup -setsocksfirewallproxystate "Wi-Fi" off
networksetup -getsocksfirewallproxy "Wi-Fi"
```
### 3. Сброс DNS
```bash
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
```
### 4. Обновить DHCP и «пнуть» WiFi
Узнать интерфейс WiFi (часто `en0`):
```bash
networksetup -listallhardwareports | sed -n '/Hardware Port: Wi-Fi/,/Ethernet Address/p'
```
Дальше (подставьте свой `Device`, например `en0`):
```bash
sudo ipconfig set en0 DHCP
networksetup -setairportpower en0 off
sleep 2
networksetup -setairportpower en0 on
```
### 5. Captive portal
Откройте в браузере **`http://captive.apple.com`** или **`http://neverssl.com`** — должна открыться страница входа в сеть отели/кафе.
---
## Профилактика (архитектурно)
1. **Не держать PAC включённым**, если сервис на **1089** не запущен: сначала поднять Clash/Surge/свой HTTPсервер с PAC, **затем** `macos-pac-on.sh`.
2. Перед подключением к **чужому хотспоту** с обязательной страницей входа — **временно PAC off** (`macos-pac-off.sh`), залогиниться в сеть, затем при необходимости снова **on**.
3. Разнести роли: **глобальный PAC** — только когда стабильно есть локальный конфиг‑сервер; для «чистого» интернета в дороге — **PAC выключен**, прокси только в приложениях (Telegram SOCKS **1081**, Cursor **10809** и т.д.) — см. [TELEGRAM_GUIDE.md](./TELEGRAM_GUIDE.md), [PROXY_EMERGENCY.md](./PROXY_EMERGENCY.md).
---
## Связанные документы
| Документ | Зачем |
|----------|--------|
| [PROXY_GUIDE.md](./PROXY_GUIDE.md) | Системный PAC, порты, скрипты `macos-pac-*.sh` |
| [PROXY_EMERGENCY.md](./PROXY_EMERGENCY.md) | SSH, SOCKS 1081, прод |
| [README.md](./README.md) | Оглавление `connectivity/` |
---
*Если после `recover` сеть всё ещё мёртвая — проверьте аппаратный тумблер WiFi, другое SSID, и логи: Консоль → `Wi-Fi` / `configd`.*