いくつかのフォーラムやガイドを読んだ後、ウェブ上で迷子になりました。
課題:新しいデバイスであるBYDバッテリーボックス(家庭用エネルギー貯蔵システム)を受け取りました。デバイスは、ソフトウェアを実行しているコンピュータがボックスのWiFi AP(192.168.16.0/24ネットワーク)に接続されている場合にのみ機能する独自のソフトウェア(ファームウェアアップデートおよびメンテナンス用)を介してのみアクセスできます。私のホームネットワーク(192.168.2.0/24ネットワーク)からデバイスにアクセスしたいです。
私のホームネットワークでdhcpと(フィルタリングされた)dns(pihole)やその他の不快なタスクを実行するUbuntuサーバーシステムを実行します。これまで、wlan0デバイスでwpa_supplicantを使用してUbuntuボックスをBYDボックスのWi-Fiに接続できました。ボックス自体からボックスのIPアドレス(192.168.16.254)にアクセスできます。
しかし、ネットワーク全体でボックスにアクセスできるようにする方法はわかりません。橋が行く道ですか?または静的ルーティング?迷彩?
読むほど、多くのことが失われます;-)
私が望むことを達成するにはどうすればよいですか?注:ネットワーク上のinetルーター/デフォルトGWには高度な機能(静的ルーティングなど)はありません。もう1つの悪い点は、bydメンテナンスソフトウェアに192.168.16.254がハードコードされていることです(16進エディタで変更できます)。
どんな助けやアドバイスにも感謝します。ありがとうございます!
ベストアンサー1
今私は何を得ますか?
- サーバーはWi-Fi経由でこのバッテリーボックスに接続されていますか?正しいですか?
- すべての顧客からバッテリーボックスを受け取りたいですか?正しいですか?
Q:「サーバー」もデフォルトゲートウェイですか? DHCPを提供しているのでそう思います。したがって、これは、バッテリボックスネットワークを認識しないネットワーク内のすべてのホストがデフォルトゲートウェイを通過することを意味します。
今何ができますか?サーバーの Wi-Fi アダプターの IP の背後にある他のホストを隠すことをお勧めします。これで到達できます。これにはSNATを使用できます。つまり、SRC IP が Wi-Fi アダプタの IP に変換されます。
それではこうなります。
iptables -A POSTROUTING -d 192.168.16.254/32 -o wlan0 -j SNAT --to-source (wlan0のIPアドレス. 192.168.16.1であると推測)
次に、ネットワークトポロジを描きましょう。また、デバイス自体のIPを記録してください。
このように:
(ホストA).1 -------------------- 192.168.0.0/24 ---------------- .254 (ホストB)
アドレッシング方式を容易に支援し理解することができます。
お役に立てば幸いです。
乾杯
クイックスタート
編集:あなたの答えに基づいています。ネットワークをネットワーク上のどのホストにも公開したくないので、これを行う最も簡単な方法はルータでスタティックルートを使用することです。ネットワーク192.168.16.0/24をサーバーのLAN IPとして指定します(ルーターがWIfiについて知らないため、ネットワーク全体を追加したくない場合はホストパスを追加できます)。
だからこうして接続になります
Anyhost <->ルーター<->サーバー<-WIFI->バッテリーボックス
L3用ですよ!もちろん、L2はLANが同じサブネット上にあり、ルータ自体を通過する必要がないため、動作が異なります。これにより、バッテリーボックスは常に要求ホストの実際のIPではなくサーバーのIPを表示します。
EDIT_2:参考のためにお勧めします。https://www.netfilter.org/documentation/HOWTO/NAT-HOWTO-6.html よく書かれました。さらにご質問がございましたら、お気軽にお問い合わせください。 :)