USBモデム接続を使用してRaspberry Pi 4(Raspbian Bookworm)でWiFiホットスポットを作成する問題

USBモデム接続を使用してRaspberry Pi 4(Raspbian Bookworm)でWiFiホットスポットを作成する問題

Raspbian Bookwormを実行しているRaspberry Pi 4でWiFiホットスポットを設定するのに問題があります。私が取ったステップは次のとおりです。

  1. インストール中にOSイメージがフラッシュされ、WiFiが設定されました。
  2. USBモデムを接続して有効にすると、eth1として表示されます。
  3. 提供されたスクリプトを使用して、この接続をWiFiホットスポットとして共有します。

しかし、2つの主な問題に直面しています。

  • 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

nohupSSHがローカルWi-Fiから切断されて完了しないように、上記のスクリプトを実行してください。

サービスを再起動し、Hostadbconfが正しく作成されたことを確認しました。この問題を解決する方法についてのアイデアはありますか?

Hostapdサービスとdnsmasqサービスのログは正常に見えます(実行中)。ログは、Wi-Fi ネットワークとの接続が成功したことを示します。ただし、dnsmasqログに複数のDHCPパケット受信エラーがあり、IPアドレスの割り当てに問題があることを示します。

注:NetworkManagerを試してみましたが、やはり機能しませんでした。

関連情報