Linuxは2つの異なるゲートウェイを使用して2つの異なるLANをルーティングします。

Linuxは2つの異なるゲートウェイを使用して2つの異なるLANをルーティングします。

それぞれ独自のISPゲートウェイを持つ2つの異なるネットワーク(別々のLAN)があり、それを拡張したい(1つのLANから別のLANへのユーザー)。 ISPゲートウェイは、優れた機能(静的ルーティングなど)を持たない愚かなブランドのホームゲートウェイです。

デフォルトでは、現在のトポロジは次のとおりです。

LAN1 -> ISP_G1 -> WAN
LAN2 -> ISP_G2 -> WAN

LANを拡張し、各LANのWANトラフィックを維持したいと思います。私の考えは、Linuxボックスをルーター/ DHCPサーバーとして使用して、WANを各LANに接続すると同時に、あるLANから別のLANにpingを送信できることです。

私が試しているトポロジは次のとおりです。

WAN -> ISP_G1 -> LAN1/Switch1 -> Linux/Router <- LAN2/Switch2 <- ISP_G2 <- WAN

Linux/ルーターシステムには、それぞれ異なるLANに接続された2つのイーサネットインターフェイスがあり、DHCPサーバーとしても機能し、各LANのクライアントに2つの異なるサブネットを提供します。

アドレス指定は次のとおりです。

Linux/Router machine:
eth0: 10.0.0.2
eth1: 10.0.1.2

ISP gateways:
ISP_G1: 10.0.0.1
ISP_G2: 10.0.1.1

ISPゲートウェイのDHCPはオフになり、代わりにLinuxシステムは異なるサブネット(10.0.0.0/24や10.0.1.0/24など)に基づいてクライアントにIPを提供するDHCPサーバーとして機能します。また、クライアントは、ゲートウェイがISPゲートウェイではなくLinuxシステム自体であることを知らせます(たとえば、LAN1の場合は10.0.0.2、LAN2の場合は10.0.1.2)。

私の問題は、Linuxシステムで構成されているWANゲートウェイに応じて、1つのLANのみがサブネットとそのWANにアクセスできることです。

たとえば、LinuxシステムがISP_G2をゲートウェイとして設定した場合、LAN1はLAN2にアクセスできますがWANにはアクセスできず、その逆も同様です。

Linuxシステムのルーティングテーブルに基づいて別のゲートウェイを指定しようとしています。たとえば、次のようになります。

ip route add default via 10.0.0.1 dev eth0 table subnet1
ip rule add from 10.0.0.0/24 table subnet1

ただし、LAN1はISP_G1を介してWANにアクセスできますが、LAN2にはアクセスできなくなりました。

私にとって必要なのは、WANトラフィックに対してのみLAN1ゲートウェイをISP_G1に変更し、LinuxシステムをすべてのLAN関連トラフィックに対してLAN1ゲートウェイとして残す方法です。

どんなアドバイスも本当にありがとうございます。

ベストアンサー1

ソースルーティングはこれを可能にする必要があると思いますが、両方のネットワークへのすべてのルート、つまりプライマリルートと他のネットワークへのルートを明示的に生成する必要があります。このような:

ip route add default via 10.0.0.1 dev eth0 table subnet1
ip route add 10.0.1.0/24 dev eth1 table subnet1
ip rule add from 10.0.0.0/24 table subnet1

他のブロックも同様であり、中央ボックス自体にもデフォルトパスがあります。


もう1つのオプションは、クライアントにDHCPにデフォルトパスとは異なるネットワークブロックへの固定パスを提供するように指示することです。だから彼らは自分のインターネットゲートウェイと通信することができ、中央ボックスを通過することなく中央ボックスを通過して反対側に行くことができます。

持つ言及するoption classless-static-routesコンテキストにdhclientありますが、ISC DHCPサーバーはそれを直接サポートしていないようです。

代わりに、オプションを手動で挿入する必要があります。これを説明するいくつかの例があります。ここ、形式の説明は少し簡単です。RFC 3442「クラスレスルーティングオプションの種類」でフォーマットを説明します。

おすすめ記事