冗長性の要素を備えたシンプルなホームネットワークをセットアップしようとしています。
私は2つのUbuntuサーバーを持っており、それぞれにデュアルNICが装備されています。デュアルTL-SG1016DEシンプルスマートスイッチもあります。両方のスイッチは、異なる電力線アダプタリンクを介して単一のADSLルーターに接続します。
200Mbpsの電力線リンクは非常に信頼性がありますが低速ですが、500Mbpsは高速ですが、頻繁にドロップアウトします。
クライアントPCが通常500Mbpsリンクを介してインターネットにアクセスするようにしたいのですが、インターネットがダウンしている場合は、サーバーの1つと200Mbps電力線アダプターを介してルーティングします。
2つのサーバー間でデータベースを複製するため、2つのサーバーは相互に通信できる必要があります。
私の考えは、192.168.1.x
と192.168.2.x
の2つのサブネットを作成することです。
サーバーで「iptables」を使用して2つのサブネット間をルーティングできると思いますが、使用するコマンドやループなどを回避する方法がわかりません。
もう1つの問題は、ADSLルーターが単一のサブネット上にある必要があることです(私は思います)。つまり、アドレス192.168.1.1
があります。これは、どちらのサブネット経由でもアクセスできるように回避できる制限ですか?
おそらくお分かりのように、私はネットワーキングについていくつかの基本を知っているだけです。このプロジェクト(および質問)は、詳細を学ぶ試みの一部です。
200Mbpsの電力線リンクは非常に信頼性がありますが低速ですが、500Mbpsは高速ですが、頻繁にドロップアウトします。
クライアントPCが通常500Mbpsリンクを介してインターネットにアクセスするようにしたいのですが、インターネットがダウンしている場合は、サーバーの1つと200Mbps電力線を介してルーティングします。
あなたが求めているのは データリンク層 での冗長性であり、 ネットワーク層 (TCP/IPが存在する場所)ではありません。つまり、500 Mbpsリンクに障害が発生した場合は、200Mbpsリンクにフォールバックする必要があります。複数のIPサブネットワークは必要ありません(必要ありません)。これは、ネットワークからインターネットルーターへの最速のリンクの選択を容易にする機能や、ネットワーク設計に含まれるループを処理する方法を提供しないためです。サブネットワークをどのように構成するかによって、ブロードキャストストームが発生し、ネットワークがシャットダウンします。
必要なのは スパニングツリープロトコル (STP)です。これはほとんどのネットワークスイッチに含まれています。 STPは、ネットワーク内の単一の宛先への複数のパスによって作成されたループを検出できます。たとえば、スイッチ1からルーターへ、スイッチ2からルーターへ。その後、適切なポートが自動的に無効になります。ループを防ぐためにスイッチの1つで。その後、パスに障害が発生した場合(たとえば、500 Mbpsリンク経由)STPは、バックアップリンクを自動的に有効にして、接続を復元できます。
500 Mbpsリンクに接続されているスイッチポートに管理上「重み」を割り当てて、優先度を高くする必要がある場合があります。これにより、STPは、このリンクをアクティブのままにし、200Mbpsリンクを優先することがわかりますそれ以外の場合は両方が完全に機能している場合は無効になります。
STPに関するリンクされた情報を読み、STPの構成方法については、スイッチのマニュアルを参照してください。