Linux で高可用性ポート転送を構成する方法
1. 背景の概要
分散システムのアーキテクチャでは、ポート転送は非常に一般的なネットワーク テクノロジです。ポート転送により、外部ネットワークからの接続要求を内部ノードに転送できるため、外部サービスの高可用性と負荷分散が実現します。 Linux オペレーティング システムでは、いくつかのツールと構成を使用して、高可用性のポート転送を実現できます。この記事では、Linux オペレーティング システムを使用して高可用性ポート転送を構成および管理する方法を詳しく紹介します。
2. iptables を使用してポート転送を実装する
iptables は Linux システムで一般的に使用されるファイアウォール ソフトウェアであり、ポート転送機能の実装にも使用できます。以下は、iptables を使用してポート転送を実装する例です。
sudo apt-get install iptables
sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.0.10:80 sudo iptables -A FORWARD -p tcp -d 192.168.0.10 --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
where eth0
は外部ネットワーク インターフェイス、192.168.0.10
は内部ネットワーク ノードの IP アドレス、80
は転送する必要があるポート番号です。
sudo sh -c "iptables-save > /etc/iptables.rules"
iptables.sh
という名前のスクリプトを作成します。 #!/bin/sh /sbin/iptables-restore < /etc/iptables.rules
スクリプトを /etc/init.d
ディレクトリに保存し、スクリプト 実行権限を追加します:
sudo chmod +x /etc/init.d/iptables.sh
次に、スタートアップ サービスにスクリプトを追加します:
sudo update-rc.d iptables.sh defaults 99
この時点で、iptables を使用してポート フォワーディングを実装する構成が完了しました。
3. HAProxy を使用して高可用性ポート転送を実現する
iptables の使用に加えて、HAProxy を使用して高可用性ポート転送を実現することもできます。 HAProxy は、分散システムにおけるポート転送のニーズに適した、信頼性の高い高性能の負荷分散ソフトウェアです。以下は、HAProxy を使用して高可用性ポート転送を構成する例です。
sudo apt-get install haproxy
/etc/haproxy/haproxy.cfg
を開き、次の内容を追加します: frontend http-in bind *:80 default_backend backend_servers backend backend_servers balance roundrobin server server1 192.168.0.10:80 check server server2 192.168.0.11:80 check
その中に、192.168.0.10
と 192.168.0.11
は内部ノードの IP アドレス、80
は転送する必要があるポート番号です。
sudo service haproxy restart
この時点で、HAProxy は構成ファイル内のルールに従ってアクセス要求を内部ノードに転送し、高可用性ポート転送を実現します。
4. 概要
この記事では、例として iptables と HAProxy を使用して、Linux オペレーティング システムで高可用性ポート転送を構成する方法を紹介します。実際のアプリケーションでは、特定のニーズに応じて適切な構成および展開方法を選択できます。ポートフォワーディングを合理的に利用することで、システムの信頼性や負荷容量が向上し、より安定した効率的なサービスを提供できます。
以上がLinux で高可用性ポート転送を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。