1

Я просто работаю над AcessPoint, размещенным на моем Raspberry Pi B+.

Когда кабель подключен к адаптеру eth0, все работает нормально. Если кто-то подключится к моей точке доступа, он будет перенаправлен на веб-сервер, как портал авторизации. Если они хотят перейти на веб-сайт, iptables перенаправит их на веб-сервер.

Но когда я запускаю свой Raspberry без подключенного кабеля, он больше не работает. Перенаправление сломано. Когда я снова подключаю его и перезапускаю hostapd, он снова работает.

Понятия не имею почему.

Вот мои приемлемые правила:

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to destination 10.0.0.1:80
sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination 10.0.0.1:443

Они будут добавлены со скриптом при загрузке.

Сценарий:

#!/bin/bash
sudo ifconfig wlan0 10.0.0.1

sudo echo "options bcmdhd op_mode=2" | sudo tee /etc/modprobe.d/bcmdhd.conf

sudo iptables -t nat -F
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.0.0.1:80
sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination 10.0.0.1:443

sudo service dnsmasq restart
sudo hostapd /etc/hostapd/hostapd.conf
sudo service hostapd restart

Мой hostapd.conf:

interface=wlan0
driver=nl80211
bssid=7c:dd:90:9d:3e:bd
ssid=RaspAP
hw_mode=g
channel=6
beacon_int=100
auth_algs=3
wmm_enabled=1
ignore_broadcast_ssid=0
country_code=DE

Спасибо за помощь!

РЕДАКТИРОВАТЬ: я не должен перезапускать hostapd. Когда я снова подключаю интернет-кабель, он работает сразу. Это как, iptables просто работает, когда кабель подключен.

0