Table of Contents

Гостьова Wi-Fi мережа: основи

Вступ

Цілі

Інструкції з командного рядка

1. Мережа

Налаштування мережевого інтерфейсу для гостьової мережі.

# Налаштування мережі
uci -q delete network.guest_dev
uci set network.guest_dev="device"
uci set network.guest_dev.type="bridge"
uci set network.guest_dev.name="br-guest"
uci -q delete network.guest
uci set network.guest="interface"
uci set network.guest.proto="static"
uci set network.guest.device="br-guest"
uci set network.guest.ipaddr="192.168.3.1/24"
uci commit network
service network restart

2. Wi-Fi

Налаштування бездротового інтерфейсу, прив’язаного до гостьового мережевого інтерфейсу.

# Налаштування Wi-Fi
WIFI_DEV="$(uci get wireless.@wifi-iface[0].device)"
uci -q delete wireless.guest
uci set wireless.guest="wifi-iface"
uci set wireless.guest.device="${WIFI_DEV}"
uci set wireless.guest.mode="ap"
uci set wireless.guest.network="guest"
uci set wireless.guest.ssid="guest"
uci set wireless.guest.encryption="none"
uci commit wireless
wifi reload

Додатково: Захистіть гостьову мережу та ізолюйте клієнтів за потреби.

3. DHCP

Налаштування DHCP-сервера для гостьової мережі.

# Налаштування DHCP
uci -q delete dhcp.guest
uci set dhcp.guest="dhcp"
uci set dhcp.guest.interface="guest"
uci set dhcp.guest.start="100"
uci set dhcp.guest.limit="150"
uci set dhcp.guest.leasetime="1h"
uci commit dhcp
service dnsmasq restart

4. Брандмауер (Firewall)

Налаштування брандмауера для гостьової мережі. Дозвіл пересилання трафіку з гостьової мережі до WAN. Дозвіл DHCP-запитів та DNS-запитів.

# Налаштування брандмауера
uci -q delete firewall.guest
uci set firewall.guest="zone"
uci set firewall.guest.name="guest"
uci set firewall.guest.network="guest"
uci set firewall.guest.input="REJECT"
uci set firewall.guest.output="ACCEPT"
uci set firewall.guest.forward="REJECT"
uci -q delete firewall.guest_wan
uci set firewall.guest_wan="forwarding"
uci set firewall.guest_wan.src="guest"
uci set firewall.guest_wan.dest="wan"
uci -q delete firewall.guest_dns
uci set firewall.guest_dns="rule"
uci set firewall.guest_dns.name="Allow-DNS-Guest"
uci set firewall.guest_dns.src="guest"
uci set firewall.guest_dns.dest_port="53"
uci set firewall.guest_dns.proto="tcp udp"
uci set firewall.guest_dns.target="ACCEPT"
uci -q delete firewall.guest_dhcp
uci set firewall.guest_dhcp="rule"
uci set firewall.guest_dhcp.name="Allow-DHCP-Guest"
uci set firewall.guest_dhcp.src="guest"
uci set firewall.guest_dhcp.dest_port="67"
uci set firewall.guest_dhcp.proto="udp"
uci set firewall.guest_dhcp.family="ipv4"
uci set firewall.guest_dhcp.target="ACCEPT"
uci commit firewall
service firewall restart

Тестування

Підключіться до гостьової мережі. Перевірте доступ до Інтернету:

Використовуйте ping, ping6 або nmap для перевірки конфігурації брандмауера.

Виправлення несправностей

Зберіть і проаналізуйте наступну інформацію:

# Перезапуск служб
service log restart; service network restart
service dnsmasq restart; service firewall restart
 
# Журнали та статус
logread; netstat -l -n -p | grep -e dnsmasq
 
# Поточна конфігурація
pgrep -f -a dnsmasq
ip address show; ip route show table all
ip rule show; ip -6 rule show; nft list ruleset
head -v -n -0 /etc/resolv.* /tmp/resolv.* /tmp/resolv.*/*
 
# Постійна конфігурація
uci show network; uci show wireless; uci show dhcp; uci show firewall