Files
local_machine/docs/old_mac/scripts/setup-bt-pan-fedora.sh

47 lines
1.6 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/usr/bin/env bash
# Fedora: поднять Bluetooth PAN (NAP) для прямой сети Mac ↔ Fedora.
# Обходит изоляцию клиентов на хотспоте телефона.
# sudo bash setup-bt-pan-fedora.sh
set -euo pipefail
PAN_IF="${PAN_IF:-pan0}"
PAN_IP="${PAN_IP:-172.20.99.1}"
PAN_CIDR="${PAN_CIDR:-24}"
MAC_BT_IP="${MAC_BT_IP:-172.20.99.2}"
die() { printf 'error: %s\n' "$*" >&2; exit 1; }
[ "$(id -u)" -eq 0 ] || die "sudo"
printf '=== Bluetooth PAN (Fedora = сервер) ===\n\n'
for pkg in bluez bluez-tools; do
rpm -q "$pkg" >/dev/null 2>&1 || dnf install -y "$pkg" || true
done
command -v bt-network >/dev/null 2>&1 || die "нет bt-network (dnf install bluez-tools)"
systemctl start bluetooth
sleep 1
# Остановить старый NAP
bt-network -d nap 2>/dev/null || true
pkill -f "bt-network -s nap" 2>/dev/null || true
sleep 1
printf 'Запуск NAP на %s (%s/%s)…\n' "$PAN_IF" "$PAN_IP" "$PAN_CIDR"
bt-network -s nap "$PAN_IF" &
sleep 2
ip link set "$PAN_IF" up 2>/dev/null || true
ip addr flush dev "$PAN_IF" 2>/dev/null || true
ip addr add "${PAN_IP}/${PAN_CIDR}" dev "$PAN_IF"
printf '\n[ok] PAN сервер на Fedora\n'
printf ' Интерфейс: %s = %s/%s\n' "$PAN_IF" "$PAN_IP" "$PAN_CIDR"
printf ' Mac после подключения PAN: назначьте %s/24 на bnep0\n' "$MAC_BT_IP"
printf ' (или Mac Internet Sharing — см. REMOTE_ACCESS.md)\n\n'
printf 'На Mac:\n'
printf ' 1. Bluetooth → fedora → Connect / «Сеть» / Network Access Point\n'
printf ' 2. bash docs/old_mac/scripts/setup-bt-pan-mac.sh\n'
printf ' 3. bash docs/old_mac/scripts/connect-fedora.sh\n'