Raspbian Bookworm을 실행하는 Raspberry Pi 4에서 WiFi 핫스팟을 설정하는 데 문제가 있습니다. 제가 취한 단계는 다음과 같습니다.
- 설치 과정에서 OS 이미지가 플래시되고 WiFi가 구성되었습니다.
- USB 모뎀을 연결하고 활성화하면 eth1로 나타납니다.
- 제공된 스크립트를 사용하여 이 연결을 WiFi 핫스팟으로 공유해 보세요.
그러나 두 가지 주요 문제에 직면하고 있습니다.
- Wi-Fi 네트워크가 때때로 표시되지 않습니다.
- 이 경우 "IP 구성 오류"로 인해 클라이언트를 연결할 수 없습니다.
Wi-Fi 핫스팟을 시작하기 위해 다음 스크립트를 실행했습니다.
## Share WiFi
wifissid=qwerqwer
wificode=qwertyuio
# Disconnect from current Wi-Fi network
sudo ifconfig wlan0 down
# Stop NetworkManager and configure so it doesn't start on reboot
sudo systemctl stop NetworkManager
sudo systemctl disable NetworkManager
# Disconnect from current Wi-Fi network again, just in case
sudo ifconfig wlan0 down
# Stop services if already running
sudo systemctl stop hostapd
sudo systemctl stop dnsmasq
# Unmask hostapd
sudo systemctl unmask hostapd
# Configure a static IP for the WiFi interface (adjust interface and IP accordingly)
sudo bash -c 'echo "interface wlan0" >> /etc/dhcpcd.conf'
sudo bash -c 'echo "static ip_address=192.168.4.1/24" >> /etc/dhcpcd.conf'
# Configure hostapd
sudo bash -c "cat > /etc/hostapd/hostapd.conf <<EOF
interface=wlan0
driver=nl80211
ssid=$wifissid
hw_mode=g
channel=7
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=$wificode
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
EOF"
# Update hostapd configuration
sudo bash -c 'echo "DAEMON_CONF=\"/etc/hostapd/hostapd.conf\"" >> /etc/default/hostapd'
# Configure dnsmasq
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
sudo bash -c 'echo "interface=wlan0" > /etc/dnsmasq.conf'
sudo bash -c 'echo "dhcp-range=192.168.4.2,192.168.4.20,255.255.255.0,24h" >> /etc/dnsmasq.conf'
# Enable IP forwarding
sudo sysctl net.ipv4.ip_forward=1
sudo bash -c 'echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf'
# Enable NAT
sudo iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
sudo sh -c 'iptables-save > /etc/iptables.ipv4.nat'
# Create the directory if it doesn't exist
sudo mkdir -p /lib/dhcpcd/dhcpcd-hooks
# Restore iptables on boot
sudo bash -c 'echo "iptables-restore < /etc/iptables.ipv4.nat" >> /lib/dhcpcd/dhcpcd-hooks/70-ipv4-nat'
# Start services
sudo systemctl start hostapd
sudo systemctl start dnsmasq
nohup
SSH가 로컬 Wi-Fi에서 연결이 끊어져 완료되지 않도록 위의 스크립트를 실행합니다 .
서비스를 다시 시작하고 Hostadbconf가 올바르게 작성되었는지 확인했습니다. 이 문제를 해결하는 방법에 대한 아이디어가 있습니까?
Hostapd 및 dnsmasq 서비스의 로그는 정상적으로 보입니다(실행 중). 로그는 Wi-Fi 네트워크와의 연결이 성공했음을 나타냅니다. 그러나 dnsmasq 로그에 여러 개의 DHCP 패킷 수신 오류가 있어 IP 주소 할당에 문제가 있음을 나타냅니다.
참고: NetworkManager를 사용해 보았지만 역시 작동하지 않았습니다.