4つのサブネットを持つ内部ネットワークを作成するとします。中央ルーターやスイッチはありません。 4つのサブネットすべて(192.168.0.0/24)のゲートウェイをリンクするために使用できる「管理サブネット」があります。一般的な図は次のようになります。
10.0.1.0/24 <-> 10.0.2.0/24 <-> 10.0.3.0/24 <-> 10.0.4.0/24
つまり、1つのLinuxボックスを10.0.x.1と192.168.0.xの2つのインターフェイスを持つ各サブネットに構成します。これらは、各サブネットのゲートウェイデバイスとして機能します。 10.x/24サブネットごとに複数のホストがあります。他のホストでは、10.0.x.xとして使用できるインターフェイスは1つだけです。
各ホストが他のサブネット上の他のホストにpingできるようにしたい。私の質問は最初です:これは可能ですか?そして第二に、もしそうなら、私はiptablesやルートを設定する助けが必要です。私はこれを実験してきましたが、一方向のpingを可能にするソリューションしか思い付くことができません(icmpパケットは一例にすぎません。最終的には、ssh、telnet、ftpなどのホスト間の完全なネットワーク機能が好きです) 。
さて、5つのネットワーク10.0.1.0/24
、10.0.2.0/24
、10.0.3.0/24
、10.0.4.0/24
と192.168.0.0/24
、およびそれらの間をルーティングする4つのボックスがあります。ルーティングボックスのアドレスが10.0.1.1/192.168.0.1
、10.0.2.1/192.168.0.2
、10.0.3.1/192.168.0.3
、10.0.4.1/192.168.0.4
であるとします。
次のようなコマンドを使用して、各ルーターボックスの他の10.0.x.0/24
ネットワークに静的ルートを追加する必要があります(編集済み!):
# on the 10.0.1.1 box
ip route add 10.0.2.0/24 via 192.168.0.2
ip route add 10.0.3.0/24 via 192.168.0.3
ip route add 10.0.4.0/24 via 192.168.0.4
他のルーターボックスの対応するルート。インターフェイスが1つだけの非ルーティングボックスで、デフォルトルートが10.0.x.1
を指すように設定します。もちろん、すべてのインターフェースに静的アドレスとネットマスクを追加する必要もあります。
また、Linuxはデフォルトではルーターとして機能しないため、次のコマンドでパケット転送を有効にする必要があります。
echo 1 > /proc/sys/net/ipv4/ip_forward
上記のip
コマンドは設定を永続化しません。その方法はディストリビューションによって異なります。
私が言ったように、私はこれをテストしておらず、何かを忘れているかもしれません。