
私の組み込みLinuxデバイスには2つのインターフェースがありますuap0
。他のデバイスがLinuxデバイスに接続するためのアクセスポイントとして機能します。私のルータへのインターフェイスです。私のルーターはインターネットに接続されています。eth0
uap0
eth0
インターフェースの詳細:
uap0
- 172.24.100.1/24APに接続されているデバイスのDHCP範囲:172.24.100.50 - 172.24.100.100
eth0
- 192.168.1.26/24ルーターIP(例:ゲートウェイ):192.168.1.253
route add default gw 192.68.1.253
これはルータのIPだからです。 172.24.100.1も試してみました。しかし、それも動作しません。
sysctl.conf
ファイルからIPv4転送を許可しました。また、iptablesに次のエントリを追加しました。
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o uap0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i uap0 -o eth0 -j ACCEPT
平らな結果:
ping 172.24.100.50 -I uap0
--->成功(.50はAPに接続されているデバイスの1つです)ping 8.8.8.8 -I uap0
--->失敗ping 192.168.1.26 -I uap0
--->失敗ping 172.24.100.1 -I eth0
--->失敗
APにデバイスを接続するたびに、デバイスはインターネットにアクセスできません。私がオンラインで遭遇したほとんどすべてのソリューションは、私がすでに行ったiptablesにアイテムを追加することを示唆しています。
Raspberry Piで以前にAP + STAモードを実装したことがあります。 RPi で dnsmasq と Hostapd を設定する必要があります。しかし、これは最小のLinuxシステムなので、dnsmasqはプリインストールされていません。また、パッケージマネージャは期待どおりに機能しません。
緑色の部分はLinuxデバイスです。
sysctlの出力: