この投稿はpfSenseの高可用性についてです
このレシピでは、単純な3つのインターフェースのHA構成について説明します。 3つのインターフェースは、LAN、WAN、および同期です。これは、機能的には2つのインターフェイスのLANおよびWAN展開と同等であり、同期インターフェイスを使用して、プライマリファイアウォールとセカンダリファイアウォールの間で構成とファイアウォールの状態を同期します。
IPアドレスの割り当てを決定する
最初のタスクは、IPアドレスの割り当てを計画することです。サブネット内で使用可能な最小のIPアドレスをCARPVIPとして使用し、次の後続のIPアドレスをプライマリファイアウォールインターフェイスのIPアドレスとして使用し、次のIPアドレスをセカンダリファイアウォールインターフェイスのIPアドレスとして使用することをお勧めします。この設計はオプションであり、任意のスキームを使用できますが、設計と管理を簡素化するために、一貫性のある論理的なスキームを強くお勧めします。
WANアドレッシング–Pfsenseの高可用性
WANアドレスは、ISPによって割り当てられたアドレスから選択されます。表WANIPアドレス割り当ての例では、HAペアのWANは198.51.100.0/24であり、アドレス198.51.100.200〜198.51.100.202がWANIPアドレスとして使用されます。
IPアドレス | 使用法 |
---|---|
198.51.100.200 / 24 | CARP共有IPアドレス |
198.51.100.201 / 24 | プライマリノードのWANIPアドレス |
198.51.100.202 / 24 | セカンダリノードのWANIPアドレス |
LANアドレス指定
LANサブネットは192.168.1.0/24です。この例では、LANIPアドレスは表に示すように割り当てられます。
IPアドレス | 使用法 |
---|---|
192.168.1.1/24 | CARP共有IPアドレス |
192.168.1.2/24 | プライマリノードのLANIPアドレス |
192.168.1.3/24 | セカンダリノードのLANIPアドレス |
同期インターフェイスのアドレス指定
共有CARPVIPは必要ないため、このインターフェイスには共有CARPVIPはありません。したがって、これらのIPアドレスは、ファイアウォール間の通信にのみ使用されます。この例では、172.16.1.0/24が同期サブネットとして使用されます。 2つのIPアドレスのみが使用されますが、他の内部インターフェース(LAN)との整合性を保つために/24が使用されます。 IPアドレスの最後のオクテットには、一貫性を保つために、そのファイアウォールのLANIPアドレスと同じ最後のオクテットを使用します。
IPアドレス | 使用法 |
---|---|
172.16.1.2/24 | プライマリノードの同期IPアドレス |
172.16.1.3 / 24 | セカンダリノードの同期IPアドレス |

インストール、インターフェースの割り当て、および基本構成
通常どおりファイアウォールにOSをインストールし、両方のノードに同じようにインターフェイスを割り当てます。インターフェイスは、すべてのノードで正確に同じ順序で割り当てる必要があります。そのため、インターフェイスが調整されていない場合、構成の同期やその他のタスクは正しく動作しません。インターフェイスの割り当てに調整が加えられている場合は、両方のノードで同じように複製する必要があります。
次に、GUIに接続し、セットアップウィザードを使用して、一意のホスト名と競合しない静的IPアドレスを使用して各ファイアウォールを構成します。
たとえば、一方のノードは「firewall-a.example.com」で、もう一方のノードは「firewall-b.example.com」、またはよりパーソナライズされた名前のペアである可能性があります。
デフォルトのLANIPアドレスは192.168.1.1です。各ノードは、プライマリの場合は192.168.1.2、セカンダリの場合は192.168.1.3など、独自のアドレスに移動する必要があります。したがって、このレイアウトはに示されています。各ノードに一意のLAN IPアドレスが割り当てられると、両方のノードを同じLANスイッチに接続できます。
同期インターフェイスのセットアップ
先に進む前に、クラスターノードの同期インターフェースを構成する必要があります。各ノードの同期インターフェースに使用するアドレス。プライマリノードで完了したら、適切なIPv4アドレスを使用してセカンダリノードで再度実行します。 値。
同期インターフェースの構成を完了するには、同期を許可するために両方のノードにファイアウォールルールを追加する必要があります。
少なくとも、ファイアウォールルールは構成同期トラフィック(デフォルトでは、ポート443のHTTPS)とpfsyncトラフィックを渡す必要があります。ほとんどの場合、単純な「すべて許可」スタイルのルールで十分です。

pfsyncの構成–Pfsenseの高可用性
pfsyncを使用した状態同期は、機能するためにプライマリノードとセカンダリノードの両方で構成する必要があります。
最初にプライマリノードで、次にセカンダリノードで、次の手順を実行します。
- システム>HighAvail Syncに移動します
- 状態の同期を確認します
- 同期インターフェイスを設定します SYNC
- pfsync同期ピアIPを設定 oへ
- その他のノード。これを
172.16.1.3
に設定します プライマリノードを構成するとき、または172.16.1.2
セカンダリノードを構成するとき - [保存]をクリックします
プライマリノードでのみ、次の手順を実行します。
- システム>HighAvail Syncに移動します
- 次に、SynchronizeConfigをIPに設定します。 セカンダリノードの同期インターフェイスIPアドレス
172.16.1.3
- リモートシステムユーザー名を設定
admin
へ 。
- リモートシステムパスワードを設定 管理者ユーザーアカウントのパスワードに変更し、確認ボックスの値を繰り返します。
- セカンダリノードに同期するには、各エリアのチェックボックスをオンにします。このガイドでは、ほとんどの構成と同様に、すべてのボックスがチェックされています。 すべてを切り替える ボタンを使用して、オプションを個別に選択するのではなく、一度にすべてのオプションを選択できます。
- [保存]をクリックします
- 同期が機能したことをすばやく確認するために、セカンダリノードでファイアウォール>ルールに移動します。 SYNCで タブ。プライマリのルールは現在存在し、一時的なルールはもう存在しません。
CARP仮想IPの構成
- ファイアウォール>仮想IPに移動します プライマリノードでCARPVIPを管理する
- クリック
追加 リストの一番上にある新しいVIPを作成します。
- LAN VIPは、 LAN にあることを除いて、同様に設定されます。 インターフェイスとアドレスは
192.168.1.1
になります
1:1 NAT、ポート転送、VPNなどの目的で使用される追加のIPアドレスがWANサブネットにある場合は、それらも今すぐ追加される可能性があります。
変更を適用をクリックします VIPを編集した後。
VIPを追加したら、ファイアウォール>仮想IPを確認します セカンダリノードで、VIPが期待どおりに同期されていることを確認します。

CARPのアウトバウンドNATを構成する
次のステップは、LAN上のクライアントが共有WANIPをアドレスとして使用するようにNATを構成することです。
- ファイアウォール>NATに移動 、アウトバウンド タブ
- クリックして手動アウトバウンドNATルール生成を選択します
- [保存]をクリックします
自動アウトバウンドNATのルールと同等のルールのセットが表示されます。代わりにCARPIPアドレスで機能するように内部サブネットソースのルールを調整します。
- クリック
編集するルールの右側
- 翻訳を見つけます ページのセクション
- アドレスからWANCARPVIPアドレスを選択します ドロップダウン
- 説明を変更して、このルールがLANをWANCARPVIPアドレスにNAT変換することを伝えます

DHCPサーバーの変更–Pfsenseの高可用性
クラスタノード上のDHCPサーバーデーモンは、連携できるように調整する必要があります。変更はプライマリからセカンダリに同期されるため、VIPおよびアウトバウンドNATの場合と同様に、これらの変更はプライマリノードでのみ行う必要があります。
- サービス>DHCPサーバーに移動します 、 LAN * タブ。
- DNSサーバーを設定します LAN CARP VIPへ、ここでは
192.168.1.1
- 次に、ゲートウェイを設定します LAN CARP VIPへ、ここでは
192.168.1.1
- フェイルオーバーピアIPを設定します セカンダリノードの実際のLANIPアドレス、ここでは
192.168.1.3
- [保存]をクリックします
したがって、DNSサーバーを設定します およびゲートウェイ CARP VIPに接続すると、ローカルクライアントがどちらのノードとも直接通信せずにフェールオーバーアドレスと通信していることが保証されます。このようにして、プライマリに障害が発生した場合、ローカルクライアントはセカンダリノードとの通信を継続します。
最後に、フェイルオーバーピアIP デーモンがこのサブネット内のピアと直接通信して、リース情報などのデータを交換できるようにします。設定がセカンダリに同期すると、この値は自動的に調整され、セカンダリがプライマリを指すようになります。
したがって、この投稿はPfsenseの高可用性に関するものでした