Raspberry PiがルーターからIPを受信し、他のIPを他のデバイスに転送するにはどうすればよいですか?

Raspberry PiがルーターからIPを受信し、他のIPを他のデバイスに転送するにはどうすればよいですか?

イーサネットスイッチを使用して目的の結果を達成できることを知っていますが、より安価なソリューションを使用してこれを達成できるかどうか疑問に思います。

アイデアは次のとおりです。

  • Rapsberry Piには2つのイーサネットポートがあります。 1つは内蔵され、もう1つは安価なUSB-Ethernetアダプタです。

  • ポートの1つがローカルルーターに直接接続され、DHCP IPアドレスを受け取ります。 192.168.1.2だとしましょう。

  • 他のポートは他のデバイスに接続されます。同じルータに直接接続されていると考え、ルータからDHCP IPアドレスを受信するには、このデバイスが必要です。アドレスが192.168.1.3であるとします。

デフォルトでは、RPiはイーサネットスイッチのように動作し、それ自体でIPを要求し、他の要求を別のデバイスにルーティングしたいと思います。

スイッチを使用してこれを行う方法を説明する図は次のとおりです。

一部のデバイスとスイッチを備えたRPi

私が望む仕組みは次のとおりです。

一部のデバイスとイーサネットアダプタを備えたRPi

5つの3ポートスイッチの代わりに、「RPi Plusデバイス」のペアが5つ(またはそれ以上)であると想像してみてください。これには、別々の電源装置と2本の追加の電線が必要です。

この設定をRPiのイーサネットポートおよびイーサネットアダプタと連携させるLinux設定オプションはありますか?

ベストアンサー1

設定でこれを達成できるはずです。2つのネットワークインターフェイス間。

統合イーサネットインターフェイスがeth0USBアダプタを介してオンになっていると仮定すると、eth1次の設定が/etc/network/interfaces機能します(bridge-utilsパッケージがインストールされていてカーネルがそれをサポートしている場合)。

auto lo br0
iface lo inet loopback

iface eth0 inet manual

iface eth1 inet manual

iface br0 inet dhcp
    bridge_ports eth0 eth1

を実行するとifconfigインターフェイスが表示されます(私の記憶が正しい場合はおそらくMACアドレスがありますbr0)。eth0このインターフェイスは実際にRPiのマージされたインターフェイスになり、ルータからそのIPアドレスを取得します。

他のデバイスからのトラフィックはブリッジを通過し、対応するIPアドレスも取得する必要があります。トラフィックが通過しない場合は、通過を許可する必要がありますiptables。あなたも正しいかもしれません。 。 。興味があるこの記事

(しかし、多くのアダプタが同時に複数のMACアドレスを使用できないため、これは必ずしも無線LANアダプタに適用されるわけではありません。)

おすすめ記事